Frontol5. Работа с Telegram
Frontol5. Работа с Telegram
К фронтолу уже прикручивали отправку СМС, в этой статье прикрутим работу с Telegram
- Создание бота
Создаем бота с помощью @BotFather
BotFather: Бот по имени BotFather рулит всеми ботами. Используйте его для создания новых ботов и для управления уже существующими.
Создайте нового бота:
/newbot
Придумываем имя боту
Пример: Test-ATOL
Придумайте уникальной идентификатор (должен оканчиваться на «bot»)
Пример: testatol_bot
Как только бот будет создан, вы получите токен для подключения к Telegram API.
Done! Congratulations on your new bot. You will find it at t.me/testatol_bot. 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:
521180405:AAG5At3AAeVCCyCxkxHT3V9UeiSI_0tT3RI
For a description of the Bot API, see this page: https://core.telegram.org/bots/api
- Получение Chat ID
CHAT ID: Чтобы отправить сообщение через Telegram API, боту необходимо указать ID чата в который он будет писать. ID чата будет сгенерирован в момент отправки первого сообщения вашему боту.
Начните чат с ботом:
ПОИСК -> ИМЯ_ВАШЕГО_БОТА -> СТАРТ
Отправьте команду /start:
/start
Чтобы узнать ID чата, откройте следующую ссылку в браузере: https://api.telegram.org/bot<ТОКЕН>/getUpdates (замените <ТОКЕН> на токен вашего бота).
id - это и есть Chat ID созданного бота
- Читаем маны
Документация по API Telegam
- Простой пример скрипта для Frontol5
Отправка сообщения в Telegram
function init()
{
frontol.addEventListener("closeDocument", "afterCloseDocument", false);
}
function afterCloseDocument()
{
pos = "";
token = "521180405:AAG5At3AAeVCCyCxkxHT3V9UeiSI_0tT3RI"; // полученный токен
ID = "292102299"; // чат ID канала
for (
frontol.currentDocument.position.index = 1;
frontol.currentDocument.position.index <=
frontol.currentDocument.position.count;
frontol.currentDocument.position.index++
)
pos = pos + frontol.currentDocument.position.ware.name + " _ " + frontol.currentDocument.position.priceWithDiscs + "\n"
qwe = pos + "\nСумма документа: " + frontol.currentDocument.sumWithDiscs;
var req = new ActiveXObject("Microsoft.XMLHTTP");
req.open("POST", "https://api.telegram.org/bot" + token + "/sendMessage?chat_id=" + ID + "&text=" + encodeURI(qwe), false);
req.send(null);
}
Результат работы в телеге
Красоту кода, анализ результата отправки пожалуйста наводите самостоятельно
Где применять, если применять вообще, также каждый решит сам