|
|
|
Отправка в телеграм сообщения, файла |
|
|
cirus |
3.5.2022, 14:42
|
Elder
Сообщений: 3.480
Регистрация: 18.8.2014 Группа: Пользователи Наличность: 27517
Пользователь №: 16.971
Возраст: 29
|
Telegram.zip ( 407,63 килобайт )
Кол-во скачиваний: 329 Архив распаковать рядом с exe пилота. Создаём бота в телеграмм, получает токен и ид чата. Пример использования: Код --lua local ffi = require('ffi') local telegramm = ffi.load('SendTelegram.dll') log 'clear' log 'mode compact'
ffi.cdef[[ int sendtelegrammessage(const char* token, const char* chat_id, const char* text, char* result); int sendtelegramphoto(const char* token, const char* chat_id, const char* path_to_photo, const char* caption, char* result); int sendtelegramdocument(const char* token, const char* chat_id, const char* path_to_photo, const char* caption, char* result); int gettelegrammessage(const char* token, const char* chat_id, char* result); int gettelegramdocument(const char* token, const char* chat_id, const char* path_to_document); ]]
local token="1234567890:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -- token, указать свой local chat_id="1234567890" -- id chat, указать свой. Здесь должны быть цифры. Формат @name более не поддерживается телеграмом.
telegramm.sendtelegrammessage(token, chat_id, "Текст сообщения", nil) -- отправить сообщение
printscreen (0, 0, 0, 0, 0, [[C:\window.jpg]]) -- сохранить скрин экрана telegramm.sendtelegramphoto(token, chat_id, [[C:\window.jpg]], "", nil) -- отправить фото telegramm.sendtelegramdocument(token, chat_id, [[C:\window.jpg]], "", nil) -- отправить файл
local response = ffi.new('char[9999]') telegramm.sendtelegrammessage(token, chat_id, "Текст сообщения", response) -- отправить сообщение и получить ответ в формате JSON log(ffi.string(response)) Ожидание сообщения от бота: Код --lua local ffi = require('ffi') local telegram = ffi.load('SendTelegram.dll') log 'clear' log 'mode compact' ffi.cdef[[ int gettelegrammessage(const char* token, const char* chat_id, char* result); ]]
local token="1234567890:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -- token, указать свой local chat_id="1234567890" -- id chat, указать свой. Здесь должны быть цифры. Формат @name более не поддерживается телеграмом.
local new_message, last_message = ffi.new('char[999]') telegram.gettelegrammessage(token, chat_id, new_message) -- получить последнее сообщение log ('Последнее сообщение: ' .. ffi.string(new_message)) last_message = ffi.string(new_message) -- запомнить текст сообщения
log ('Ожидание нового сообщения') while true do telegram.gettelegrammessage(token, chat_id, new_message) -- получить последнее сообщение if ffi.string(new_message) ~= last_message then -- если сообщение не совпадает с последним -- тут нужные действия в зависимости от текста сообщения log('Новое сообщение: ' .. ffi.string(new_message)) break end wait (2000) end Сообщение отредактировал DarkMaster - 3.8.2022, 22:49
|
|
|
|
apaul |
8.8.2022, 12:38
|
Neophyte
Сообщений: 36
Регистрация: 19.8.2021 Группа: Пользователи Наличность: 0
Пользователь №: 20.051
|
Цитата(Madeus @ 3.8.2022, 22:14) пользуюсь своим работает без проблем. Руки не доходят оформить пост и выложить, да и не знаю как лучше сделать, выложить в эту тему или сделать новую.
Очень стало интересно. А то захотел прикрутить в дополнение с отчетам, еще и управление к скрипту, а оказалось что это решение у меня при отправке работает прекрасно, а вот с получением сообщений полная беда. Просто по Код telegram.gettelegrammessage(token, chat_id, new_message) ничего не приходит (IMG: style_emoticons/default/sad.gif)
|
|
|
|
Madeus |
8.8.2022, 17:09
|
Apprentice
Сообщений: 292
Регистрация: 19.11.2019 Группа: Пользователи Наличность: 9277
Пользователь №: 19.451
Возраст: 32
|
Цитата(apaul @ 8.8.2022, 12:38) Очень стало интересно. А то захотел прикрутить в дополнение с отчетам, еще и управление к скрипту, а оказалось что это решение у меня при отправке работает прекрасно, а вот с получением сообщений полная беда. Просто по Код telegram.gettelegrammessage(token, chat_id, new_message) ничего не приходит (IMG: style_emoticons/default/sad.gif) Скоро выложу
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|