Получение данных от бота Telegram


Механизм взаимодействия БИТ.ФИНАНС и бота Telegram предназначен для отправки данных информационного характера по запросу в Telegram. Для работы данного механизма и отображения раздела в интерфейсе необходимо включить константу «Использовать Telegram» в Константы (БИТ) на закладке «Интеграция».


После включения константы, появится новый раздел «Telegram», в котором расположены объекты, использующиеся в данном механизме. Для настройки данного механизма пользователю необходимо иметь роль - Администратор оповещений Telegram (кроме пользователей, имеющих полные права).

2024-04-05_13-31-04

Справочник «Боты Telegram»

В справочнике «Боты Telegram» реализовано свойство – «Нужен пин-код» и само значение «Пин-код», которые необходимы для того, чтобы отсечь не нужных пользователей, которые могут запросить регистрацию у вашего бота.


2024-04-05_13-25-15

Также есть возможность настройки прокси соединения:


Подробнее о данном справочнике и о том, как создавать своего бота, получить токен и т.д. описано в разделе руководства пользователя «Оповещения в Telegram».


Справочник «Чаты Telegram»

В справочнике реализовано:

  • «Статус регистрации» - отображает статус регистрации данного чата для получения информации от основного бота. Возможные значения: Ожидает регистрации, Запрещено взаимодействие, Разрешено взаимодействие. Все новые чаты появляются со значением «Ожидает регистрации», далее администратору необходимо либо разрешить, либо запретить взаимодействие данного чата. Про оповещения администратора о новых регистрациях подробнее в «Чаты для оповещений».

  • «Доступные команды» - табличная часть с командами основному боту Telegram, которые доступны данному чату. 


2024-04-05_13-27-10


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


Регистр сведений «Чаты для оповещений»

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



Чат может попросить о помощи посредством команды /help, Telegram также задаст вопрос желаете ли вы поделиться своим контактом для чатов администраторов.


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




Справочник «Команды Telegram»

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



В элементе справочника «Команды Telegram» указывается следующее:



  1. «Команда Telegram» - команда Telegram должна быть указана только латинскими буквами и не должна повторяться.

  2. «Текст, отображаемый на клавиатуре» - название кнопки на клавиатуре при взаимодействии с ботом непосредственно в Telegram.

  3. «Определение назначения команды» - описание предназначения команды, какая информация получается с помощью данной команды.

  4. «Использовать внешний запрос» - при установке данного флага, поле «Запрос» будет скрыто и откроется поле с выбором либо запроса из справочника «Запросы», либо другой команды Telegram. Данные из таблицы, полученной запросом выводятся построчно и последовательно. Для обозначения получаемой информации рекомендуется между числовыми полями запроса добавлять строковые.



  1. «Использовать только период» - указывается, когда необходимо использовать в запросе только период как конкретную дату (стандартные на начало дня, на начало недели, на начало месяца и т.д.), то есть данные будут собираться на конкретную дату. Параметр &Период должен присутствовать в запросе, но добавлять его в таблицу Параметры запроса не нужно, т.к. он обрабатывается отдельно и добавляет в Telegram клавиатуру со стандартными значениями плюс произвольный период.

  2. «Использовать начало и конец периода» -  указывается, когда необходимо использовать в запросе только период как диапазон, между началом и концом периода (стандартные за месяц, за квартал, за год и т.д.), то есть данные будут собирать за какой-то период. Параметры &НачалоПериода и &КонецПериода должны присутствовать в запросе, но, как и в п.5 добавлять их в таблицу Параметры запроса не нужно. Так же добавляется стандартный набор кнопок в Telegram.

  3. «Параметры запроса» - табличная часть, в которой могут храниться необходимые параметры для запроса.

  4. «Запрос» - текстовое поле, в котором хранится полный текст запроса, который будет исполняться. Данные из таблицы, полученной запросом выводятся построчно и последовательно. Для обозначения получаемой информации рекомендуется между числовыми полями запроса добавлять строковые.


Форма «Взаимодействие с ботом Telegram»

Данная обработка предназначена для взаимодействия с ботом Telegram. Она опрашивает все чаты указанного бота Telegram на предмет появления новых сообщений боту и передает боту полученные данные для чатов, а также записывает всю историю взаимодействия в регистр сведений «Реестр обмена с Telegram». У обработки есть следующие возможности:



  1. «Бот для оповещений» - указывается основной бот для оповещений, с которым взаимодействует данная информационная база.

  2. «Проверить соединение» - при нажатии кнопки будет произведена попытка подключения к указанному боту в виде тестового запроса.

  3. «Запустить/Остановить взаимодействие» - запуск или остановка взаимодействия с указанным ботом Telegram. Пока у данной обработки не запущено взаимодействие, данный механизм не будет взаимодействовать с ботом, то есть информационная база не будет получать сообщения, которые были отправлены боту и не будет их обрабатывать.

  4. «Расписание» - указывается расписание взаимодействия с ботом. По умолчанию установлено каждые 5 секунд.

  5. «Отправить сообщение чату» - возможность отправить любое сообщение любому чату вручную. 




Реестр обмена с Telegram

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




Пример взаимодействия с ботом Telegram

Пользователь, которому необходимо взаимодействовать с ботом Telegram, сначала должен найти вашего бота в Telegram (если у вас еще нет бота, смотрите раздел в руководстве пользователя «Оповещения в Telegram). Самый удобный способ найти бота - по его имени, например, @BitFinanceAlex_bot. Имя вводится в поисковую строку в Telegram. 



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



Чатам, которым необходимо получать оповещения о новых регистрациях и просьбе о помощи (указывается в регистре сведений – Чаты для оповещений) придет оповещение от бота.



Также в информационной базе, в справочнике «Чаты Telegram» создается новый элемент справочника со статусом регистрации – Ожидает регистрации.


2024-04-05_13-28-28


Далее, если данному чату возможно взаимодействовать с ботом Telegram, необходимо поменять статус регистрации на – Разрешено взаимодействие. В этом случае чату придет сообщение:


После этого Чату необходимо назначить доступные ему команды боту Telegram, делается это в элементе справочника «Чаты Telegram» в табличной части «Доступные команды».


2024-04-05_13-32-37


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


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



Если нажать на команду «Больше команд», то список всех команд выведется сообщением.


Команды также можно отдавать сообщением с именем команды, например, /cashflow.



Получение отчетов через бот Telegram

В системе реализована возможность по получению отчетов в формате файла pdf* при помощи произвольной команды в боте телеграм.

Для этого необходимо в справочнике "Команды боту Telegram" создать новую команду с видом "Отчет".

image

При этом необходимо заполнить следующие поля:

1. Команда Telegram - наименование команды, которое будет отправлено в бот телеграм. Заполняться должно латиницей, без пробелов. Желательно не использовать знаки препинания и спец символы.
2. Текст отображаемый на клавиатуре - наименование команды, которое будет отображаться непосредственно в чате.
3. Определение назначения команды - комментарий для чего данная команда необходима.
4. Вид команды - значение для чего предназначена команда.
5. Исполняемый отчет - вид отчета, который будет отправляться пользователю. Можно выбирать только те отчеты, которые используют «1С:Библиотеки стандартных подсистем»

После заполнения полей и выбора отчета необходимо нажать ссылку "Загрузить параметры отчета", если команда только создана, или "Изменить параметры отчета", если параметры загружались ранее. После этого откроется окно отчета, где будет необходимо произвести все необходимые настройки.


ВАЖНО!
На исполняемые отчеты не распространяется ограничение прав доступа. В случае, если необходимо ограничить выборку данных, требуется устанавливать отборы в настройках отчета.





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







     RSS of this page