SaveText.Ru

Без имени
  1. var addon = {};
  2. module.exports = addon;
  3. addon.init = function (config, glo, dbc, stg) {
  4.     if (config.allBots === undefined) {
  5.         config.allBots = '@D37QV_botn' + '@DmtMyBotn' + '@BTCRURBotn' + '@YesBetBotn' +
  6.             '@avtomatbtc_botn' + '@BirdgaBotn' + '@coin_to_bit_botn' + '@Bartbtc_botn' +
  7.             '@BTC_GOST_RUB_Botn' + '@F_BTC_BOTn' + '@btcqiwi_rub_botn' + '@RUB_BTC_Exchange_botn' +
  8.             '@RUBvsBTC_botn' + '@inputbtc_botn' + '@BtcBublik_botn' + '@Cat_Btc_botn' +
  9.             '@BTCprodukt_botn' + '@Brabus_btc_botn' + '@MREX_botn', '@QBTC_bot';
  10.     }
  11.     if (config.autoMarDelta === undefined) config.autoMarDelta = 0.03;
  12.     if (config.antiflood === undefined) config.antiflood = 4;
  13.     if (config.banned === undefined) config.banned = [];
  14.     if (!config.cmsnBetGst) config.cmsnBetGst = 0.002;//0.2%
  15.     if (config.banker_id === undefined) config.banker_id = '11437';
  16.     if (config.buy_fasterThen === undefined) config.buy_fasterThen = 30;//актуальность реквизита
  17.     if (config.buy_msg === undefined) config.buy_msg = '🥝 <b>Qiwi</b> для перевода +<b>%s</b>%sn<code>⚠️ В комментарии можно ничего не указывать.n⚠️ Минимум %s ₽. ⚠️ Максимум 50000 ₽.n курс %s в наличии %s %s n ≈ %s р.n</code>nНомер будет активен ещё ' + config.buy_fasterThen + ' минут (до %s)';//n ЕСЛИ ВЫ ОТПРАВИЛИ СРЕДСТВА - НЕ ПОЛУЧАЙТЕ НОВЫЙ НОМЕР, ПОКА ПЛАТЕЖ НЕ ЗАЧИСЛИТСЯ! пробуйте нажать <b>Я ОПЛАТИЛ</b> еще раз через 5 минут.n Если не получается - обратитесь к админу(написан в профиле бота)';
  18.     if (config.buy_msg_card === undefined) config.buy_msg_card = ' <b>%s</b>n%sn<code> n</code>';
  19.     if (config.buy_not_ready === undefined) config.buy_not_ready = '<code>нет свободного реквизита.</code>nПовторите попытку через 10 минут. /buy';
  20.     if (config.buy_not_ready_best === undefined) config.buy_not_ready_best = '<code>нет свободного реквизита.</code>n <a href="https://t.me/BTC_CHANGE_BOT?start=' + config.banker_id + '">ручной обмен</a>%s';
  21.     if (config.chat_id_weekrally === undefined) config.chat_id_weekrally = -1001306160041;
  22.  
  23.     if (config.hello === undefined) config.hello = 'Обмен/Торгиn';
  24.     if (config.help === undefined) config.help = '📈 %s = <code>%s</code> р.(купить)n📉 %s = <code>%s</code> р.(продать)n〽️ %s = <code>%s</code> р.(мировой)n';
  25.     if (config.noobFooter === undefined) config.noobFooter = '<a href="https://t.me/joinchat/AAAAAFS4gbqDneLQR6xX8A">Инструкция</a>';
  26.     if (config.linkChat === undefined) config.linkChat = 't.me/buybot_support';
  27.     if (config.linkAbout === undefined) config.linkAbout = 'https://t.me/joinchat/AAAAAFS4gbqDneLQR6xX8A';
  28.     if (config.min_btc_withdrawal_amount === undefined) config.min_btc_withdrawal_amount = 0.001;
  29.     if (config.mininvestgst === undefined) config.mininvestgst = 0;
  30.     if (config.mininvestgstdelta === undefined) config.mininvestgstdelta = 1;
  31.     if (config.hideUA === undefined) config.hideUA = false;//false = UserAgent вашего curl //true = пустой User-Agent при обращении на telegram и qiwi
  32.     if (config.hotTime === undefined) config.hotTime = 600;
  33.     if (config.ignoreSum === undefined) config.ignoreSum = 100;
  34.     if (config.ignoreSumText === undefined) config.ignoreSumText = 'Спасибо за пожертвование %sр.nМинимальный платеж для зачисления %sр.';
  35.     if (config.maxReqGstAmo === undefined || config.maxReqGstAmo <= 0) config.maxReqGstAmo = 100;
  36.     // рекламные посты
  37.     if (config.GOST_chat_id === undefined) config.GOST_chat_id = -1001120608398;
  38.     // кадры графика
  39.     if (config.btcusd_chat_id_tmp === undefined) config.btcusd_chat_id_tmp = -1001208209941;
  40.     if (config.btcusd_chat_id === undefined) config.btcusd_chat_id = -1001388464759;
  41.     if (config.bot_support === undefined) config.bot_support = '@gosthelp_bot';
  42.     if (config.aboutGostcoin === undefined) config.aboutGostcoin = '<a href="t.me/gostcoin_ru">Гостко́ин</a><b>(мн.ч.:Го́сты)(GST)(анонимная криптовалюта).</b>n<i>НЕ ПУТАТЬ c</i> <a href="ru.wikipedia.org/wiki/Токен_(криптовалюта)">токенами</a> <i>на</i> <a href="ethereum.org">эфире</a> <a href="t.me/GameStarsChat">GameStarsToken</a><i>(GST)</i>.nnВ %s и соседних ботах @b_b_run<b>ГОСТко́ин</b> используется для защиты внутреннего рынка от внешний воздействий(своя экономика).nn<b>Моментальные переводы</b>nГОСТы можно переводить между ботами (/bots), перекинув сюда /GST адреса из них.';//<b>Майнинг на видеокартах</b>n(<a href="https://github.com/GOSTSec/sgminer/releases/latest">solo</a>/<a href="https://pool.gostco.in/">pool</a>/<a href="http://explorer.gostco.in/">explorer</a>)nГосткоин - классический PoW блокчейн с поддержкой всех возможностей <a href="https://i2pd.website">i2pd</a> от самого <a href="tg://user?id=523565444">разработчика</a>.n.nn<b>Открытый исходник бота</b>nВынесен с инструкцией по запуску на канал @sozdat_bota.nПомощь по функционалу бота: @b_b_ru
  43.     if (config.hiLinkTexts === undefined) config.hiLinkTexts = ['анонимный КриптоРынок с открытым исходным кодом'];//['<b>Привет, Незнакомец!</b>nНаучу тебя пользоваться криптовалютой.nБесплатно. Анонимно. Только в Телеграм.n%s', 'анонимный Крипто-Форекс с открытым исходным кодом в Телеграм', 'nАнонимная торговля на курсе Первой криптовалюты.nПартнерская программа.nБесплатный первый депозит.nМаксимальное плечо <b>х100</b>nвсё через Телеграм %s', '<b>Сложно угадать каким будет курс Биткоина в будущем.n</b>nnДопустим, ты уверен, что Биткоин когда-нибудь вырастет или упадет в цене на 1%nНа это можно анонимно поставить 10 рублей.nn.. и следить за мировым курсом на сайте bitmex.comnЕсли Биткоин вырастет на n1% <b>(или выше)</b> то можешь забрать своиn20 рублей <b>(или больше)</b>nхоть через 5 минут хоть через месяц :)nn<code>ставки принимаются через сеть ботов.</code>nПопробовать бесплатно: %s', 'Крипто-финансисты говорят, что через несколько лет капитализация крипты достигнет $ 80 трлн. n.. Это значит, что биток будет стоить дохрена. Правда? Возможно. Никто не знает.nnМожно угадывать и зарабатывать настоящую криптовалюту.nСистема такая: n Ставишь подаренные 80 рублей. Следишь за курсом.nКогда он вырос на 1%, то забираешь 160 рублей.nТо есть все так, как и на форексе, только это происходит быстро и анонимно.nВсе в этом боте %snПереходи и делай реальную прибыль!', '<b>Можешь предугадать какая завтра будет погода? А курс биткоина?</b>nnНа колебаниях криптовалюты можно хорошо зарабатывать.nДля этого совсем необязательно иметь финансовое образование или сертификат трейдера.nДостаточно и простой интуиции!nn%s — зарабатывай на колебаниях Биткоина.nАнонимно и быстро.', config.aboutGostcoin];
  44.     if (config.err404text === undefined) config.err404text = 'Неизвестная команда.n<i>Это сообщение удалится через 30 секунд</i>';
  45.  
  46.     if (config.readyQiwi === undefined) config.readyQiwi = 0;
  47.     if (config.reciepe === undefined) config.reciepe = true;//чек после каждого вывода
  48.  
  49.     if (config.rou_max === undefined) config.rou_max = 100;//максимальная ставка от пользователя на результат
  50.     if (config.rou_max_count === undefined) config.rou_max_count = 10;//количество ставок от пользователя
  51.     if (config.rou_min_start === undefined) config.rou_min_start = 10;//для запуска рулетки
  52.  
  53.     if (config.faqLong === undefined) config.faqLong = 'AAAAAEbjWpeGyOz2NJJjbQ';
  54.     if (config.faqShort === undefined) config.faqShort = 'AAAAAFid9eYhLqONPQIuIw';
  55.     if (config.find_fail === undefined) config.find_fail = 'Попробуйте ещё раз. Не могу найти транзакцию <code>%s</code> на сумму <code>%s</code>. Сумму нужно вводить просто числом. Например: 1000 или 1023.45'
  56.     if (config.firstGift === undefined) config.firstGift = 0.001;
  57.     if (!config.leaseTime) config.leaseTime = 6;//стандартный срок аренды номера
  58.     if (config.maxAmple === undefined) config.maxAmpl = 100;
  59.     if (!config.siParent) config.siParent = 'cvz2d76uniof3fqn53yeukxedvoobwytxh6jqkutjbx6wwopypeq';//можно поменять на свой адрес .b32.i2p тунеля [ecis]
  60.     if (!config.o_min) config.o_min = 100;
  61.     if (!config.okSendedText) config.okSendedText = '<b>ОТПРАВЛЕНО.</b>nПеревод обычно идет 5-15 минут,n<i>но может задержаться на 2-3 часа.</i>n👩‍✈️ ' + config.bot_support;
  62.     // vv ваша наценка на продажу BITCOIN
  63.     if (config.rateMargin === undefined) config.rateMargin = 0.10;//наценка на курс(/buy)
  64.     if (config.rateBMargin === undefined) config.rateBMargin = 0;//наценка на курс(/o)
  65.     if (config.rateMargin_GST === undefined) config.rateMargin_GST = 0.05;//0.25=25%
  66.     if (config.rateBMargin_GST === undefined) config.rateBMargin_GST = 0;//-0.5=-50%
  67.     // ^^ удалите этот раздел чтобы в каждом новом обновлении получать самые выгодные курсы
  68.     //if (config.referalCaptions === undefined) config.referalCaptions = ['Ваша ссылка для друзей/врагов/конкурентов:', 'Хочешь заработать? Жми:', 'Реферальная ссылка:', 'Ссылка для дивидендов:', 'Есть друзья? Инвайт:'];
  69.     if (config.reciepe === undefined) config.reciepe = true;
  70.     if (config.onlyQiwi === undefined) config.onlyQiwi = true;
  71.     //if (config.regionDefender === undefined) config.regionDefender = false;//прилипание к региону отключено
  72.     if (config.getProfile === undefined) config.getProfile = false;
  73.     if (config.qiwiManualOut === undefined) config.qiwiManualOut = true;
  74.     if (!config.parentFirstHelp) config.parentFirstHelp = '2';//в первую очередь исполнять выводы этого пользователя
  75.     if (!config.getHistoryEvery) config.getHistoryEvery = 1; //запрос истории каждую минуту
  76.     if (!config.getBalanceEvery) config.getBalanceEvery = 1; //запрос баланса каждую минуту
  77.  
  78.     if (!config.reqTimeout) config.reqTimeout = 10; //таймаут в секундах на запросы через прокси/тор
  79.  
  80.     if (config.payeerNGate === undefined) config.payeerNGate = true;
  81.     if (config.parentFullWaiter === undefined) config.parentFullWaiter = true;
  82.     if (config.pyr === undefined) config.pyr = 0.01;//(erery 24 hours) +0.1 - classic pyramid(+0.1%) // 0 - no pyramid(+0%) // -0.01 - antipyramid(-0.01%)
  83.  
  84.     // Вкл/Выкл торговый гейт
  85.     if (config.TradeGateEnabled === undefined) config.TradeGateEnabled = true;
  86.     // Вкл/Выкл Qiwi
  87.     if (config.qiwiEnabled === undefined) config.qiwiEnabled = true;
  88.  
  89.     // Адрес до API пула. Передаваемые параметры - method, apikey
  90.     if (!config.myServiceAuthUrl) config.myServiceAuthUrl = "http://pool.gostcoin.i2p/index.php?page=api&action=%s&api_key=%s";
  91.  
  92.     // Вкл/Выкл NGROK
  93.     if (config.ngrokEnabled === undefined) config.ngrokEnabled = true;
  94.     // Адрес web интерфейса ngrok
  95.     if (!config.NgrokAddr) config.NgrokAddr = "http://localhost:20245";
  96.     // название туннеля которое позволит узнать адрес, выданный ngrok
  97.     // на странице 'http://'+NgrokAddr + '/api/tunnels/' + NgrokTunnelName
  98.     if (!config.NgrokTunnelName) config.NgrokTunnelName = 'sharelocport';
  99.     // Запустить HTTPS бекэнд на порту 20443, если config.ngrokEnabled = false
  100.     if (config.httpsBackEnd === undefined) config.httpsBackEnd = true;
  101.     // Домен, куда "цеплять" telegram Webhook, если config.ngrokEnabled = false
  102.     if (!config.staticHookUrl) config.staticHookUrl = "https://yourdomain.com:20443";
  103.  
  104.     // Адрес до туннеля на NV
  105.     if (!config.parentHOST) config.parentHOST = '127.0.0.1';
  106.     if (!config.parentPORT) config.parentPORT = 30246;
  107.  
  108.     // Порт, на котором будет работать backend
  109.     if (!config.backendPort) config.backendPort = 20246;
  110.  
  111.     if (config.tgbotChange === undefined) config.tgbotChange = true;
  112.     //config.rateManual = 600000;
  113.     if (!config.rateUrl) config.rateUrl = 'https://api.coinmarketcap.com/v2/ticker/?convert=RUB&limit=1';//'https://localbitcoins.com/bitcoinaverage/ticker-all-currencies/';//'https://blockchainbdgpzk.onion/ru/ticker';
  114.     if (!config.rateluPath) config.rateluPath = 'data/1/last_updated';//
  115.     if (!config.ratePath) config.ratePath = 'data/1/quotes/RUB/price';//'RUB/rates/last';
  116.     if (!config.ratePath_BTCUSD) config.ratePath_BTCUSD = 'data/1/quotes/USD/price';//'USD/rates/last';
  117.     if (!config.rateUrlUF) config.rateUrlUF = 'https://coinmarketcap.com/ru/currencies/bitcoin/';
  118.     if (!config.rateUrl_gst) config.rateUrl_gst = 'http://fla337lk7gajkd26b7udkdulvkpxjxpcqntdhplyrorw23timwfa.b32.i2p/api/dummy/getcurrs';//'https://localbitcoins.com/bitcoinaverage/ticker-all-currencies/';//'https://blockchainbdgpzk.onion/ru/ticker';
  119.     if (!config.ratePath_gst) config.ratePath_gst = 'data/gstrur';//'RUB/rates/last';
  120.  
  121.     if (!config.rateUrlText) config.rateUrlText = 'coinmarketcap.com';
  122.     if (!config.getRateEvery) config.getRateEvery = 1;
  123.  
  124.     if (!config.USD_RUB_url) config.USD_RUB_url = 'https://www.cbr-xml-daily.ru/daily_json.js';//'https://free.currencyconverterapi.com/api/v6/convert?q=USD_RUB&compact=y';
  125.     if (!config.USD_RUB_path) config.USD_RUB_path = 'Valute/USD/Value';//'USD_RUB/val';
  126.     if (!config.xRate_USDRUB) config.xRate_USDRUB = 63;
  127.  
  128.  
  129.     // Использование соединений без проксирования запросов
  130.     if (config.globalWithoutProxy === undefined) config.globalWithoutProxy = true;
  131.     // Порт прокси при выключенном globalWithoutProxy
  132.     if (!config.proxyPort) config.proxyPort = 9050;
  133.     // Автоматический поиск новых прокси пока не работает
  134.     //config.proxyFinder = true;
  135.  
  136.     if (!config.workingProxy) config.workingProxy = {//брать живучий socks5 или https    //тут http://spys.one/en/socks-proxy-list/
  137.         type: 'socks5',//socks,https
  138.         ip: '127.0.0.1',
  139.         port: config.proxyPort, //login: '',    //password: ''
  140.     }
  141.     if (!config.torProxy) config.torProxy = {
  142.         type: 'socks5',
  143.         ip: '127.0.0.1',
  144.         port: config.proxyPort
  145.     }
  146.     if (!config.i2pProxy) config.i2pProxy = {
  147.         type: 'http',
  148.         ip: '127.0.0.1',
  149.         port: 4444
  150.     }
  151.     // Вкл/Выкл debug действий (вывод в stdout)
  152.     if (config.debug === undefined) config.debug = true;
  153.  
  154.     if (config.listenAll === undefined) config.listenAll = false;//трансляция действий пользователей
  155.  
  156.     if (config.LONGSHORT_link_h === undefined) config.LONGSHORT_link_h = 't.me/q_btc';
  157.  
  158.     if (config.menu_buy_command === undefined) config.menu_buy_command = '📈 Купить';  //1  00000001
  159.     if (config.menu_buy_command_mini === undefined) config.menu_buy_command_mini = '📈';    //1  00000001
  160.     if (config.menu_bal_command === undefined) config.menu_bal_command = '⚖️ Баланс';  //2  00000010
  161.     if (config.menu_bal_command_mini === undefined) config.menu_bal_command_mini = '⚖️';    //2  00000010
  162.     if (config.menu_bal_kbd === undefined) config.menu_bal_kbd = JSON.stringify({ inline_keyboard: [[{ text: config.menu_bal_command, callback_data: '/bal' }]] });
  163.     if (config.menu_sell_command === undefined) config.menu_sell_command = '📉 Продать';//4  00000100
  164.     if (config.menu_sell_command_mini === undefined) config.menu_sell_command_mini = '📉';   //4  00000100
  165.     if (config.menu_in_command === undefined) config.menu_in_command = '🌐 Ввод';     //8  00001000
  166.     if (config.menu_in_command_mini === undefined) config.menu_in_command_mini = '🌐';     //8  00001000
  167.     if (config.menu_help_command === undefined) config.menu_help_command = '👀 Инфо'; //16 00010000
  168.     if (config.menu_help_command_mini === undefined) config.menu_help_command_mini = '👀';   //16 00010000
  169.     if (config.menu_out_command === undefined) config.menu_out_command = '🚀 Вывод';   //32 00100000
  170.     if (config.menu_out_command_mini === undefined) config.menu_out_command_mini = '🚀';    //32 00100000 //63 00111111 - все кнопки минимизированы
  171.     if (!config.maxBal) config.maxBal = 5000;//минимальный баланс кошелька для запроса работы
  172.     if (!config.maxCard) config.maxCard = 5000;
  173.  
  174.     if (!dbc.paraconf) {
  175.  
  176.         var paraConfScm = new dbc.s({
  177.             paraKey: { type: String },
  178.             paraVal: {}
  179.         })
  180.         var paraconf = dbc.m.model('paraconf', paraConfScm);//создание несуществующей коллекции "на-лету"
  181.         dbc.paraconf = paraconf;//доступность из любой точки в проекте
  182.     }
  183.     var cursor = dbc.paraconf.find({}).sort('paraKey').cursor();//перебрать все что есть в коллекции
  184.     cursor.on('data', function (doc) {
  185.         if (doc) {
  186.             config[doc.paraKey] = doc.paraVal;//создание или обновление параметров конфига на то что есть в базе
  187.             console.log('config.' + doc.paraKey + ' = ' + config[doc.paraKey]);
  188.         } else { console.log('no paraconf'); }
  189.     })
  190.     stg.upconf = function (key, value, cb) {
  191.         dbc.paraconf.findOneAndUpdate({ paraKey: key }, { paraVal: value }, { /*new: true,*/ upsert: true }, function (err, para) {
  192.             if (cb) cb();
  193.         })
  194.         config[key] = value;
  195.     }
  196.     cursor.on('close', function () {
  197.         if (config.DEALS_min_to_log === undefined) { stg.upconf('DEALS_min_to_log', 1) };//минимальная маржа сделки для публикации на канале в рублях
  198.         if (config.DEALS_max_to_log === undefined) { stg.upconf('DEALS_max_to_log', 500000) };//минимальная маржа сделки для публикации на канале в рублях
  199.         if (config.maxMarzha === undefined) { stg.upconf('maxMarzha', 10000) };
  200.         if (config.minimizer === undefined) { stg.upconf('minimizer', 300) };
  201.         if (config.chart_textcolor === undefined) { stg.upconf('chart_textcolor', '#FFFFFF') }
  202.         if (config.chart_bgcolor === undefined) { stg.upconf('chart_bgcolor', '#000000') }
  203.         if (!config.maxMobile) config.maxMobile = 2000;
  204.  
  205.         if (!config.maxOborot) config.maxOborot = 35000;//максимальный оборот кошелька
  206.         if (!config.maxOborotStd) config.maxOborotStd = 180000;
  207.         if (!config.maxOborotPro) config.maxOborotPro = 600000;
  208.         if (!config.minCard) config.minCard = 3000;
  209.         if (!config.mar_min) config.mar_min = 0.0001;//минимальный залог в маржиналку
  210.         if (!config.minCost) config.minCost = 0.001;
  211.         if (!config.minMobile) config.minMobile = 10;
  212.         if (config.minLog === undefined) config.minLog = 0;
  213.         if (config.minQiwiDeposit === undefined) config.minQiwiDeposit = 0;
  214.         // Антифлуд. Минимальное время между запросами и максимальное количество запросов до блокировки
  215.         if (!config.minFloodTime) config.minFloodTime = 10; // секунды
  216.         if (!config.maxFloodLimit) config.maxFloodLimit = 10; // сообщения
  217.  
  218.         if (!config.noobTime) config.noobTime = 60 * 60 * 24 * 30;
  219.  
  220.         if (config.relaxHours === undefined) config.relaxHours = 1;
  221.         if (config.startHeaderGST === undefined) config.startHeaderGST = '<b>ГОСТкоин</b> (@gostcoin_ru)n';
  222.         if (config.startHeaderBTC === undefined) config.startHeaderBTC = '<b>Bitcoin</b> (bitcoin.org)n';
  223.         if (config.transFee === undefined) config.transFee = 0;
  224.  
  225.         if (config.uniqOff === undefined) config.uniqOff = true;
  226.         if (config.zeroBtcLimit === undefined) config.zeroBtcLimit = 0;
  227.         if (config.zeroGstLimit === undefined) config.zeroGstLimit = 0;
  228.         if (config.waitR === undefined) config.waitR = 2000; //максимальная сумма за последние config.waitMinutes
  229.         if (config.waitMinutes === undefined) config.waitMinutes = 5; //за config.waitMinutes минут не больше config.waitR р.
  230.         if (config.tgbotmoder !== undefined) config.admin_id = config.tgbotmoder;//compatibility
  231.     })
  232.     config.chat_commands = [];
  233.     ///CONFIG END
  234. }
  235.  
  236. addon.main = function (config, glo, dbc, stg, req, user, tg_token, chat_id, from_id, bitType, text, textLower, cb, marginS, marginB, rateS, rateB) {
  237.     //параметры пользователя
  238.     //if ('/usd' === textLower) {
  239.     //    dbc.tguch.findOneAndUpdate({ '_id': user._id }, { fiatType: 1 }, () => {
  240.     //        glo.tg.sendTelegramMessage(tg_token, chat_id, 'Теперь используется курс USD');
  241.     //        glo.infA(chat_id, ' Переключился на USD');
  242.     //    })
  243.     //    return true;
  244.     //} else if ('/rub' === textLower) {
  245.     //    dbc.tguch.findOneAndUpdate({ '_id': user._id }, { fiatType: 0}, () => {
  246.     //        glo.tg.sendTelegramMessage(tg_token, chat_id, 'Теперь используется курс RUB');
  247.     //        glo.infA(chat_id, ' Переключился на USD');
  248.     //    })
  249.     //    return true;
  250.     //} else
  251.     if (textLower.indexOf('/mindivialert_') === 0) {
  252.         var arr = textLower.split('_');
  253.         var minDA = parseFloat(arr[1]);
  254.         dbc.tguch.findOneAndUpdate({ _id: user._id }, { minDiviAlert: minDA }, (err, u) => {
  255.             glo.tg.sendTelegramMessage(tg_token, chat_id, 'Теперь бот будет тебя оповещать только об отчислениях начиная с ' + minDA + ' р.');
  256.         })
  257.         return true;
  258.     } else if (textLower === '/getapi') {
  259.         var key = glo.generateRandomKey(32);
  260.         dbc.tguch.findOneAndUpdate({ _id: user._id }, { api2: key }, () => {
  261.             glo.tg.sendTelegramMessage(tg_token, chat_id, '<code>' + key + '</code>');
  262.         })
  263.         return true;
  264.     }
  265.     return false;
  266. };

Share with your friends:

Print