Обсуждение:Отправка списка банков отключенных от БЭСП в телеграмм-бот.
5 (1)
- Обсуждение:Отправка списка банков отключенных от БЭСП в телеграмм-бот. ( Обсуждение примера 28.09.2016 09:58 )5(1)
Для начала нужно создать бота ))
О том как это сделать - посмотреть можно тут - http://asksql.org/articles/63
Отправка сообщений это обычный HTTPGET:
https://api.telegram.org/bot<токен>/sendmessage?chat_id=<ид>&text=<текст>
, где
<токен> - это секретная строка вашего бота
<ид> - это id пользователя телеграмм.
я сначала думал что это номер телефона, - а нет!
каждый пользователь телеграмм имеет свой ID.
причем чтоб сообщения ему уходили - пользователь должен зайти в ваш бот.
иначе видимо будет считаться спамом.
<текст> - это текст сообщения.
бонусом - пример отправка смс.
Посмотреть пример
>> Ответить- обработка json-ответа ( KarDik 03.12.2020 16:09 )0(0)Здравствуйте, а чем можно обработать JSON-ответы ?
>> Ответить- в Common есть макрос rs_json.mac ( KaMPiLeR 29.05.2021 00:51 )3(1)и в макросах от коннекта есть
>> Ответить- отправка в Telegram кириллица ( munhen 06.10.2022 15:46 )0(0)Коллеги, помогите...
Сделал бота, отправляю ему сообщения... делаю это просто
var mess = "hello, world!";
var text = "";
var sent = "https://api.telegram.org/bot"
+ to
+ "/sendMessage?chat_id="
+ token
+ "^&text=";
text = "*%C3%80*%C4%80*%C5%80*%C6%80*";
var cmdstr = path+" "+sent + text;
var ret = true, rr;
rr = run( GetEnv("COMSPEC"),"/c " + cmdstr, " >>R:\\RSBANK\\OBJ\\SENT.LOG");
Всё работает за малым пустяком... не отправляется кириллица (по-русски)... только латиница...
Перекодировать корректно в UTF-8 не получается... ни функций, ни алгоритма перекодировки не нашёл....
Хелп.. Думаю это не единственный метод.. а как у вас получается отправить кириллицу...
Кстати.. пример с БИК не работает у меня... Компилится без ошибок, но объект не создаётся и как результат на методе SEND падает...
Что то так хочется это побороть.. Подскажите, плз, как надо...
Заранее благодарен за любые советы..
>> Ответить- import doctor.d32; ( volfgreg 07.10.2022 07:12 )4(1)Скачай тут doctor.d32 и как-то так:
import doctor.d32;
//конвертация строки запроса в нужный вид
macro pdl_ConvertString(s)
local var r="",c,i=1,l=StrLen(s),code;
while(i<=l)
c=substr(s,i,1);i=i+1;
code=CodeFor(c);
if(code<=15)
r=r+"%0"+dcIntToHex(code);
elif(((code>=48) and (code<=57)) or
((code>=65) and (code<=90)) or
((code>=97) and (code<=122)) or
index(";45;46;95;126;",";"+code+";")
)
r=r+c;
else
r=r+"%"+dcIntToHex(code);
end;
end;
return r;
end;
fio=pdl_ConvertString(dcAsciiToUTF8(fio));
>> Ответить
- import doctor.d32; ( volfgreg 07.10.2022 07:12 )
- отправка в Telegram кириллица ( munhen 06.10.2022 15:46 )
- в Common есть макрос rs_json.mac ( KaMPiLeR 29.05.2021 00:51 )
- обработка json-ответа ( KarDik 03.12.2020 16:09 )