Основная бд для фото для ТГ бота

  • Простота интерфейса, все в одном приложении Telegram (ничего разучивать не нужно) ввел номер/почту/ip/… получил «сектор-приз»;
  • Отсутствие требования прохождение капчи;
  • Отсутствие необходимости вкл.Tor и идти в Даркнет к БД;
  • Отсутствие регистрации на специализированных сайтах;
  • Крутизна. Много качественной/полезной получаемой информации.
  • Нейтральная политика ботов:

    • Некоторые боты могут работать в демо-режиме, предоставляемый функционал иногда стоит $.

    Недостатки Ботов:

    • Боты принадлежат хозяевам/разработчикам/киберпанкам, а значит могут отваливаться/глохнуть/сдохнуть;
    • Собирать вводимую пользователем информацию;
    • По направлению указательного пальца г-а Дурова боты могут исчезнуть в забвенье.

    Раздача

    Пока функционал бота бесплатный, но бот обещает «суицид-атаку» в случае отсутствия донатов.

    Разработка телеграм бота с БД [Nest.js / PostgreSQL] — Todo Telegram Bot

    Изначальный функционал, «pass без звёздочек»

    По запрашиваемому номеру телефона выдает ссылку на личность в Фэйсбуке. Функционал бесплатный, а БД небольшая.

    Наркогео_чаты Telegram

    Недавно в мессендежере Telegram появилась функция геочатов. Но PR-вброс такого функционала поступил в сеть заранее таких чатов.

    И барыги оживились: повылазили из темных глубин интернета и (ИМХО) подпортили репутацию самого мессенджера — повсюду создали наркогеографию.

    Несколько дней назад я отправил десятки репортов/жалоб команде Telegram на такие сообщества, а так же пожаловался волонтерам в ожидании «расстрела», но расстрела не последовало, никто не удосужился перезарядить винтовку уничтожить/забанить подобные канал-чаты, никакой вообще реакции (как обычно) со стороны правительственных сил Telegram-Dubai.

    Кстати, с помощью «Fake GPS location» можно подделать любоё своё GPS-положение и, например, создать в любой местности наркогео_чат.

    Вывод: я поделился инфой. И ни в коем случае, не призываю отказаться от классики OSINT ваших наработок и приёмов по добыче информации, смысл статьи в другом, надеюсь вы уловили в чём смысл, чудесного дня!

    Еще по теме:  Как разместить рекламный пост в Телеграм

    p.s. после публикации данного материала, к вечеру, наркотрафик «ивового мира» стал сокращаться.

    Ваш провайдер знает о вас больше, чем ваша девушка? Присоединяйтесь и узнайте, как это остановить!

    Источник: www.securitylab.ru

    Основная бд для фото для тг бота

    Бот на Python, для генерации изображений с помощью нейросети DALL-E для Telegram [Гайд]

    Бот на Python, для генерации изображений с помощью нейросети DALL-E для Telegram [Гайд]

    26 апреля 2023
    Оценки статьи
    Еще никто не оценил статью

    В данной статье мы изучим процесс создания бота на Python, который будет генерировать изображения с помощью нейросети DALL-E 2.

    Гугл таблица как бд для телеграм бота (продолжение)

    Гугл таблица как бд для телеграм бота (продолжение)

    Краткое предисловие: в предыдущем посте я привела пример, как забирать текст из ячеек таблицы и отправлять этот текст в виде отдельных сообщений в телеграм-чат с ботом.

    Как и обещала, в новом посте расскажу как забирать данные из ячеек и превратить их в кнопки, разместив их под сообщениями, которые мы успешно отправляли до этого.

    Ячейки гт в кнопки тг — превращение

    Вернемся к структуре таблицы, в которой лежат кнопки (к тем значениям, которые будут использованы для текста кнопок).

    Таблица Answers

    Это таблица Answers с тремя колонками:

    • ид текста вопроса, к которому относится ответ;
    • текст кнопки;
    • маркер верного ответа.

    Дополним существующий скрипт обработкой данных из этой таблички и формированием объекта типа InlineKeyboardMarkup согласно документации Telegram bot api.

    Вернемся к функции sendQuestions(chat_id) из последнего поста

    function sendQuestions(chat_id) < const questionsArr = questionsSheet.getRange(1,1,questionsSheet.getLastRow(), questionsSheet.getLastColumn()).getValues(); Logger.log(questionsArr) questionsArr.forEach(e =>send(e[1],chat_id)) >

    И добавим строку для получения всех значений из вкладки Answers.

    const answersArr = answersSheet.getDataRange().getValues();

    Как было отмечено в комментариях к прошлой статье, есть более понятный способ получения всех данных из листа, а именно метод .getDataRange().

    Еще по теме:  Что такое фиктивная Телеграмма

    const questionsArr = questionsSheet.getRange(1,1,questionsSheet.getLastRow(), questionsSheet.getLastColumn()).getValues();

    тоже изменить на

    const questionsArr = questionsSheet.getDataRange().getValues();

    В итоге получаем

    function sendQuestions(chat_id) < const questionsArr = questionsSheet.getDataRange().getValues(); const answersArr = answersSheet.getDataRange().getValues(); Logger.log(questionsArr) Logger.log(answersArr) //questionsArr.forEach(e =>send(e[1],chat_id)) >

    Последнюю строку в функции я пока закомментировала, так как взаимодействовать с чатом мы будем позже.

    Запускаем функцию и получаем в логере два массива — с вопросами и ответами.

    *Такой же результат можно получить вложенными циклами

    for (let i=0; i Logger.log(arr) >

    Начиная с третьей строки в логере, выводятся отфильтрованные значения по каждому из ид вопросов — 1, 2, 3 и 4.

    Теперь мне нужно модифицировать каждый такой массив, для чего воспользуюсь методом .map().

    questionsArr.forEach(e => < let arr = answersArr.filter(el =>el[0] == e[0]) arr = arr.map(el => []) Logger.log(arr) const keyboard = < «inline_keyboard»: arr >//send(e[1],chat_id) >)

    Внутри метода map() ссылаюсь на элемент массива arr через el, беру значение на позиции 1 и присваиваю его ключам text и callback_data. То есть элемент [1.0, Джейк пес, ] превратится в []

    И пример того, как это будет в циклах без применения методов (ну за исключением одного)

    for (let i=0; i arr.push(

    ) > > Logger.log(arr) >

    *Метод .push() вставляет указанный в скобках элемент в конец массива

    И вывод в логере модифицированного массива arr

    Вся функция sendQuestions() ниже

    function sendQuestions() < const questionsArr = questionsSheet.getDataRange().getValues(); const answersArr = answersSheet.getDataRange().getValues(); Logger.log(questionsArr) Logger.log(answersArr) //Альтернатива 1 /* for (let i=0; iarr.push(

    ) > > Logger.log(arr) > */ //конец Альтернативы 1 //Альтернатива 2 questionsArr.forEach(e => < let arr = answersArr.filter(el =>el[0] == e[0]) arr = arr.map(el => []) Logger.log(arr) //конец Альтернативы 2 const keyboard = < «inline_keyboard»: arr >//send(e[1],chat_id) >) >

    На этом этапе мы готовы отправить клавиатуру с сообщением, но нам нужна функция, которая эта делает. Внесем некоторые правки в существующую функцию send().

    Еще по теме:  Для чего нужен видеочат в Телеграм

    У нас появился новый передаваемый параметр, имя ключа этого параметра reply_markup, а значение keyboard:

    ‘reply_markup’ : JSON.stringify(keyboard)

    Не забудем указать keyboard в параметрах функции. Таким образом, получим

    function send(msg, chat_id, keyboard) < const payload = < ‘method’: ‘sendMessage’, ‘chat_id’: String(chat_id), ‘text’: msg, ‘parse_mode’: ‘HTML’, ‘reply_markup’ : JSON.stringify(keyboard) >const data = < ‘method’: ‘post’, ‘payload’: payload, ‘muteHttpExceptions’: true >UrlFetchApp.fetch(‘https://api.telegram.org/bot’ + token + ‘/’, data); >

    Сохраняем проект и деплоим (Как это делать?). Не забываем запустить функцию api_connector() с новым значением appLink

    function api_connector() < const appLink = «Ваш URL»; UrlFetchApp.fetch(«https://api.telegram.org/bot»+token+»/setWebHook?url full-width»>Основная бд для фото для ТГ бота

    Бот ответил отправив все вопросы с кнопками вариантов ответов.

    Ниже весь код, который у нас есть на текущий момент

    const doc = SpreadsheetApp.getActive(); const questionsSheet = doc.getSheetByName(«Questions»); const answersSheet = doc.getSheetByName(«Answers»); const usersSheet = doc.getSheetByName(«Users»); const token = «Ваш токен» function api_connector () < const App_link = «Ваш URL»; UrlFetchApp.fetch(«https://api.telegram.org/bot»+token+»/setWebHook?url=»+App_link); >function doPost(e) < const update = JSON.parse(e.postData.contents); let msgData = <>if (update.hasOwnProperty(‘message’)) < msgData = < id : update.message.message_id, chat_id : update.message.chat.id, user_name : update.message.from.username, text : update.message.text, is_msg : true >; > sendQuestions(msgData.chat_id); > function send(msg, chat_id, keyboard) < const payload = < ‘method’: ‘sendMessage’, ‘chat_id’: String(chat_id), ‘text’: msg, ‘parse_mode’: ‘HTML’, ‘reply_markup’ : JSON.stringify(keyboard) >const data = < ‘method’: ‘post’, ‘payload’: payload, ‘muteHttpExceptions’: true >UrlFetchApp.fetch(‘https://api.telegram.org/bot’ + token + ‘/’, data); > function sendQuestions(chat_id) < const questionsArr = questionsSheet.getDataRange().getValues(); const answersArr = answersSheet.getDataRange().getValues(); Logger.log(questionsArr) Logger.log(answersArr) questionsArr.forEach(e => < let arr = answersArr.filter(el =>el[0] == e[0]) arr = arr.map(el => []) Logger.log(arr) const keyboard = < «inline_keyboard»: arr >send(e[1], chat_id, keyboard) >) >

    Продолжение следует.

    Следующим шагом, как не сложно догадаться, будет обработка ответов от пользователей бота с сохранением их в таблицу.

    Спасибо за комментарии к прошлому посту и обязательно дайте знать, если что-то непонятно, буду рада помочь 🙂

    Источник: frontend-spectre.ru

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...