В начало

Отправка форматированного текста в Телеграм

 

Листинг. Модуль формы

Функция ОтправкаЗаявкиВТелеграм(Знач Токен, Знач ChatId, Знач стЗаявки) Экспорт 

           

            Если НЕ ЗначениеЗаполнено(стЗаявки) Тогда

                        Возврат Неопределено;

            КонецЕсли;

           

            Если ЗначениеЗаполнено(стЗаявки.flat) И

                         стЗаявки.flat <> "nil" Тогда

                        Адрес = стЗаявки.address.address + ", кв. " + стЗаявки.flat;

            Иначе                                                                                     

                        Адрес = стЗаявки.address.address;

            КонецЕсли;          

           

                       

            ТекстСообщения = "<b>Адрес: </b>" + Адрес + Символы.ПС + Символы.ПС +

           

                        "<b>Телефон: </b>" + стЗаявки.phone + Символы.ПС +

                        "<b>E-mail: </b>" + стЗаявки.authorEmail + Символы.ПС + Символы.ПС +

           

                        "<b>" + стЗаявки.company.name + "</b>" + Символы.ПС + Символы.ПС +

           

                        "<b>ЕДС: </b>" + стЗаявки.idValue + Символы.ПС +

                        "<b>Добродел: </b>" + стЗаявки.extId + Символы.ПС + Символы.ПС +

           

                        "<b>Дата создания: </b>" + стЗаявки.created + Символы.ПС +

                        "<b>Срок решения: </b>" + стЗаявки.deadline + Символы.ПС + Символы.ПС +

           

                        "<b>" + стЗаявки.category.name + "</b>" + Символы.ПС + Символы.ПС +

           

                        "<b>Текст заявки: </b>" + стЗаявки.description;

           

            Попытка

                        Соединение = Новый HTTPСоединение("api.telegram.org",443,,,,15,Новый ЗащищенноеСоединениеOpenSSL());

                        Запрос = Новый HTTPЗапрос("bot" + Токен + "/sendMessage?chat_id=" + ChatId +  "&parse_mode=HTML&text=" + ТекстСообщения);

                        Ответ = Соединение.ВызватьHTTPМетод("GET", Запрос);                   

                       

                        Если Ответ.КодСостояния = 200 Тогда

                                  

                                   ЧтениеJSON = Новый ЧтениеJSON();

                                    ЧтениеJSON.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8));

                                   РезСтруктура = ПрочитатьJSON(ЧтениеJSON);

                                   ЧтениеJSON.Закрыть();

                                                                      

                        Иначе                        

                        КонецЕсли;

                       

            Исключение

                        //Сообщить(ОписаниеОшибки());

                        //Сообщить(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));

            КонецПопытки

                

КонецФункции

 

 


Рейтинг@Mail.ru