Содержание

FeedBot для Telegram

В свободное от общественных и коммерческих проектов время я немного сам программирую. В основном то что мне же самому нужно и что может пригодится другим.

Пример такого — это FeedRetranslatorBot в телеграме которые перенаправляет новости из RSS каналов на сайте и просто страниц где есть новости в телеграм каналы. Бот был сделан для того чтобы заменить разного рода новостные читалки, а для удобства вместо категорий новостей чтобы можно было создать себе новостные каналы и в них транслировать то что интересно.

Особенность именно FeedRetranslatorBot в алгоритмах внутри которые извлекают новости из сайтов у которых нет экспорта в RSS. Примеры:

  1. Необходимо создать новый публичный канал. В десктопном приложении это раздел «New channel» на английском или «Новый канал» на русском.

    У канала надо заполнить основные его параметры: название, описание и выбрать картинку

  2. Сделать канал публичным
    После создания необходимо настроить канал для работы

    В настройках канала укажите что это «Public channel» а в Link укажите публичный идентификатор канала. В данном случае — это rudigitaltop

  3. Добавьте бота к администраторам канала.
    В Manage Channel нажмите на вкладку Administrators

    Нажмите кнопку «Add administrator»

    В поиске наберите FeedReatranslatorBot и нажмите на выпадающий бот.

    Подтвердите назначение бота администором канала

    Установите и подтвердите разрешения для бота. На практике ему достаточно прав на публикацию материалов.

  4. Добавление канала для подписок
    Откройте чат с FeedRetranslatorBot и наберите команду /channel <название канала> (то которое было указано в Link). Пример: /channel rudigitaltop

Проверьте ленту которую вы хотите транслировать в канал командой /test. Это позволит убедится что новости извлекаемы из этого источника. Пример в данном случае «/test https://corp.mail.ru/ru/press/releases/» проверяет извлекаются ли корпоративные новости mail.ru

Добавьте новости командой /add <id канала> <ссылка>. Пример «/add rudigitaltop https://yandex.ru/blog/company/rss«

В итоге получился канал «Ведущие интернет компании» (rudigitaltop) в который транслируются новости Яндекса, Mail.ru груп, 1С, 2Gis и других.

Список всех каналов и привязанных к ним подписок можно получить командой «/list».
Пример того как выводятся подписки по каналу rudigitaltop

На основе бота уже создано множество каналов:

  • Правительственный дайджест https://t.me/govdigest : новости администрации Президента, Правительства, ключевых министерств и мозговых центров
  • Контрактная система https://t.me/gzcontracts : новости электронных торговых площадок, сайта госзакупок и других источников регулирования российской контрактной системы (государственной)
  • Госфинансы https://t.me/govfin : новости Минфина, Казначейства, ФНС России и другие новости по госфинансам
  • Московский патриархат https://t.me/mospatriarhia новости Московского патриархата и всех его синоидальных отдела (без учёта митрополий и епархий)
  • Open Data Digest https://t. me/opendatadigest : международные новости про открытые данные
  • Open Government Digeest https://t.me/opengovdigest : международные новости про открытость государства
  • Data is Good https://t.me/dataisgood : международные источники про данные и алгоритмы
  • Крупнейшие компании https://t.me/topcorpnews : новости топ 20 российских компаний по рейтингу РБК 500 (Газпром, Лукойл, Ростех и др)

Кроме того многие публичные каналы создают пользователи.
Например, Фил Кулин (канал Эшер II, https://t.me/usher2, https://usher2.club) создал такие каналы:

  • Лента новостей с regulation.gov.ru https://t.me/ru_regulation : поток новостей по законопроектам для публичной реакции
  • Новости Минцифры и Роскомнадзора https://t.me/ru_comnews : новости этих двух ведомств соответственно

Для того чтобы извлекать оттуда новости бот использует библиотеку newsworker https://github.com/ivbeg/newsworker которая как раз и извлекает из HTML заголовки, даты, ссылки и текст новости. Это даёт возможность охватить ещё и те источники новостей которые можно упустить при медиамониторинге.

Новости собираются в режиме от 15 до 30 минут, если не возникает проблем с первоисточником, например если он не банит внешних ботов как это иногда бывает с сайтом Роскомнадзора, например.

Бот работает на принципе forever free, создан не для монетизации, а для личного удобства (как я уже говорил он мне нужен для замены RSS читалок). Большая часть его кода открыта или будет открыта на github’е.

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

Из того что запланировано:

  • веб-интерфейс с документацией и каталогом общедоступных каналов (для тех кто решит их публичить)
  • API и утилита командной строки для управления подписками
  • монитор доступности сайтов с новостями (не заблокировали ли бота)
  • упрощение горизонтального масштабирования

Вы также можете создать свои каналы с помощью этого бота. Он реагирует на команду /help, а мне можно задавать вопросы и пожелания в https://t.me/begtinchat и на почту [email protected].

Как настроить автопостинг в канал «Телеграм» из RSS-ленты

Сегодня многие сайты пытаются расширять свою аудиторию за счет популярных мессенджеров, таких как «Телеграм» (Telegram). Ниже мы расскажем о том, как для этой цели создать в «Телеграм» канал и автоматизировать трансляцию в него информации с вашего сайта. Webkolba предлагает вашему вниманию пошаговую инструкцию настройки автоматического постинга в «Телеграм» посредством RSS-ленты.

Создание канала в Телеграм

1. После того, как вы зарегистрировались в мессенджере, перейдите в ваших настройках во вкладку New Channel («Новый канал»).

2. Вам будет предложено выбрать имя канала и его описание. Заполните соответствующие строки.

3. После ввода имени канала и описания нажмите кнопку Create («Создать»).

4. Следующим шагом выберите, будет ли ваш канал открытым или приватным (выбирайте Public), и предложите свой вариант линка. Нажмите «Сохранить».

5. Затем мессенджер предложит пригласить в канал подписчиков — если у вас уже есть контакты в «Телеграм», то можете их пригласить. Либо же пропустите этот шаг.

6. Ваш канал в «Телеграм» готов!

 

Создание бота в Телеграм

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

1. Для генерации бота найдите в поиске мессенджера аккаунт @Manybot и зайдите в него.

2. В нижнем меню нажмите на пункт Create a New Bot («Создать нового бота»).

3. В чате с @Manybot появится дальнейшая инструкция по созданию вашего бота.

А именно:

а) вам нужно перейти к диалогу с аккаунтом @BotFather, нажав на это имя в появившейся инструкции;

б) в чат с @BotFather отправьте команду /newbot;

в) в чат с @BotFather отправьте имя, которым вы хотите назвать вашего бота, с обязательным окончанием «bot». Если придуманное вами имя уже занято, то @BotFather предложит подобрать другой вариант;

г) Если предложенное имя бота подошло, то @BotFather пришлет вам специальный ключ (токен). Скопируйте токен.

На этом диалог с @BotFather можно завершить.

4. Вернитесь к диалогу с @Manybot и отправьте ему в чат полученный от @BotFather токен.

5. @Manybot сообщит, что ваш бот создан и предложит ввести его описание. Этот шаг можно пропустить, нажав skip.

Ваш бот создан. Далее переходим к диалогу с ним.

 

Включение RSS-трансляции в Телеграм

1. Перейдите в диалог с вашим новосозданным ботом и отправьте ему в чат команду /autoposting.

2. Внизу появится меню с указанием возможных источников трансляции. Нажмите кнопку +RSS feed.

3. В чат с ботом отправьте ссылку на RSS-ленту вашего сайта.

4. Бот начнет трансляцию контента из вашего RSS-канала в свой аккаунт.

В принципе, данная инструкция содержится и в официальном блоге «Телеграма». Однако, если остановиться на ней и не предпринять следующие шаги, то ваш бот будет постить только на свою собственную страницу, а не в ваш публичный канал.

Для того, чтобы автоматическая трансляция RSS-ленты вашего сайта происходила именно в канале, следует назначить бота администратором канала и включить автопостинг.

 

Назначение бота админом канала в Телеграм

1. Перейдите в настройки вашего канала через кнопку в его правом верхнем углу и в выпавшем меню выберите вкладку Manage channel («Управление каналом»).

2. В появившемся окне нажмите на вкладку Administrators («Администраторы»).

3. В открывшемся окне поиска введите имя вашего бота, начиная с @.

4. Нажмите кнопку Add administrator («Добавить администратора»).

Готово! Теперь ваш бот — админ вашего канала в «Телеграме».

Далее необходимо перенаправить автоматическую трансляцию контента со страницы бота в ваш официальный Телеграм-канал.

 

Включение автопостинга в канал

1. Заходим на страничку созданного бота, разворачиваем нижнее меню, в меню выбираем вкладку Settings («Настройки»).

2. После перехода в Settings выбираем самую верхнюю вкладку Channels («Каналы»), нажимаем на нее.

3. Мессенджер предложит выбрать канал для постинга. Нажимаем на кнопку Add Channel («Добавить канал»). После этого в окно чата с ботом нужно отправить имя вашего канала в «Телеграм», начиная с @, или же линк на нужный канал.

4. После отправки в чат ссылки на канал нажмите в меню кнопку Send Test Message («Отправить тестовое сообщение») — и бот отправит проверочное сообщение в ваш канал. Убедитесь, что оно пришло.

5. Если все нормально, то в чате с ботом появится сообщение Channel successfully added («Канал успешно добавлен»). Спустя какое-то время в нем автоматически начнут появляться посты из вашей RSS-ленты. Дело сделано!

В случае необходимости вы можете настроить отправку этим же ботом сообщений и в другие ваши каналы с помощью кнопки меню Add Channel.

Telegram бот пересылки сообщений из RSS канала

13.01.202008:5113.01.2020 08:51:11

Сегодня мы напишем бота пересылки сообщений из RSS ленты в канал telegram.

Для начала нужно зарегистрировать бота в telegram.

Добавляем в список контактов @BotFather

Отправляем ему команду:

Получаем в ответ сообщение:

Alright, a new bot. How are we going to call it? Please choose a name for your bot.

Придумываем имя боту.

Получаем в ответ сообщение:

Good. Now let’s choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.

Придумываем username, должно заканчиваться обязательно на ‘bot’

Получаем в ответ сообщение:

Good. Now let’s choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.

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

Done! Congratulations on your new bot. You will find it at t.me/XXXXbot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you’ve finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.

Use this token to access the HTTP API:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
For a description of the Bot API, see this page:
https://core.telegram.org/bots/api

Долее создаем новую группу или в уже существующую добавляем бота поиском по имени которое указывали ранее.

Переходим к написанию бота.

Для начала создадим и заполним файл settings. ini в котором будем хранить настройки нашего бота.

[RSS]
feed = https://lenta.ru/rss
datetime = 2019-06-17 04:21:00 +03:00

[Telegram]
bot_token = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
channel = @xxxxxxx

В этом примере источник feed — RSS https://lenta.ru/rss
datetime — строка для хранения даты и времени последнего полученного сообщения RSS
bot_token — токен бота полученного ранее
channel — ваш канал в телеграмме в который будут отправляться сообщения из RSS.

Для начала нам понадобятся стандартные библиотеки, datetime, configparser и urllib

И несколько библиотек не входящих в стандартную поставку python — feedparser и telebot

Установим недостающие библиотеки, в консоли пишем следующие команды:

pip install feedparser
pip install pyTelegramBotAPI

Создаем файл main.py и в самом начале файла импортируем нужные библиотеки:

import feedparser
import datetime
import telebot
import configparser
import urllib. request, urllib.parse, urllib.error

Считываем настройки из settings.ini:

# Считываем настройки
config = configparser.ConfigParser()
config.read('settings.ini')
FEED = config.get('RSS', 'feed')
DATETIME = config.get('RSS', 'DATETIME')
BOT_TOKEN = config.get('Telegram', 'BOT_TOKEN')
CHANNEL = config.get('Telegram', 'CHANNEL')

Получаем RSS ленту

rss = feedparser.parse(FEED)

Инициализируем телеграмм бота

bot = telebot.TeleBot(BOT_TOKEN)

Запускаем основной цикл получения сообщений RSS и проверяем дату сообщений, в вашем источнике RSS формат даты может отличаться, поэтому в строке time = datetime.datetime.strptime(data, ‘%a, %d %b %Y %H:%M:%S %z’) подставьте свои параметры, все параметры для работы с датой можно посмотреть тут

for post in reversed(rss. entries):
    data = post.published
    time = datetime.datetime.strptime(data, '%a, %d %b %Y %H:%M:%S %z')
    time_old = config.get('RSS', 'DATETIME')
    time_old = datetime.datetime.strptime(time_old, '%Y-%m-%d  %H:%M:%S%z')

Пропускаем уже опубликованные посты, если пост не был опубликован — то записываем дату и время поста в файл:

# Пропускаем уже опубликованные посты
if time <= time_old:
    continue
else:
    # Записываем время и дату нового поста в файл
    config.set('RSS', 'DATETIME', str(time))
    with open('settings.ini', "w") as config_file:
        config.write(config_file)

print('---------------------------------')
print(time)

Получаем заголовок поста

text = post.title
print(text)

Получаем картинку

# Получаем картинку
img = post. links[1].href
print(img)

Получаем ссылку на пост

link = post.links[0].href
print(link)

Скачиваем картинку

urllib.request.urlretrieve(img, 'img.jpg')

Отправляем картинку и текстовое описание в Telegram

bot.send_photo(CHANNEL, open('img.jpg', 'rb'))
bot.send_message(CHANNEL, '<a href="' + link + '">' + text + '</a>', parse_mode='HTML')

Цикл получения и отправки из RSS ленты в Telegram полностью:

for post in reversed(rss.entries):
    data = post.published
    time = datetime.datetime.strptime(data, '%a, %d %b %Y %H:%M:%S %z')
    time_old = config.get('RSS', 'DATETIME')
    time_old = datetime.datetime.strptime(time_old, '%Y-%m-%d  %H:%M:%S%z')

    print(time)
    print(time_old)
    # Пропускаем уже опубликованные посты
    if time <= time_old:
        continue
    else:
        # Записываем время и дату нового поста в файл
        config. set('RSS', 'DATETIME', str(time))
        with open('settings.ini', "w") as config_file:
            config.write(config_file)

    print('---------------------------------')
    print(time)

    # Получаем заголовок поста
    text = post.title
    print(text)

    # Получаем картинку
    img = post.links[1].href
    print(img)

    # Получаем ссылку на пост
    link = post.links[0].href
    print(link)

    # Скачиваем картинку
    urllib.request.urlretrieve(img, 'img.jpg')

    # Отправляем картинку и текстовое описание в Telegram
    bot.send_photo(CHANNEL, open('img.jpg', 'rb'))
    bot.send_message(CHANNEL, '<a href="' + link + '">' + text + '</a>', parse_mode='HTML')

Вот и все, бот для отправки из RSS в Telegram готов.

Полный код бота вы можите посмотреть в моем репозитории на github

GitHub — telegram-bots/telegram-rss-manager

GitHub — telegram-bots/telegram-rss-manager

Files

Permalink

Failed to load latest commit information.

Type

Name

Latest commit message

Commit time

Продолжаем делать что-то с кучей каналов в Телеграме (предыдущая попытка: telegram-channels-feed).

На сей раз вынесем подписки из Telegram (мессенджера) в RSS-ленту.

  • Один Юзер имеет n rss-фидов.
  • Один rss-фид — это 1 или более каналов.
  • Каналы в фиде могут быть активными или неактивными.
  • Если канал неактивен, то посты из него не транслируются в фид.
  • Посты во всех каналах имеют permalink-и (пример), поэтому в фиде — либо title+excerpt+link, либо title+full text.
  • Нужно, чтобы это можно было настроить.
  • Нужно уметь фильтровать сообщения определённых типов.
  • Нужно уметь фильтровать по точному вхождению строки.

Формирование ленты

Вместо формата rss лучше использовать atom.

  • Дописываем посты в файл с названием: ${userId}_${subscriptionName}.xml
  • Вид ссылки на пост: <a href="https://t.me/${channelLink}/${postId}">${channelName}</a>

About

No description, website, or topics provided.

Resources

License

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.

RSS фидер на Python с оправкой уведомлений в Телеграм

По сути, это рабочий rss фидер на python, который получает фижы, складывает их в sqlite БД, проверяет наличие новых сообщений, все новые сообщения шлет в Telegram бота. Удобно, можно настроить отработку по крону, хороший вариант избавиться от лишнего ПО на компьютере и в телефоне. Я использую python3, для работы фидера нужно установить python3-feedparser, я использую Fedora, поэтому использую dnf:

dnf install python3-feedparser

Как регистрировать бота наверное Вы знаете, поэтому приведу здесь ссылку на BotFather, где интуитивно и понятно можно создать себе бота. После создания бота, будет отображен его токен, ID своего чата с ботом можно узнать используя ссылку — https://api.telegram.org/bot$TOKEN/getUpdates или использовать Телеграм бота для распознавания своего ID — https://t.me/Get_Telegram_ID_bot

Теперь эти данные (токен и чат id) можно использовать в скрипте

Создание RSS фидера на Python

Далее создаем файл с расширением .py указываем интерпритатор, подключаем необходимые компоненты:

#!/usr/bin/python3

import sqlite3
import requests
import feedparser
import os

Указываем ссылки на свои любимые фиды:

myfeeds = [
  'https://sys-adm. in/?format=feed&type=rss',
  'https://forum.sys-adm.in/index.php?action=.xml;type=rss'
]

Создаем / Используем sqlite БД

scriptDir = os.path.dirname(os.path.realpath(__file__))
db_connection = sqlite3.connect(scriptDir + '/rss.sqlite')
db = db_connection.cursor()
db.execute('CREATE TABLE IF NOT EXISTS myrss (title TEXT, date TEXT)')

Пишем процедуры проверки наличия постов в БД:

def article_is_not_db(article_title, article_date):
    db.execute("SELECT * from myrss WHERE title=? AND date=?", (article_title, article_date))
    if not db.fetchall():
        return True
    else:
        return False

Добавления постов в БД:

def add_article_to_db(article_title, article_date):
    db.execute("INSERT INTO myrss VALUES (?,?)", (article_title, article_date))
    db_connection.commit()

Процедуру отправки сообщения Телеграм боту:

def bot_sendtext(bot_message):
    send_text = 'https://api. telegram.org/bot' + bot_token + '/sendMessage?chat_id=' + bot_chatID + '&parse_mode=Markdown&text=' + bot_message
    requests.get(send_text)

Пишем процедуру получения фида, проверки его наличия в БД:

def read_article_feed(feed):
    feed = feedparser.parse(feed)
    for article in feed['entries']:
        if article_is_not_db(article['title'], article['published']):
            add_article_to_db(article['title'], article['published'])
            bot_sendtext('New feed found ' + article['title'] +',' + article['link'])

Проверяем каждый фид из списка:

def spin_feds():
    for x in myfeeds:
        read_article_feed(x)

Запускаем все это дело:

if __name__ == '__main__':
    spin_feds()
    db_connection.close()

Задаем разрешение на исполнение:

Пробуем. Если все работает можно закинуть скрипт в crontab:

cp rss.py /etc/cron.hourly/

Или просто добавить его в cron (например с интервалом запуска 5 минут):

*/5 * * * * /path/to/rss. py

Готовый бот в моей репе на GitHub. Done! 

Список полезных Телеграм ботов | Статья блога Kiwi agency


За последний год мессенджер Telegram стремительно набрал большую популярность. Благодаря своему удобству, простоте и некоторым интересным «фишкам» — чат-ботам. Они автоматически могут отвечать на запросы пользователей, быстро искать информацию в интернете и решать разнообразные задачи.
Хотим поделиться с вами интересной подборкой удобных ботов в Telegram, которые взаимодействуют со многими социальными сервисами.

Боты-помощники в YouTube

@poisk_bot – ищет и скачивает ролики из YouTube.

@YoutubeConvertBot – скачивает видео с YouTube в разном качестве, может конвертировать их в mp3-формат и отправить в Telegram, Google Drive.

@MeTubeBot – работает inline, скачивает ролики из YouTube.

@YTAudioBot – скачивает по ссылке аудио файлы из YouTube.

@ytWatchBot – регулярно присылает уведомления из YouTube-каналов, которые добавлены в подписку пользователя.

@youtube_subs_watcher_bot – уведомляет о новых видео в подписках на YouTube.

@YouTube Downloader – помогает за несколько минут загрузить видео с YouTube на устройство пользователя.

 

Боты-помощники в Instagram

@InstaBot – умеет скачивать фото, видео из Instagram.

@socialsaverbot – сохраняет фото, видео из Instagram.

@InstaSave – за несколько секунд скачивает из Instagram любые фото и видео.

 

Боты-помощники в разных социальных сетях

@NowTrendingBot – собирает и рассылает пользователям тренды из Twitter, YouTube, Vimeo.

@FBvidzBot – помогает скачивать видео из Facebook.

@scloud_bot – взаимодействует с SoundCloud и ищет и скачивает с этого ресурса музыку.

@AximoBot – бот-агрегатор RSS и новостных лент соцсетей. Работает в Instagram, Twitter, Twitch, Periscope, Medium, Livejournal, Youtube.

@twiMonBot – присылает уведомление о начале трансляции на Youtube Gaming, Twitch, Hitbox и GoodGame.

@The_MusicBot, @BeatSpotBot – быстро ищут и скачивают музыку.

@vgifbot – умеет конвертировать видео из Instagram, Vine и Coub в GIF-файлы.

@telefeedbot – бот для чтения публичных страниц Twitter, Reddit, Instagram RSS-лент и других.

@MuzOneBot – работает inline, ищет песни по базе пользователя, которую можно пополнять музыкой.

@SaveVideoBot – скачивает видео по ссылке с разных видеосервисов: Youtube, Instagram, DailyMotion, 9gag, Soundcloud и др.

@spotifybot – ищет и скачивает песни для пользователей из Spotify.

@TwTrendsBot – держит в курсе всех популярных событий и трендов в Twitter.

@TweetItBot – бот-клиент в Twitter

@Gifs.com.Bot – создает GIF-файлы с видео с Instagram, Facebook, Twitter, Gfycat и др.

@ImageTranslateBot – боту можно отправить фото с иностранным текстом, а он его сможет перевести.

@Guggy – если прислать этому боту определенное слово или фразу, то в ответ можно получить смешные гифки по этой теме.

 

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

Алиса Закревская, SMM-менеджер Kiwi Agency

Трансляция RSS канала в мессенджер Discord

Только освоился с Telegramm и вот, появился новый мессенджер — Discord. Зачем он нужен, ведь им еще никто не пользуется и есть Telegramm? Ну, совсем недавно было непонятно зачем Telegramm, если есть Twitter.

Трансляция RSS в мессенджер.

Трансляция RSS каналов этого сайта осуществляется в Telegramm: t.me/fil_tec.

Сделаем теперь трансляцию в Discord и создадим приглашение на сервер: discord. gg/QsU6MT.

Кроме приглашения на сервер можно создавать ссылки на сообщения каналов:

discordapp.com/channels/698793126499975188/698793126499975191/707309475073359903.

Ссылка строится, как номер сервера/номер канала/номер сообщения.

Откинув части ссылки можно получить ссылку на канал или ссылку на сервер.

Зачем нужен Discord.

Discord, по сравнению с Telegramm, имеет более продвинутые функции по созданию структурированных сообществ с ролями, рейтингами, ветками дискуссий.

Возможно создавать Bot, как и в Telegramm.

Базовой единицей является «Сервер», который может иметь «Каналы». В некотором смысле эти информационные сущности похожи на «Форум» — «Ветка форума».

Но темой данной статьи является трансляция RSS канала в канал сервера Discord.

Мессенджер Discord максимально заточен под геймерство, но встроенные возможности позволяют создавать социальные структуры

Пример структурированного социального сообщества можно посмотреть в ведомом мною канале Искусственный интеллект: discord. com/channels/697727732313882644/705673968970891274.

Приглашение на сервер для участия в дискуссии: discord.gg/a8b3mav.

Как сделать трансляцию RSS в Discord.

1. Создаем сервер Discord, в каналы которого будем транслировать RSS.

Мы можем создать разные каналы для трансляции разных RSS сайта: статьи, комментарии и т. д.

2. Приглашаем Discord RSS Bot на сервер.

Для этого идем на страницу discordrss.xyz

И приглашаем Bot на свой сервер.

Затем отправляем команду ~rsshelp чтобы увидеть список возможных команд:

Список команд открывается в отдельном канале.

3. Добавляем RSS ленту в канал сервера Discord:

Делается это командой ~rssadd https://fil-tec.ru/feed.

4. Настраиваем внешний вид сообщения.

Отправляем команду ~rssmessage и на вопрос отвечаем номером добавленной ранее RSS ленты, отображение элемента которой будем настраивать:

Отображается текущий формат сообщения и предлагается ввести новый формат.

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

В ответ на эту команду Bot добавляет в канал один из последних элементов RSS ленты:

Команды Discord RSS Bot.

Аргументы для команд добавляются после команды. Например: ~ rsstest имеет простой формат без аргументов.

~rssadd — Добавить канал RSS в канал с сообщением по умолчанию. Несколько каналов могут быть добавлены путем разделения с помощью .

Аргументы: — Фид URL.

~rssremove — открывает меню, чтобы удалить канал из канала.

~rsslist — список всех активных каналов на сервере.

~rssmessage — открывает меню для настройки текстового сообщения фида.

~rssembed — открывает меню для настройки сообщения встраивания канала.

Аргументы: fields — Настройка полей для встраивания.

~rssfilters — открывает меню для добавления или удаления глобальных фильтров из ленты. Сообщения, в которых нет ни одного слова из ваших фильтров, не будут отправлены в Discord.

~rssdate — открывает меню, чтобы настроить отображение даты.

~rssmention — открывает меню для добавления глобальных/отфильтрованных подписок для ролей/пользователей в каналы.

~rsstest — открывает меню для отправки тестового сообщения для произвольной статьи в фиде вместе с доступными свойствами и заполнителями для различных настроек. Можно добавить аргумент simple в качестве параметра, чтобы исключить детали теста.

Аргументы: simple- пропустить результаты теста и только отправить сообщение.

~subme — открывает меню, чтобы добавить пользователю роль с активной подпиской на канал. Используется любым пользователем на сервере, включено/отключено с помощью разрешения «Управление ролями». Роли должны быть ниже роли бота в порядке ролей в настройках ролей.

Аргументы:   — вводите роль напрямую, а не через меню.

~unsubme — открывает меню, похожее на subme, но только для удаления роли. Любая роль под порядком ролей бота будет удалена.

Аргументы: Discord.RSS.

~rssrefresh — открывает меню, для восстановления ссылки в обычный цикл при превышении лимита.

~rssoptions — открывает меню для настройки фида.

~rsssplit — открывает меню, чтобы настроить параметры разделения сообщений.

~rssmove — открывает меню для перемещения канала в другой канал.

~rssclone — клонировать настройки канала для других каналов.

Аргументы: — используйте команду без аргументов для получения дополнительной информации.

~rssbackup — отправляет профиль сервера в виде вложения JSON для личных резервных копий.

~rssstats — показывает статистику производительности и размера бота.

~rsswebhook — открывает меню, чтобы подключить вэбхук к каналу, чтобы вместо этого отправлять сообщения.

~rssprefix — изменить префикс, используемый для команд, из значения по умолчанию (~).

Аргументы: — префикс для использования.

       reset — сбросить префикс обратно к значению по умолчанию (~).

~rssalert — Настройте прямой обмен сообщениями пользователей для предупреждений / сбоев каналов.

Аргументы: add — добавить пользователя в личное сообщение.

       remove — удалить пользователя из обмена.

      list — список текущих пользователей, которым разрешен прямой обмен сообщениями.

~rsslocale — изменить язык команд (если поддерживается нужный язык)

Аргументы: — желаемая локаль.

~rssinvite — отправить пригласительные ссылки для этого бота.

~rssversion — показать версию бота.

Еще записи по теме

BoKKeR / RSS-to-Telegram-Bot: RSS-to-Telegram скрипт Python

Самостоятельный телеграмм-бот на питоне, который выгружает сообщения из RSS-каналов в телеграм-чат. Этот сценарий был создан, потому что все сторонние службы были ненадежными.

Докер

Образ докера см. По адресу: https://hub.docker.com/r/bokker/rss.to.telegram/

Установка

Python 3.X

 pip install feedparser
pip установить python-telegram-bot 

Нужен телеграм-бот, к которому будет подключаться скрипт.https://botsfortelegram.com/project/the-bot-father/
Запуск скрипта и ввод / help покажет текущий chatId, это необходимо также установить в скрипте

.

  1. Клонировать сценарий
  2. Замените свой chatID и токен в верхней части скрипта.
  3. Отредактируйте задержку. (секунды)
  4. Сохранить и запустить
  5. Используйте команды телеграммы для управления потоками

Внимание! Без chatID бот не сможет отправлять автоматические сообщения и сможет только отвечать на сообщения.

отправить / помочь боту получить это сообщение:

RSS в Telegram бот

После успешного добавления RSS-ссылки бот начинает получать ленту каждые 60 секунд. (Это можно установить)
Заголовки используются для простого управления RSS-потоками и должны содержать только одно слово

команд:

/ добавить заголовок http: // www (.) URL (.) Com

/ help Показывает этот текст

/ удалить ! Заголовок! удаляет ссылку RSS

/ list Перечисляет все заголовки и ссылки RSS из БД

/ test Встроенная команда, которая извлекает сообщение из Reddits RSS.

Текущий chatId: 20416xxxx

Если бот настроен, например, на 5 минут и один канал успевает получить 2 новых сообщения, прежде чем бот сможет проверить. В Telegram будет отображаться только последнее сообщение.

  докер создать \
  --name = rss.to.telegram \
  -e ЗАДЕРЖКА = 60 \
  -e ТОКЕН = InsertToken \
  -e ЧАТИД = InsertChatID \
  -v / путь / к / хосту / config: / config \
  --рестарт, если не остановлен \
  bokker / rss. to.telegram
  

Пакет — rss-o-bot

Супер простой читатель / клиент RSS и Atom из командной строки.Он предназначен не для чтения каналов (например, Newsbeuter), а для уведомления вас о размещении новых элементов. Сеть должна быть децентрализованной. Большинство читателей (например, RSS Bot) создаются с помощью централизованных служб. RSS-o-Bot нет. Его можно запускать на вашем собственном компьютере. Уведомлениями управляют службы, которые устанавливаются отдельно. Сервисы уведомлений доступны для электронной почты, уведомлений на рабочем столе и Telegram.

Требования

Совместимость

RSS-o-Bot должен работать на всех платформах, где установлен Node.js запускается. Но он разработан для Mac OS, а тесты проводятся в Linux. Цель состоит в том, чтобы он также работал в Windows. К сожалению, у меня не всегда есть машина для тестирования. Запуск самого RSS-o-Bot на разных платформах по большей части не вызывает проблем. Что не так просто, так это запуск различных уведомлений. Особенно настольный уведомитель. Поэтому, пожалуйста, проверьте его документацию для получения дополнительной информации о совместимости.

Имя

Название RSS-o-Bot — игра на RSS Bot. o означает открытый, как в FOSS.

Документация

См. Справочную страницу на Github или man rss-o-bot (если вы его установили).

Установка

  нпм i -g rss-o-bot
npm i -g rss-o-bot-email # Уведомитель
  

Ваш RSS-o-Bot будет искать файл конфигурации здесь: ~ / .rss-o-bot / config.json . Вот пример конфигурации:

  {
  "методы-уведомления": ["рабочий стол", "телеграмма", "электронная почта"],
  "получатели электронной почты": ["кто-то @ где-нибудь в.сеть"],
  "telegram-api-token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "получатели телеграммы": ["00000000"]
}
  

По умолчанию rss-o-bot хранит свои данные в базе данных SQLite в ~ / . rss-o-bot / feeds.sqlite . Но вы можете настроить его как хотите (см. Справочную страницу).

После создания файла конфигурации вы можете проверить его с помощью rss-o-bot test-config .

Использование

Сначала добавим фид:

  $ rss-o-bot добавить https: // github.com / kriegslustig / rss-o-bot / коммиты / master.atom
  

Когда мы сейчас перечисляем все каналы, отображается тот, который мы добавили.

  $ rss-o-bot список
1: ноль - https://github.com/kriegslustig/rss-o-bot/commit/master.atom -
  

Первый столбец в выводе rss-o-bot list — это идентификаторы каналов. Второй показывает название. Сейчас это null , потому что

  $ rss-o-bot рм 1
  

Теперь мы можем снова добавить URL, теперь с фильтром:

  $ rss-o-bot добавить https: // github.com / kriegslustig / rss-o-bot / commits / master. atom "notif"
  

Итак, теперь мы получаем уведомление всякий раз, когда сообщение фиксации содержит строку «notif». При добавлении отфильтрованных каналов доступны еще несколько параметров. Обратитесь к странице руководства для получения дополнительной информации.

Доступные уведомители

Демонизация

Чтобы запустить RSS-o-Bot, вы захотите его демонизировать (заставить его работать в фоновом режиме). Однако его демонизация вызывает некоторые проблемы. Демонизированный процесс не может отправлять уведомления на рабочий стол.Если вы используете Linux, вы, вероятно, захотите использовать systemd. Разберитесь сами. В противном случае вы, вероятно, захотите использовать pm2. Это действительно мощная, но простая в использовании система для демонизации процессов (LOL).

  нпм i -g pm2
pm2 запустить rss-o-bot
  

Если вы еще этого не сделали, я бы заставил службы pm2 запускаться после перезагрузки.

  pm2 startup [платформа] # Доступные платформы см. В `pm2 -h`
  

Развитие

Перед фиксацией используйте команду npm run build для создания страницы руководства и JS.

Разработка уведомителей

RSS-o-Bot требует модуля для каждого «метода-уведомления» в шаблоне rss-o-bot - $ {method} . Вы можете разработать собственное средство уведомления, создав пакет и назвав его rss-o-bot - $ {method-name} . Основной пакет этого пакета должен экспортировать единственную функцию, которая вызывается rss-o-bot следующим образом:

  уведомитель (конфигурация) (blogTitle, entryUrl, entryTitle)
  

Вы можете проверить исходный код rss-o-bot-email для получения дополнительной информации.

Устранение неисправностей

Ошибка: установите пакет sqlite3 вручную

Эта ошибка иногда возникает, когда sqlite3 не может быть правильно установлен. Чтобы решить эту проблему, сделайте следующее:

  cd $ (префикс получения конфигурации npm) / lib / node_modules / rss-o-bot / node_modules / sqlite3
npm i --build-from-source
  

Теперь вы можете запустить rss-o-bot.

Кредиты

Логотип создан mala23

Эта работа находится под лицензией Creative Commons Attribution-NonCommercial-ShareAlike 4.0 Международная лицензия.

TODO

Текущие теги

  • 1.0.0-rc.26 … последняя (3 года назад)

41 Версии

  • 1.0.0-rc.26 … 3 года назад
  • 1.0.0-rc.25 … 4 года назад
  • 1.0.0-rc.24 … 4 года назад
  • 1.0.0-rc.22 … 4 года назад
  • 1.0.0-rc.21 … 4 года назад
  • 1.0.0-rc.20 … 4 года назад
  • 1.0.0-rc.19 … 4 года назад
  • 1.0.0-rc.18 … 4 года назад
  • 1. 0.0-RC.17… 4 года назад
  • 1.0.0-rc.16 … 4 года назад
  • 1.0.0-rc.15 … 4 года назад
  • 1.0.0-rc.14 … 4 года назад
  • 1.0.0-rc.13 … 4 года назад
  • 1.0.0-rc.10 … 4 года назад
  • 1.0.0-rc.9 … 4 года назад
  • 1.0.0-rc.8 … 4 года назад
  • 1.0.0-rc.7 … 4 года назад
  • 1.0.0-rc.6 … 4 года назад
  • 1.0.0-rc.5 … 4 года назад
  • 1.0.0-RC.4… 4 года назад
  • 1.0.0-rc.3 … 4 года назад
  • 1.0.0-rc.2 … 4 года назад
  • 1.0.0-rc.1 … 4 года назад
  • 0.5.4 … 5 лет назад
  • 0.5.3 … 5 лет назад
  • 0.5.2 … 5 лет назад
  • 0.5.1 … 5 лет назад
  • 0.5.0 … 5 лет назад
  • 0.4.7 … 5 лет назад
  • 0.4.6 … 5 лет назад
  • 0.4.5 … 5 лет назад
  • 0. 4.4 … 5 лет назад
  • 0.4.3 … 5 лет назад
  • 0.4.2 … 5 лет назад
  • 0.4.1 … 5 лет назад
  • 0.4.0 … 5 лет назад
  • 0.3.2 … 5 лет назад
  • 0.3.1 … 5 лет назад
  • 0.3.0 … 5 лет назад
  • 0.2.0 … 5 лет назад
  • 0.1.0 … 5 лет назад

Топ 40 RSS-каналов чат-ботов

1. RSS-канал журнала чат-ботов

RSS Feed — chatbotsmagazine.com/feed Сайт — chatbotsmagazine.com О сайте — Журнал Chatbots Magazine — это место, где можно узнать о чат-ботах, AI, NLP, Facebook Messenger, Slack, Telegram и многом другом. Просмотр последних сообщений ⋅ Получить адрес электронной почты

2. RSS-канал жизни чат-бота

Сан-Франциско, Калифорния, США RSS-канал — chatbotslife. com/feed Сайт — chatbotslife.com О сайте — Лучшее место, чтобы узнать о чат-ботах. В этом блоге публикуются последние новости о ботах, информация, ИИ и НЛП, инструменты, учебные пособия и многое другое. Частота 3 сообщения / день С — сентябрь 2015 г. Просмотр последних сообщений ⋅ Получить адрес электронной почты

3. RSS-канал Chatfuel blog

Сан-Франциско, Калифорния, США RSS-канал — blog.chatfuel.com/feed Сайт — chatfuel.com/blog О сайте — Chatfuel — ведущая платформа для создания ботов в Messenger. Найдите в этом блоге новости, советы и информацию о чат-ботах. Частота 25 сообщений / год С — июль 2015 Просмотреть последние сообщения ⋅ Получить адрес электронной почты Контакт

4.Reddit — RSS-канал чат-ботов

Сан-Франциско, Калифорния, США RSS-канал — reddit. com/r/Chatbots/.rss?f .. Сайт — reddit.com/r/Chatbots О сайте — Reddit — это сообщество миллионов пользователей, участвующих в создании контента и обсуждениях по десяткам тысяч тем. Найдите информацию, связанную с чат-ботами, на популярных платформах обмена сообщениями, таких как Facebook Messenger, Slack, SMS, WeChat или Kik. Также обсудите AI, NLP и машинное обучение. Частота 2 сообщения / день Последние сообщения ⋅ Получить адрес электронной почты

5. Блог Botsociety | Байки из разговорной смены RSS Feed

Сан-Франциско, Калифорния, США RSS-канал — botsociety.io/blog/feed Сайт — botsociety.io/blog О сайте — Узнайте, как дизайнеры и разработчики переходят на диалоговые интерфейсы. Найдите уроки, интервью и истории из этого блога. Частота 1 сообщение в неделю С — февраль 2018 г. Просмотреть последние сообщения ⋅ Получить адрес электронной почты

6. RSS-канал Bot Academy

RSS-канал — botacademy.com/blog/feed Сайт — botacademy.com/blog О сайте — В этом блоге есть советы о том, как создать чат-бота и использовать его через Facebook Messenger. Просмотр последних сообщений ⋅ Получить адрес электронной почты

7. MobileMonkey | RSS-канал блога

Бостон, Массачусетс, США RSS-канал — mobilemonkey.com/blog/feed Сайт — mobilemonkey.com/blog О сайте — Mobile Monkey — это платформа для маркетологов для создания, управления и продвижения своих брендов с помощью Чат-боты AI, одна из самых захватывающих и революционных новых маркетинговых технологий на сегодняшний день.Мы считаем, что персонализированное информационное агентство — это будущее цифрового маркетинга, и мы сотрудничаем с лучшими маркетологами и цифровыми агентствами на планете. Частота 5 сообщений в неделю Просмотр последних сообщений ⋅ Получить адрес электронной почты

8. RSS-канал блога Engati

Бангалор, Карнатака, Индия RSS Feed — blog.engati.com/feed Site — engati.com/blog О сайте — Engati — одна из лучших бесплатных платформ чат-ботов для создания ботов за считанные минуты без программирования.Создавайте один раз и публикуйте на 8 основных платформах — FB messenger, kik, telegram, line, viber, skype, slack и на сайте. Этот блог дает информацию о том же. Частота 30 сообщений / год С — март 2017 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

9. RSS-канал блога Verloop

Бангалор, Карнатака, Индия RSS-канал — blog.verloop.io/feed Сайт — blog.verloop.io О сайте — Verloop Musings on SaaS, Conversational Marketing и все, что касается Startup.Боты Verloop всегда активны, персонализированы и обеспечивают постоянный опыт посетителей. Позвольте нашим ботам генерировать больше потенциальных клиентов, повышать конверсию и отвечать на запросы службы поддержки 24×7. Частота 14 сообщений / год Последние сообщения ⋅ Получить адрес электронной почты

10. RSS-канал BotMyWork

Индия RSS-канал — botmywork.com/blog/feed Сайт — botmywork.com/blog О сайте — Организуйте, автоматизируйте и управляйте своей работой с легкостью с помощью Botmywork.Единая платформа для управления проектами и задачами. Интеграция с такими инструментами, как Slack, Workplace, Messenger, Hangouts Chat Частота 2 сообщения в квартал Просмотр последних сообщений ⋅ Получить адрес электронной почты

11. Kore.ai RSS Feed

Орландо, Флорида, США RSS-канал — blog.kore.ai/rss.xml Сайт — blog.kore.ai О сайте — Kore. ai — это поставщик корпоративного программного обеспечения, предлагающий все необходимое. одна платформа чат-ботов (как услуга) и передовые интеллектуальные технологии, позволяющие предприятиям создавать и развертывать готовых или полностью настраиваемых чат-ботов для своих клиентов и сотрудников. Частота 1 сообщение / квартал С — март 2016 г. Просмотреть последние сообщения ⋅ Получить адрес электронной почты

12. RSS-канал BotPenguin

Чикаго, Иллинойс, США RSS-канал — botpenguin.com/feed Сайт — botpenguin.com/blog О сайте — BotPenguin — это бесплатный создатель чат-ботов на базе искусственного интеллекта для веб-сайтов и мессенджеров FB. Создайте своего собственного чат-бота для веб-сайта, чтобы мгновенно генерировать потенциальных клиентов, назначать встречи и отвечать на запросы клиентов.Следите за блогом, чтобы узнать о нас больше. Частота 1 сообщение / день С — май 2019 г. Просмотреть последние сообщения ⋅ Получить адрес электронной почты

13. RSS-канал Maruti Techlabs

Ахмедабад, Гуджарат, Индия RSS Feed — marutitech.com/feed Сайт — marutitech.com/blog О сайте — Команда Maruti Techlabs делится своими идеями и советами по разработке чат-ботов, AI, аналитике больших данных, Машинное обучение, разработка мобильных и веб-приложений. Частота 4 сообщения / квартал Последние сообщения ⋅ Получить адрес электронной почты

14. Искусственные решения RSS Feed

Барселона RSS-канал — искусственный-solutions.com/feed Сайт — искусственный-solutions.com/blog О сайте — С нашей диалоговой платформой искусственного интеллекта для предприятий — Teneo, вы можете привлекать своих клиентов через любой канал, устройство или услуга на любом языке и в любом месте. Частота 1 сообщение в неделю Просмотр последних сообщений ⋅ Получить адрес электронной почты

15.RSS-канал блога Inbenta

Сан-Матео, Калифорния, США RSS-канал — inbenta.com/en/blog/feed Сайт — inbenta.com/en/blog О сайте — Inbenta — лидер в области обработки естественного языка и искусственного интеллекта для поддержки клиентов, электронной коммерции и разговорных чат-ботов, предоставляя простое в развертывании решение, которое повышает удовлетворенность клиентов, снижает расходы на поддержку и увеличивает доход. Частота 2 сообщения / квартал С — Январь 2009 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

16.RSS-канал BotsCrew

Лондон, Англия, Великобритания RSS Feed — botscrew.com/feed Сайт — botscrew.com/blog О сайте — BotsCrew — мировой лидер в разработке чат-ботов с офисами, расположенными в Лондоне, Англии и Львове. Украина. В этом блоге рассказывается о его развитии и применении в различных областях. Частота 2 сообщения / месяц Последние сообщения ⋅ Получить адрес электронной почты

17. ubisend — Ваш чат-бот и ресурс для мобильных сообщений RSS Feed

Норвич, Англия, Великобритания RSS Feed — блог.ubisend.com/discover-ch .. Сайт — blog.ubisend.com О сайте — Узнайте все о чат-ботах, диалоговой коммерции и искусственном интеллекте через лучший в отрасли контент. Частота 1 сообщение / месяц Последние сообщения ⋅ Получить адрес электронной почты

18. Снимки RSS-канала

Нью-Йорк, США RSS-канал — snaps.io/blog?format=rss Сайт — snaps.io/blog О сайте — Snaps помогает таким брендам, как Nike, Marriott, VICE и другие, привлекать новых клиентов, увеличить LTV и сократить расходы на обслуживание клиентов с помощью автоматического чата. В этом блоге рассказывается о бренд-маркетинге с помощью чат-ботов. Частота 1 сообщение / месяц Последние сообщения ⋅ Получить адрес электронной почты

19. Chatimize RSS Feed

Нидерланды RSS Feed — chatimize.com/feed Сайт — chatimize.com/blog О сайте — Chatimize — это блог, в котором рассказывается о ценности чат-ботов, о том, что они из себя представляют, как их создавать, какое программное обеспечение использовать использование и многое другое. Частота 1 сообщение в неделю Просмотр последних сообщений ⋅ Получить адрес электронной почты

20.RSS-канал блога BotXO

Копенгаген, Ховедстаден, Дания RSS-канал — botxo.ai/feed Сайт — botxo.ai/en/blog О сайте — Добро пожаловать на канал обмена новостями и знаниями BotXO. Новости технологий и бизнеса были посвящены искусственному интеллекту и чат-ботам. Ознакомьтесь с нашими последними сообщениями в блоге здесь! Частота 10 сообщений / год Последние сообщения ⋅ Получить адрес электронной почты

21. RSS-канал корпоративных ботов

Цюрих, Швейцария RSS Feed — блог.enterprisebot.ai/feed Сайт — blog.enterprisebot.ai О сайте — Мы создаем чат-ботов на основе искусственного интеллекта и ботов электронной почты для автоматизации взаимодействия с клиентами и предоставления предприятиям легкодоступного цифрового агента. Частота 18 сообщений / квартал С — февраль 2020 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

22. RSS-канал блога Growthbot

Кембридж, Массачусетс, США RSS Feed — blog.growthbot.org/rss.xml Сайт — blog.growthbot.org О сайте — Growthbot — это чат-бот по продажам и маркетингу, откуда вы можете получить все свои ответы. Этот блог дает информацию о том же. Просмотр последних сообщений ⋅ Получить адрес электронной почты

23. RSS-канал блога PragnaKalp

Ахмедабад, Гуджарат, Индия RSS Feed — pragnakalp.com/blog/feed Сайт — pragnakalp.com/blog О сайте — В Pragnakalp мы разрабатываем передовые решения с использованием новейших технологий.Машинное обучение, обработка естественного языка (NLP), чат-боты и разработка Python. Частота 1 сообщение / месяц С — Август 2018 Просмотр последних сообщений ⋅ Получить адрес электронной почты

24. SmartBot360 Blog RSS Feed

RSS-канал — smartbot360.com/blog?format=rss Сайт — smartbot360.com/blog О сайте — Smartbot360 — Вовлечение пациентов и конверсия с помощью чат-ботов на базе искусственного интеллекта. Блог о чат-ботах в сфере здравоохранения, охватывающий как технические, так и практические вопросы, такие как соответствие требованиям HIPAA, искусственный интеллект, конверсия пациентов, передовой опыт и взаимодействие с пациентами. Частота 1 сообщение в неделю Просмотр последних сообщений ⋅ Получить адрес электронной почты

25. Кузница BOT | новости, лучшие практики об искусственном интеллекте и чат-ботах RSS Feed

Aylesbury, England, United Kingdom RSS Feed — thebotforge.io/feed Сайт — thebotforge.io/blog О сайте — Добро пожаловать в блог нашей команды. BOT Forge — британские разработчики чат-ботов и специалисты по ИИ. Мы проектируем, строим и разрабатываем интеллектуальных чат-ботов. Узнайте о лучших практиках, идеях и новостях, связанных с ИИ, от команды BOT Forge! Частота 1 сообщение в неделю С — ноябрь 2017 г. Просмотреть последние сообщения ⋅ Получить адрес электронной почты

26.Живой актер RSS Feed

США RSS-канал — enterprise.livingactor.com/feed Сайт — enterprise. livingactor.com/blog О сайте — Living Actor — компания, специализирующаяся на чат-ботах, виртуальных помощниках и технологиях трехмерных аватаров. В этом блоге есть информация о том же. Частота 1 сообщение / день С — февраль 2011 г. Просмотр последних сообщений ⋅ Получить адрес электронной почты

27. Дружественный агент-бот RSS-канал

Коннектикут, США RSS Feed — friendlyagentbot.com / blog / feed Сайт — friendlyagentbot.com/blog О сайте — Найдите информацию о дружелюбном боте в этом блоге, поскольку он помогает в страховой индустрии, обслуживает клиентов и экспоненциально расширяет ваш бизнес. Частота 1 сообщение в неделю С — октябрь 2017 г. Просмотр последних сообщений ⋅ Получить адрес электронной почты

28. Ресиме | Блог по созданию и разработке чат-ботов RSS-канал

Сан-Франциско, Калифорния, США RSS Feed — блог. recime.io/feed Сайт — blog.recime.io О сайте — Recime — это платформа корпоративного чат-бота. Найдите объявления о продуктах, обновления функций, советы и технические сообщения по созданию чат-ботов. Частота 2 сообщения / квартал С — апр 2017 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

29. RSS-канал Noodle Factory

Сингапур RSS-канал — article.noodlefactory.ai/rs .. Сайт — article.noodlefactory.ai О сайте — Получите статьи, которые необходимо прочитать любым менеджерам, включая новых менеджеров и опытных менеджеров.Они охватывают широкий круг тем, включая искусственный интеллект, чат-боты, пользовательский опыт, качество обслуживания клиентов, будущее работы и многое другое. Частота 1 сообщение в неделю Просмотр последних сообщений ⋅ Получить адрес электронной почты

30. RSS-канал BOTfriends

Германия RSS Feed — botfriends.de/feed Сайт — botfriends.de/blog О сайте — Мы специализируемся на разработке и проектировании диалоговых интерфейсов. Мы специализируемся на программировании чат-ботов на нескольких платформах, таких как Facebook Messenger, Skype, веб-сайты и т. Д. Частота 3 сообщения / квартал С — декабрь 2017 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

31. RSS-канал блога Tangowork

Британская Колумбия, Канада RSS-канал — tangowork.com/feed Сайт — tangowork.com/blog О сайте — Tangowork — это консалтинговая компания в области цифровых рабочих мест, специализирующаяся на чат-ботах и ​​интранетах. Вы начинаете проект корпоративного чат-бота? Новый корпоративный интранет? Или усовершенствованная система политик и процедур? Наш блог поможет вам начать работу. Частота 1 сообщение / месяц С — июн 2016 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

32. RSS-канал Chatamo

Лондон, Англия, Великобритания RSS-канал — chatamo.com/blog/feed Сайт — chatamo.com/blog О сайте — С Chatamo вы можете бесплатно создавать ботов для интеллектуальных голосовых и чат-ботов для маркетинга , продажа и поддержка за считанные минуты. Этот блог дает информацию о том же. Просмотр последних сообщений ⋅ Получить адрес электронной почты

33.Bot Llibre! RSS-поток

Оттава, Онтарио, Канада RSS Feed — botlibre.blogspot.com/feeds/ .. Сайт — botlibre.blogspot.com О сайте — Bot Libre — это бесплатная открытая платформа для ботов и искусственного интеллекта для Интернет, мобильные устройства и социальные сети. Частота 5 сообщений / квартал С — октябрь 2013 г. Просмотреть последние сообщения ⋅ Получить адрес электронной почты

34. Recast.AI | RSS-канал для совместной работы ботов

Вальдорф, Баден-Вюртемберг, Германия RSS Feed — cai.tools.sap/blog/feed Сайт — cai.tools.sap/blog О сайте — Узнайте о наших последних новостях NLU, UX, DevOps и бизнеса в нашем блоге. Мы фокусируемся на понимании вводимых пользователем данных, чтобы помочь вам создавать приложения на основе интеллектуального диалога. Частота 2 сообщения / квартал С — Ноябрь 2015 Просмотреть последние сообщения Email Получить адрес электронной почты

35. Учебное пособие по работе с чат-ботом RSS-канал

США RSS Feed — chatbottutorial.com/blog/feed Сайт — chatbottutorial. com / blog О сайте — Советы и тактика, которые помогут вам создать привлекательных чат-ботов без программирования. Найдите тематические исследования, маркетинг в мессенджерах и многое другое. Частота 2 сообщения / год С — март 2017 Просмотреть последние сообщения ⋅ Получить адрес электронной почты

36. ebo | Человеческие разговоры, автоматизированные | RSS-канал блога чат-бота

Мальта RSS-канал — ebo.ai/blog/feed Сайт — ebo.ai/blog О сайте — Узнайте все, что вам нужно знать о чат-ботах, искусственном интеллекте и интеллектуальном дизайне бесед, из этого блога.Просмотр последних сообщений ⋅ Получить адрес электронной почты

37. Блог о ботанике | Разговорная аналитика для ботов RSS Feed

Сан-Франциско, Калифорния, США RSS-канал — botanalytics.co/blog/feed Сайт — botanalytics. co/blog О сайте — Ботаналитика — это инструмент диалоговой аналитики для ботов. Это помогает создателям ботов улучшить взаимодействие между людьми, выявляя узкие места, сегментируя разговоры и пользователей и измеряя вовлеченность.Просмотр последних сообщений ⋅ Получить адрес электронной почты

github.com/0x111/telegram-rss-bot Модуль Go — JFrog GoCenter

телеграмма-rss-bot

Введение

Это еще один бот для телеграмм для использования с RSS-потоками.

Первые шаги

Чтобы использовать это, вам сначала нужно зарегистрировать бота Telegram, прочитав документацию: https://core.telegram.org/bots#3-how-do-i-create-a-bot

Для работы этого бота вам понадобится токен, который разрешает вам использовать телеграмму api.

Первый запуск

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

Конфигурация

Переименуйте bot-config. sample.json в bot-config.json .

Вы можете поместить файл конфигурации в текущую папку, в которой находится двоичный файл, или поместить его в эту папку, если он создан $ HOME / .telegram-rss-bot , приложение должно найти его и здесь, если вы хотите иметь фиксированное расположение для ваших файлов конфигурации.

  {
  "telegram_auth_key": "токен",
  "миграции": "v1",
  "telegram_api_debug": ложь,
  "db_path": "./bot.db",
  "log_level": "информация",
  "feed_parse_amount": 5,
  "feed_post_amount": 2,
  "feed_updates_interval": 600,
  "feed_posts_interval": 400
}
  
  • telegram_auth_key: токен, который вы получили при регистрации бота.
  • Миграции

  • : это будет использоваться в основном в будущем, чтобы определить, какую миграцию выполнять (это может измениться)
  • telegram_api_debug: если он включен, вы увидите отладочные сообщения из api телеграммы на свой стандартный вывод
  • db_path: содержит путь к файлу db, если он не существует, он будет создан, если у приложения будет разрешение на это
  • log_level: с его помощью вы можете установить уровень журнала для отображения, приложение использует logrus для ведения журнала, поэтому он принимает все значения с этого URL-адреса https: // github. com / sirupsen / logrus # регистрация уровня
  • feed_parse_amount: представляет количество элементов фида, которое должно быть проанализировано из предоставленного URL-адреса фида (например, если вы предоставляете URL-адрес, в котором содержится 10 элементов, то в нашей базе данных будут сохранены только 5 последних, вы можете изменить это значение при необходимости)
  • feed_post_amount: представляет количество проанализированных данных фида, которое должно быть отправлено в соответствующие каналы (например, если вы установите это значение 2, бот будет публиковать каждые $ feed_posts_interval только 2 записи, вы можете изменить значение при необходимости)
  • feed_updates_interval: это интервал, с которым каналы, сохраненные в базе данных, должны обновляться в секундах (60 = 60 секунд и так далее).
  • feed_posts_interval: это интервал, с которым каналы должны быть отправлены на соответствующие каналы в секундах (60 = 60 секунд и т. Д.).
Поддержка Docker

Вы также можете запустить это приложение как докер-контейнер.

Докер-хаб

Вытащить официальный образ докера

  docker pullless / телеграмма-rss-бот
  
Сборка из исходников

Выполните следующие шаги:

  git clone https://github.com/0x111/telegram-rss-bot
docker build -t телеграмма-rss-bot: последний.
docker run --name telegram-rss-bot -e TELEGRAM_AUTH_KEY = "MY-TOKEN" -d telegram-rss-bot: latest
  
Важно

Advisory: вы должны соблюдать ограничение скорости API Telegram (Подробнее об этом: https: // core.telegram.org/bots/faq#my-bot-is-hitting-limits-how-do-i-avoid-this)

Не стесняйтесь открывать PR, если вы обнаружите какие-то ошибки или есть улучшения (я уверен, что их может быть много :))

Если вы обнаружите ошибки, но не знаете, как их исправить, откройте проблему с подробным описанием того, как воспроизвести ошибку.

способов создать бота Telegram на RSS

Мессенджер Telegram предоставляет платформу для разработки и работы специальных программ-помощников. Широкий набор функций, простота использования и безопасность — основные причины большого количества этих программ.

Зачем нужны боты

Слово «бот» — это сокращение от «робот». Это необходимо для автоматизации работы с различными интернет-сервисами. Он может заниматься поиском в Интернете и скачиванием необходимой информации, отвечать на вопросы подписчиков, вести рекламную рассылку, публиковать посты на канале (менеджер каналов) или даже ретушировать отправленные фотографии.

Как ими пользоваться?

Взаимодействие происходит через чат. Подписчик дает команды помощников, на которые он отвечает действиями, заложенными в его коде разработчиком. Если команды нет, то помощник либо выдает системную ошибку, либо разумно заявляет, что не знает, чего от него хотят.

Категории ботов

Telegram-бот на RSS.

Можно очень обобщенно систематизировать помощников.

Условно делятся на:

  • Информаторы. Требуется для поиска и доведения до пользователя информации (новости, последние комментарии, публикации).
  • Помощники. Дополняют веб-службы.
  • Чаты. Отвечает на сообщения пользователей или может выступать в качестве посредников при общении с другими пользователями.
  • Игры.

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

Платформа для разработчиков роботов в мессенджере также позволяет использовать RSS Telegram. Используя RSS-бота Telegram, вы можете собирать новости со многих ресурсов в своем мессенджере.

Для написания помощника на RSS-каналах Telegram можно использовать @BotFather. Найдя его и открыв, нужно приступить к работе с командой / start. Затем выберите действие / новый бот и придумайте имя с окончанием бота.

Вы можете создать RSS-бота для Telegram с помощью официального конструктора Manybot.

Алгоритм следующий:

  • Конструктор бега.
  • Введите команду для создания новой программы / addbot. Manybot отправит список действий: зайдите в Botfather, введите команду newbot и придумайте имя. Вам будет предоставлен токен Api, который нужно отправить в чат с Manybot.
  • На вопрос дизайнера, что должен делать робот, ответьте: «Отправляет статьи, которые появляются на .. (название сайта)».

Что делать, если бот не работает?

Если сгенерированный бот RSS Telegram не работает, то, вероятно, произошла системная ошибка в программе дизайнера.Поэтому вы можете попробовать создать помощника еще раз или обратиться в службу поддержки.

выводы

Роботы — один из самых гибких и функциональных инструментов мессенджера Telegram. С их помощью можно сэкономить время, доверив им выполнение рутинных задач.

Telegram RSS-бот для получения обновлений RSS-канала в Telegram Messenger

Рейтинги пользователей:

[Всего: 1 Среднее: 1/5]

NodeRSSBot — это бесплатный RSS-бот Telegram для получения обновлений RSS-канала в мессенджере Telegram .Этот бот позволяет вам подписаться на RSS-канал различных веб-сайтов и блогов, а затем регулярно получать обновления. Он обновляет ваши подписки через фиксированный интервал времени и показывает вам обновления. Вам просто нужно указать URL-адрес RSS-канала веб-сайтов или услуг, на которые вы хотите подписаться. Вы можете подписаться на любое количество веб-сайтов, и он будет получать обновления для вас. Он поддерживает различные команды для аудита вашей подписки, добавления новой подписки и удаления существующих.

Если вы используете RSS-каналы и программы для чтения каналов на своем мобильном телефоне, они вам не нужны, если вы также используете Telegram.Вы можете просто подписаться на RSS-канал любого веб-сайта с помощью упомянутого здесь RSS-бота. Этот бот поддерживает несколько языков, и есть очень простые команды для управления им. Все, что вам нужно сделать, это добавить этого бота, а затем начать добавлять веб-сайты, с которых вы хотите получать обновления. Вы всегда можете удалить подписку, когда захотите, и даже остановить бота из Telegram.

Как получать обновления RSS-канала в Telegram Messenger?

Получить обновления RSS-канала в Telegram очень просто.Вы добавляете бот NodeRSS отсюда, а затем просто запускаете его. Если вы хотите самостоятельно разместить его, настроив несколько вещей, вы можете получить его исходный код. Это Telegram-бот с открытым исходным кодом, и все технические подробности доступны на его странице GitHub.

Изначально бот был на китайском языке, но вы можете легко это изменить. Вы просто отправляете команду «/ lang» в чате бота, а затем можете просто дважды щелкнуть / нажать на язык, который хотите применить.

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

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

  • / rss — Показать подписки.
  • / unsub — Отказаться от подписки на RSS: / unsub http://test.com/testfeed.xml .
  • / unsubthis — Ответьте на сообщение из RSS-канала, чтобы отписаться от него.
  • / allunsub — Отписаться от всех лент.
  • / export — Экспорт подписок в файл opml.
  • / viewall — Просмотр всех подписок и количества подписчиков, которые необходимо включить в настройках.
  • / import — Ответьте на это сообщение opml-файлом для импорта.

Это все об этом боте Telegram RSS, который вы можете использовать для получения обновлений RSS-канала. Просто добавьте бота, добавьте свои подписки и начните получать обновления в Telegram. Однако есть один недостаток, который я вижу в том, что он не создает предварительный просмотр ссылок в новых обновлениях. Это просто название нового обновления, и вам нужно будет явно проверить новое обновление, перейдя по ссылке.

Связанное сообщение : Как создавать RSS-каналы с помощью Telegram

Заключительные мысли

Для любителей RSS это отличный бот для получения уведомлений о новых сообщениях и обновлениях из ваших любимых блогов и сервисов. Просто добавьте этого бота в свой аккаунт Telegram и начните получать обновления. Итак, если вы хотите получать обновления RSS-канала в Telegram, вы можете использовать этого бота. И когда вы больше не хотите этим пользоваться, просто удалите бота или удалите все подписки.

Как создать своего первого бота Telegram: руководство для абсолютных новичков | Процессная улица

Я был одержим научной фантастикой с подросткового возраста, поэтому программирование всегда нравилось мне.Я был очарован идеей, что можно написать программу, которая ведет себя случайным образом — для меня это уже было глубоко в области научной фантастики!

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

Ничего особенного. Я вряд ли мастер-программист, и вам не обязательно им быть. Имея базовые знания в области программирования и API, вы можете создавать действительно полезные программы для удовольствия и получения прибыли.В этом руководстве мы рассмотрим создание бота Telegram с нуля.

Бот Telegram можно использовать с Intercom API, чтобы агенты службы поддержки могли связаться со своими клиентами, использующими Telegram. Он также может включать автоматизацию, которая объединяет полезные ресурсы с живым чатом, как в примере ниже от orat.io:

Telegram — отличный дом для ботов, ориентированных на клиентов, с более чем 200000000 активных пользователей в месяц и годовым темпом роста 50%. Это платформа, которую ваша аудитория уже может использовать, что снижает трение и способствует принятию.Кроме того, создавать ботов для Telegram очень просто — это самый простой способ создания ботов, который у меня когда-либо был.

Вот почему я решил написать это руководство — оно могло бы стать хорошей отправной точкой для начинающих программистов, ищущих что-то мгновенно стоящее (и потенциально ценное), используя популярную и функциональную платформу.

Первый бот, который я сделал для Telegram, использовал RSS для поиска материалов Hacker News, соответствующих поисковому запросу:

Поиграйте с ботом — он здесь!

Используя знания из этого руководства и немного продолжая чтение, вы можете создать чат-бота поддержки для своей компании, программу чтения RSS-каналов, панель управления для своего умного дома или бота, который будет отвечать, используя только цитаты Шекспира.Маленькие программные проекты, подобные этому, очень интересны и бесконечно расширяемы. Чем больше вы читаете и придумываете функции, тем дальше вы сможете продвинуть своего бота.

Из этого руководства вы узнаете:

  • Как написать Telegram-бота с нуля
  • Как добавлять новые команды в словарь бота
  • Основные команды терминала для создания файлов и навигации по папкам
  • Немного о языке программирования Ruby
  • Как расширить Ruby с помощью драгоценных камней
  • Как заставить вашего бота возвращать случайные ответы из списка
  • Несколько простых команд git, которые помогут вам управлять файлами кода и передавать их
  • Как установить бота на сервер и запускать его круглосуточно

Перед запуском вам потребуется:

  • Терминал bash. Поставляется в комплекте с macOS и Linux, но не с большинством версий Windows. Если вы следуете этому руководству на компьютере с Windows, на котором нет юбилейного обновления Windows 10, вы можете использовать эмулятор или эмулировать Linux на виртуальной машине.
  • Рубин. Обратитесь к официальной документации Ruby за руководствами по ОС. Я лично использую Homebrew на macOS, но пользователи Windows могут установить его с помощью этого инструмента.
  • Упаковщик. Bundler помогает управлять драгоценными камнями Ruby, которые добавляют дополнительные функции вашим приложениям.Он понадобится вам для добавления интерфейса к Telegram API вашему боту. Просто запустите gem install bundler в своем терминале, чтобы установить его.
  • Текстовый редактор. Теоретически можно использовать Блокнот или TextEdit, но большинство из них порекомендуют специальный редактор, такой как Atom, который выделяет синтаксис и помогает сделать ошибки кода более очевидными.

Итак, приступим.

Шаг 1. Загрузите приложение Telegram для рабочего стола

Telegram — это преимущественно мобильное приложение, но в целях разработки вы захотите установить его на том же компьютере, который вы используете для написания кода.Таким образом, вы можете быстро протестировать его, не разблокируя телефон каждый раз. И вы сможете скопировать и вставить ключ API своего бота Telegram прямо в текстовый редактор.

Пора взять ключ API!

Шаг 2. Пообщайтесь с BotFather, чтобы получить ключ API

Создание бота Telegram — новый процесс, потому что большая часть его сосредоточена вокруг вашего собственного взаимодействия с ботом Telegram. Этот бот называется BotFather. В настольном приложении Telegram вам нужно найти его имя пользователя и начать с ним разговор.

Дайте команду запуска BotFather, набрав / start .

Вы увидите список команд, которые помогут вам создавать, редактировать и управлять ботами. Поскольку это ваш первый раз, вам понадобится / newbot .

По сравнению с процессом создания бота Twitter, бота Mastodon или любого другого бота, с которым я экспериментировал, Telegram упрощает первоначальную настройку super . Думаю, это доказывает, каким замечательным инструментом могут быть боты Telegram!

После подачи команды / newbot вы можете выбрать имя и имя пользователя для своего бота.Имя — это то, что ваши пользователи будут видеть в списке контактов бота, а имя пользователя — это то, как они его найдут. Думайте об имени пользователя как о дескрипторе Twitter; он должен быть уникальным, и лучше всего, если он будет коротким и запоминающимся.

После этого вам будет предоставлен ключ API вашего бота. Ключ API — это то, как Telegram узнает, что код, который вы пишете, связан с этим конкретным ботом. У каждого бота есть собственный ключ API, и вы не должны делиться им с кем-либо, иначе они могут захватить вашего бота и заставить его совершить свои злые дела.

На этом наш чат с BotFather завершен — по коду!

Шаг 3. Настройка гемов и каталога бота

Откройте терминал и выполните mkdir telegram-bot . Это создает новый каталог для файлов вашего бота. Лучше всего хранить их в одной папке, чтобы ими было легко управлять. Перейдите в каталог с cd telegram-bot , а затем сделайте следующее:

touch Gemfile
touch bot.rb
atom.

Это создает два пустых файла: один для указания необходимых драгоценных камней, а второй — для размещения кода бота.Последняя команда открывает оба этих файла в Atom.

Щелкните Gemfile на боковой панели Atom и вставьте следующее:

 источник 'https://rubygems.org'
жемчужина 'telegram_bot' 

Это указывает Bundler захватить интерфейс Ruby к API Telegram с rubygems.org.

Чтобы завершить настройку драгоценного камня, вернитесь к своему терминалу и введите bundle . Вот что вы должны увидеть:

Это все, что нужно для настройки гема, теперь мы, наконец, переходим к коду.

Кодирование вашего первого бота Telegram

Фактический код, который будет постоянно работать на сервере, находится внутри bot.rb. Сейчас он пуст, но здесь мы собираемся связать гем Telegram, который мы только что собрали, и создать бота.

Это не так уж и много кода. Когда вы закончите, у вас будет

.

В Telegram это то, что делает код выше:

Давайте посмотрим, что делает каждая часть кода, и напишем это по ходу дела.

 требуется telegram_bot
token = 'ТОКЕН'
bot = TelegramBot.new (токен: токен) 

(замените ТОКЕН на токен API, который вы скопировали из BotFather)

Ruby позволяет легко угадать, что будет делать код. Три строки выше добавляют функциональность бота Telegram к вашему файлу, а затем создают новый объект бота из класса TelegramBot, аутентифицированный с помощью вашего токена, чтобы программа знала, куда отправлять данные.

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

 bot.get_updates (fail_silently: true) do | message | сообщение |
  помещает "@ # {message.from.username}: # {message.text}"
  command = message.get_command_for (бот)

  сообщение.ответ сделать | ответить |
    case команда
    когда / start / i
      reply.text = "Все, что я могу сделать, это поздороваться. Попробуйте команду / greet."
    когда / приветствую / я
      reply.text = "Здравствуйте, # {message.from.first_name}. 🤖"
    еще
      reply.text = "Понятия не имею, что означает # {command.inspect}."
    конец
    ставит "отправка # {ответ.text.inspect} на @ # {message.from.username} "
    reply.send_with (бот)
  конец
конец 

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

Ответные действия бота хранятся в операторе case. Входные данные оператора case проходят через переменную message после того, как они были очищены методом gem’а get_command_for .Текст ответа бота устанавливается в зависимости от сохраненной команды, а затем, наконец, отправляется с send_with до перезапуска цикла.

Теперь вы можете найти своего бота в Telegram, отправить команды / start и / greet и посмотреть, как он работает.

Для этого сохраните изменения в Atom и запустите в терминале ruby ​​bot.rb . Пока этот терминал открыт и работает, ваш бот будет отправлять ответы!

Настройка вашего нового блестящего бота

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

Части, на которые следует обратить внимание при настройке, — это строки when / command / i и текст между кавычками в строках reply.txt . Это входные данные, которые принимает ваш бот, и сообщения, которые он отправляет в качестве ответов.

Итак, если вы хотите сказать что-то другое в ответ на команду / greet , вы должны изменить значение reply.text под командной строкой greet (, когда / greet / i ).Вот вариант, который вы можете попробовать:

 когда / приветствовать / i
      greetings = ['bonjour', 'hola', 'hallo', 'sveiki', 'namaste', 'salaam', 'szia', 'halo', 'ciao']
      reply.text = "# {greetings.sample.capitalize}, # {message.from.first_name}!"
 

Здесь я создал массив с несколькими разными способами поздороваться, а затем произвольно добавил один к сообщению, используя метод sample.

Превратите своего бота в нечто классное

Вы можете добавить к своему боту столько команд, ответов и функций, сколько захотите.По большей части это воображение и много поисков в Google. Если вы хотите научиться многому, что применимо к этому боту, начните с изучения Ruby на сложном уровне, чтобы разобраться в основах языка. Немного попрактиковавшись и положившись на StackOverflow, вы сможете:

  • Подключите другие API, чтобы получать данные из таких источников, как Airtable, Slack, RSS или Twitter. Вот где появляется действительно интересная функциональность — вы можете создать бота, который действует как диалоговый интерфейс для набора данных или функций, например, бота, который возвращает результаты поиска из Twitter или сообщения в Slack.
  • Сохранение пользовательского ввода в базе данных. Вы можете создать бота Telegram, который предлагает автоматическую поддержку пользователям или отвечает на запросы, а также хранит их адреса электронной почты в базе данных. Гем Sequel упрощает создание, запись, редактирование и чтение баз данных.
  • Создайте текстовое приключение. Colossal Cave Adventure, одна из первых игр для терминалов, была перенесена в Telegram в качестве бота. Проверьте это здесь и посмотрите источник здесь.

Если вам нужно вдохновение, вы можете прочитать исходный код ботов других людей и проверить список ботов Telegram — попробуйте выяснить, как они работают, и воссоздайте их на практике.

Запуск вашего бота 24/7

Прямо сейчас ваш бот работает в вашем терминале на вашем компьютере. Это нормально, пока вам не понадобится перезагрузить компьютер, когда у вас не отключится Wi-Fi или компьютер не перейдет в спящий режим. Когда это происходит, он завершает работу бота, и пользователи не получают от него ответа.

Процесс перемещения вашего бота из среды разработки (ваш компьютер, на котором вы использовали Atom для написания бота) в производственную среду (сервер) известен как развертывание.Есть несколько вариантов развертывания бота, но в обоих случаях мы начнем с загрузки файлов в Bitbucket. Bitbucket позволяет использовать git, систему контроля версий, которая помогает безопасно вносить и отслеживать изменения в коде вашего бота. Загрузив файлы своего бота в Bitbucket, вы можете использовать Bitbucket как способ получить файлы бота, когда вы вошли в систему.

Зарегистрируйтесь в Bitbucket и создайте новый репозиторий.

При открытом терминале и в том же каталоге, что и исходный код вашего бота, введите следующее:

git init
git add.
git commit -m 'начальная фиксация'

Теперь следуйте инструкциям Bitbucket после создания нового репозитория. Мои:

После ввода этих двух выделенных команд в моем терминале и предоставления моего пароля Bitbucket по запросу файлы загружаются. Поскольку ваш код находится в облаке, пора выбрать способ развертывания.

Развертывание с Raspberry Pi

На этом маленьком компьютере Raspberry Pi на моем столе находится куча ботов.

Raspberry Pi — отличное вложение, если вы планируете создавать и развертывать ботов — вы можете получить его всего за 7 долларов плюс стоимость SD-карты.Он потребляет очень мало энергии, поэтому вы можете держать его постоянно включенным и не беспокоиться о стоимости. Может возникнуть соблазн купить комплект с клавиатурой, мышью и футляром, но все, что вам нужно, это зарядное устройство USB, SD-карта, кабель Ethernet и сам компьютер. Вероятно, большинство из этих вещей уже есть в вашем офисе.

Развертывание с облачным сервером

Вам не обязательно быть владельцем компьютера, на котором работает ваш бот, вы можете использовать память и мощность чужой машины для удаленного запуска бота.Популярные решения для развертывания в облаке включают Amazon Web Services (AWS), DigitalOcean и Heroku.

Из трех самых начальных уровней — DigitalOcean и Heroku. Щелкните здесь, чтобы получить учетную запись DigitalOcean с 10 долларами на счете — этого достаточно, чтобы запустить сервер в течение двух месяцев, пока вы его тестируете.

Когда вы зарегистрируетесь в DigitalOcean и создадите новую дроплет, вы узнаете, как подключиться к серверу через SSH и запустить консоль.

Отсюда это тот же процесс, что и на локальном компьютере, независимо от того, какой сервер вы используете.В конце концов, это всего лишь терминал bash. После настройки какого-то сервера давайте перейдем к фактическому развертыванию.

Процесс развертывания

На новом сервере — будь то Raspberry Pi или облачный сервер, такой как Digital Ocean — вам потребуется установить Ruby, Bundler и Git:

sudo apt-get update
sudo apt-get upgrade
curl -L https://get.rvm.io | bash -s stable --ruby
sudo apt-get install bundler
sudo apt-get install git

Затем создайте новый каталог для своего бота, перейдите в него и загрузите файлы из Bitbucket с помощью следующих команд:

ботов mkdir
ботов cd
git clone https: // [электронная почта защищена] / benjbrandall / telegram-bot.git

Не забудьте заменить указанный выше URL (https: // benjbran…) на URL-адрес репозитория вашего бота на Bitbucket. Вы найдете всю команду клонирования через Bitbucket, поэтому вам не придется делать это вручную.

Затем введите bundle , чтобы установить зависимости гема, а затем ruby ​​bot.rb , чтобы запустить бота постоянно.

Примечание. Если вы подключаетесь к серверу через SSH, вам необходимо запустить бот с помощью робота nohup ruby.rb & , чтобы бот не прекращал работу после завершения сеанса SSH. Теперь вы можете закрыть окно терминала, зная, что ваш бот тихонько издает звуковой сигнал в фоновом режиме. 🤖

На этом ваш первый удар по боту Telegram завершен. Попутно вы узнали о терминале, Ruby, драгоценных камнях, API Telegram и о том, как развернуть бота на сервере. Есть вопросы или предложения? Вы можете написать мне в Twitter.

.