Телеграм, оформление сообщения.

baracuda

Client
Регистрация
19.06.2013
Сообщения
793
Благодарностей
278
Баллы
63
Всем привет. решил мониторить один ресурс через телеграм. всё хорошо, но решил заняться эстетикой.. придать сообщению симпатичный вид.
Что то нашёл, что то нет.. вопросы такие

1. При парсинге телефона.. как ему придать кликабельность ? "+" кстати пропадает.
2. Часть текста оформить ссылкой как в html, это возможно что бы был кликабельный ? пример что то типа <a...>текст</a>
3. ширина окна сообщение.(подгоняется по изображение) хочу во всю ширину экрана
Заранее спасибо
 
Последнее редактирование:

baracuda

Client
Регистрация
19.06.2013
Сообщения
793
Благодарностей
278
Баллы
63
Возможно кто то реализовывал автопостинг... собираем контент, отсылаем боту. всё здорово, работает на ура... а можно ли весь этот материал автоматом в группу переносить(постить) или на прямую без ботов, а сразу в группу слать ?
 

sydoow

Client
Регистрация
22.06.2011
Сообщения
289
Благодарностей
149
Баллы
43

Rimen

Client
Регистрация
28.10.2019
Сообщения
406
Благодарностей
253
Баллы
63

sydoow

Client
Регистрация
22.06.2011
Сообщения
289
Благодарностей
149
Баллы
43
C#:
string strTextSend = @"+7777777777777 <a href=""https://t.me/"">ТОВАРЫ</a>"; 
string strTgToken = "bot551119111:AAECcPtLpSaaarv2HhyQup11LCosm814BM4";
string strTgChatId = "76811120";
string strTgNoLoadPreview = "true"; // не грузить превью ссылки в посте
string strTgGetUrl = "https://api.telegram.org/"+strTgToken+"/sendMessage?chat_id="+strTgChatId+"&disable_web_page_preview="+strTgNoLoadPreview+"&parse_mode=HTML"+"&text="+HttpUtility.UrlEncode(strTextSend);
string strTgGetResult = ZennoPoster.HttpGet(strTgGetUrl, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly);
 
  • Спасибо
Реакции: Rimen

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
C#:
string strTextSend = @"+7777777777777 <a href=""https://t.me/"">ТОВАРЫ</a>";
string strTgToken = "bot551119111:AAECcPtLpSaaarv2HhyQup11LCosm814BM4";
string strTgChatId = "76811120";
string strTgNoLoadPreview = "true"; // не грузить превью ссылки в посте
string strTgGetUrl = "https://api.telegram.org/"+strTgToken+"/sendMessage?chat_id="+strTgChatId+"&disable_web_page_preview="+strTgNoLoadPreview+"&parse_mode=HTML"+"&text="+HttpUtility.UrlEncode(strTextSend);
string strTgGetResult = ZennoPoster.HttpGet(strTgGetUrl, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly);
Привет, подскажи как отправить пост с картинкой, не могу понять как должен выглядеть Get запрос. И подскажи последняя сторока этого кода как я понял запрос на полученя ответа от телеграм об удачной обработки запроса или я не правильно понял?
 

sydoow

Client
Регистрация
22.06.2011
Сообщения
289
Благодарностей
149
Баллы
43
Привет, подскажи как отправить пост с картинкой, не могу понять как должен выглядеть Get запрос. И подскажи последняя сторока этого кода как я понял запрос на полученя ответа от телеграм об удачной обработки запроса или я не правильно понял?
Привет
Данным кодов я шлю в свой ТГ бот (не канал) отчёты по работе шаба
Как картинку отправлять не подскажу, к сожалению никогда не делал этого
Последняя строка - это гет запрос который и делает саму отправку собщения, а что там приходит в ответе я даже не смотрю)
 

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
Привет
Данным кодов я шлю в свой ТГ бот (не канал) отчёты по работе шаба
Как картинку отправлять не подскажу, к сожалению никогда не делал этого
Последняя строка - это гет запрос который и делает саму отправку собщения, а что там приходит в ответе я даже не смотрю)
Может знаешь как получить ответ после отправки запроса?
 

sydoow

Client
Регистрация
22.06.2011
Сообщения
289
Благодарностей
149
Баллы
43
Может знаешь как получить ответ после отправки запроса?
Так он есть в переменной "strTgGetResult"

Можешь его получить в ZP переменную дописав в конце:
project.Variables["peremennaya"].Value = strTgGetResult;
 

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
Так он есть в переменной "strTgGetResult"

Можешь его получить в ZP переменную дописав в конце:
project.Variables["peremennaya"].Value = strTgGetResult;
Попробовал так, но почему-то ни чего не появляется в переменной
 

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
Вот мой код:
C#:
var bot_id = project.Variables["token_bot"].Value;// токен бота
var chat_id = project.Variables["chat_id"].Value; // ID канала
var str_post = project.Variables["title"].Value + "\r\n" + "\r\n" + project.Variables["text_header"].Value + "\r\n" + "\r\n" + project.Variables["text"].Value; // формируем текст для поста
var srt_url_img = project.Variables["url_img"].Value;// изображение для постинга

string data = string.Empty;//Получаем текущею дату
data += "--8d769bc76365cd4\n";


string resRequest = ZennoPoster.HttpPost("https://api.telegram.org/bot" + bot_id + "/sendMessage?chat_id=" + chat_id + "&parse_mode=HTML"+ "&text=" + str_post,    
    data,
    "multipart/form-data",
    "",
    "UTF-8",
    ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody,
    30000,
    "",
    "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0",
    true,
    5,
    new[] {"Host: api.telegram.org"}
    );//GET запрос для постинга
   
string strTgGetResult = ZennoPoster.HttpGet(resRequest, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly);
project.Variables["TgGetResult"].Value =strTgGetResult;
 

sydoow

Client
Регистрация
22.06.2011
Сообщения
289
Благодарностей
149
Баллы
43
Вот мой код:
C#:
var bot_id = project.Variables["token_bot"].Value;// токен бота
var chat_id = project.Variables["chat_id"].Value; // ID канала
var str_post = project.Variables["title"].Value + "\r\n" + "\r\n" + project.Variables["text_header"].Value + "\r\n" + "\r\n" + project.Variables["text"].Value; // формируем текст для поста
var srt_url_img = project.Variables["url_img"].Value;// изображение для постинга

string data = string.Empty;//Получаем текущею дату
data += "--8d769bc76365cd4\n";


string resRequest = ZennoPoster.HttpPost("https://api.telegram.org/bot" + bot_id + "/sendMessage?chat_id=" + chat_id + "&parse_mode=HTML"+ "&text=" + str_post,
    data,
    "multipart/form-data",
    "",
    "UTF-8",
    ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody,
    30000,
    "",
    "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0",
    true,
    5,
    new[] {"Host: api.telegram.org"}
    );//GET запрос для постинга

string strTgGetResult = ZennoPoster.HttpGet(resRequest, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly);
project.Variables["TgGetResult"].Value =strTgGetResult;
У тебя же уже был гет запрос для постинга, поэтому мой добавлять не нужно

Удали: 24, 25 строки

Добавь:
project.Variables["TgGetResult"].Value = resRequest;
 
  • Спасибо
Реакции: cherus09

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18

Кто просматривает тему: (Всего: 3, Пользователи: 0, Гости: 3)