Страница 4 из 6

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

Добавлено: 14 сен 2021, 13:50
Sertik
В связи с глюком Телеграмма при встрече варианта текста с пробелом и следующей за ним заглавной буквой H латинского алфавита (см. viewtopic.php?f=14&t=12043&start=60) я включил в массив преобразования подфункции StrToTele ключ из пробела и равного ему элемента "0020" (пробел).
и дополнительную проверку в цикле на образование сочетания " H" с заменой на %20.
Это проще и быстрее, чем после переконвертации опять прогонять всю строку с заменой всех пробелов на %20.
Либо ещё вариант добавить в алгоритм преобразования проверку на сочетание пробела и заглавной H и только в этом случае вставлять вместо пробела %20
типа вот так :if (($keys=" ") and ([:pick $string ($i+1) (2+$i)]="H")) do={:set $code "%20"} else={

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

Добавлено: 14 сен 2021, 15:04
xvo
Уже обсуждалось, в этой теме: это не глюк телеграма, а в принципе http запрос так работает.

Повторяю ссылку с объяснением:
https://forum.mikrotik.com/viewtopic.ph ... 15#p810546

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

Добавлено: 14 сен 2021, 15:10
Lurker
xvo писал(а): 14 сен 2021, 15:04 Повторяю ссылку с объяснением:
https://forum.mikrotik.com/viewtopic.ph ... 15#p810546
Ага, вобщем так:
Пробелы в чистом виде URL вообще пихать нельзя по стандарту, но telegram по доброй воле их принимает.
НО на " H" его парсер ломается(там есть причина, читай ссылку).
Итого: я бы рекомендовал заменять все пробелы дабы соответствовать стандарту URL, хз где ещё может вылезти проблема.

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

Добавлено: 14 сен 2021, 15:12
xvo
Именно так.

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

Добавлено: 14 сен 2021, 20:14
Sertik
OK, понятно. Будем заменять все пробелы на %20 !
В своей функции я исправил.

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

Добавлено: 14 сен 2021, 20:18
pepelxl
Вот вообще не понимаю зачем изобретать велосипед. Есть стандарт, стандарт в открытом доступе. Что мешает прочитать, и сделать как нужно с первого раза? тыц

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

Добавлено: 15 сен 2021, 08:12
Lurker
pepelxl писал(а): 14 сен 2021, 20:18 Вот вообще не понимаю зачем изобретать велосипед. Есть стандарт, стандарт в открытом доступе. Что мешает прочитать, и сделать как нужно с первого раза? тыц
1)лень
2)обычно разработка на непрофессиональном уровне ведётся не по стандартам, а вот это не работает по этому, ну значит исправляем это. На стандарты никто не смотрит.

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

Добавлено: 15 сен 2021, 10:56
Sertik
Я в английском как свинья в апельсинах понимаю. Если бы кто-нибудь (из профессиональных разработчиков :-) ) перевёл текст из этого "ТЫЦ" ....
Вот уважаемый pepelxl взялся бы и сделал для нас функцию-конвертер под Телеграмм как надо ...

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

Добавлено: 19 сен 2021, 19:29
Sertik
Поправил обе функции FuncStrToTele и FuncTelegramSender. Теперь они будут заменять нужной кодировкой для Телеграмма все символы, которые помещены в массив. Если всплывет какой-то символ, который кодируется не правильно (а это в нашем случае могут быть только символы с кодами $00-$40 - вставьте его и его код в словарь-массив и всё будет океу. Пока обнаружил что дело портили такие симфолы как & и ^. Их вставил, теперь нормально.

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

Добавлено: 23 дек 2021, 18:38
dimka-dh
Sertik писал(а): 19 сен 2021, 19:29 Поправил обе функции FuncStrToTele и FuncTelegramSender. Теперь они будут заменять нужной кодировкой для Телеграмма все символы, которые помещены в массив. Если всплывет какой-то символ, который кодируется не правильно (а это в нашем случае могут быть только символы с кодами $00-$40 - вставьте его и его код в словарь-массив и всё будет океу. Пока обнаружил что дело портили такие симфолы как & и ^. Их вставил, теперь нормально.
А как правильно вызвать функцию отправки из Скрипта, в котором указаны локальные переменные, используемые для отправки в сообщении?
Так понимаю он отправляет их как текст в функцию...