Помогите разобраться - отправка картинки в Телеграм канал через API

sashf1999

Client
Регистрация
04.01.2019
Сообщения
37
Благодарностей
11
Баллы
8
помогите разобраться как отправить картинку в телеграм, у меня не работает. через post get запрос не отправляет, делаю кубик С#, начинает ругаться на команду sendPhoto
Ну для того что бы сделать кубиком, тебе нужно иметь переменную с api key bot и чатом, потом берешь эту строку
Код:
https://api.telegram.org/{0}/sendPhoto?chat_id={1}
{0} - тут апи ключ
{1} - тут id chata
потом на эту ссылку грузишь фото
 
  • Спасибо
Реакции: backoff

backoff

Client
Регистрация
20.04.2015
Сообщения
6 052
Благодарностей
6 481
Баллы
113

sashf1999

Client
Регистрация
04.01.2019
Сообщения
37
Благодарностей
11
Баллы
8

backoff

Client
Регистрация
20.04.2015
Сообщения
6 052
Благодарностей
6 481
Баллы
113

qwadra

Client
Регистрация
21.11.2017
Сообщения
264
Благодарностей
42
Баллы
28
Кто нибудь уже даст пример запроса для отправки фото? Или это только на С# мудрить?
 
  • Спасибо
Реакции: Андрейка2020

b1zar

Client
Регистрация
29.06.2019
Сообщения
107
Благодарностей
67
Баллы
28
Кто нибудь уже даст пример запроса для отправки фото? Или это только на С# мудрить?
Можно сделать на c#, но намного проще примера в этой теме без общего кода. А так вот на обычном кубике POST запрос. Картинки лучше отправлять через sendDocument, они хотя бы качество не теряют. Пример построен на sendDocument, но если нужно то замени на sendPhoto и в данных "document" на "photo"
https://yadi.sk/d/cRrG3knHzD5rRg
 

backoff

Client
Регистрация
20.04.2015
Сообщения
6 052
Благодарностей
6 481
Баллы
113

b1zar

Client
Регистрация
29.06.2019
Сообщения
107
Благодарностей
67
Баллы
28

movchan

Client
Регистрация
18.02.2013
Сообщения
81
Благодарностей
137
Баллы
33
А что за значение --8d769bc78125cd4 и откуда оно берется?
 
Последнее редактирование:

b1zar

Client
Регистрация
29.06.2019
Сообщения
107
Благодарностей
67
Баллы
28
А что за значение --8d769bc78125cd4 и откуда оно берется?
Это как называют boundary (Границы) данных при отправке multipart, обычно сервер их генерирует, но можно и самому через рандом. Видел на форуме, что используют генератор для определения границ, я в этом смысла не увидел, потому, что и при статичном все хорошо проходит
 
  • Спасибо
Реакции: Shining, sydoow и movchan

devffy

Client
Регистрация
16.03.2019
Сообщения
542
Благодарностей
188
Баллы
43
Можно сделать на c#, но намного проще примера в этой теме без общего кода. А так вот на обычном кубике POST запрос. Картинки лучше отправлять через sendDocument, они хотя бы качество не теряют. Пример построен на sendDocument, но если нужно то замени на sendPhoto и в данных "document" на "photo"
https://yadi.sk/d/cRrG3knHzD5rRg
Привет!!! Огромное спасибо за шаблон. А как добавить туда описание свое? К примеру пощу картинку сразу с текстом
 

devffy

Client
Регистрация
16.03.2019
Сообщения
542
Благодарностей
188
Баллы
43
Сделал. Добавил в конце запроса
&caption={-Variable.caption-}
 
  • Спасибо
Реакции: phoenixs

MrRangerYT

Новичок
Регистрация
18.02.2020
Сообщения
1
Благодарностей
0
Баллы
1
Как это всё автаматизировать, тоесть, есть папка с картинками, и нужно что бы бот кидал картинки по очереди и они не повторялись
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113
Как это всё автаматизировать, тоесть, есть папка с картинками, и нужно что бы бот кидал картинки по очереди и они не повторялись
Получаете список файлов. Берете из списка строки с удалением (это путь к фото), отправляете, потом удаляете файл. И т.д. пока не закончится список.
 

GREXA

Client
Регистрация
16.09.2017
Сообщения
276
Благодарностей
103
Баллы
43
Вопрос ещё есть)
Как можно сразу не сколько картинок отправить?
Получается сейчас только 1
 

qwadra

Client
Регистрация
21.11.2017
Сообщения
264
Благодарностей
42
Баллы
28

vovanchis

Пользователь
Регистрация
14.03.2017
Сообщения
41
Благодарностей
1
Баллы
8
Реально ли как-то отправить пост боту, а не просто в канал? И как, если да? через post запрос
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113

vovanchis

Пользователь
Регистрация
14.03.2017
Сообщения
41
Благодарностей
1
Баллы
8

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 415
Благодарностей
5 454
Баллы
113

SteveJobs

Client
Регистрация
03.11.2016
Сообщения
283
Благодарностей
30
Баллы
28
Подскажите пожалуйста, нужно картинку с текстом отправить в телеграмм с помощью c#. (например фото по пути C:\123.jpg) и под ним текст в Telegram (Например: test). Для отправки сообщения юзаю следующий код, а с изображением совсем не получается
C#:
WebRequest request = WebRequest.Create("https://api.telegram.org/bot" + strToken + "/sendMessage?chat_id=" + strChatId + "&text=" + url);
WebResponse response = request.GetResponse();
response.Close();
 

SOG

Client
Регистрация
02.04.2020
Сообщения
3
Благодарностей
4
Баллы
3
Подскажите пожалуйста, нужно картинку с текстом отправить в телеграмм с помощью c#. (например фото по пути C:\123.jpg) и под ним текст в Telegram (Например: test). Для отправки сообщения юзаю следующий код, а с изображением совсем не получается
C#:
WebRequest request = WebRequest.Create("https://api.telegram.org/bot" + strToken + "/sendMessage?chat_id=" + strChatId + "&text=" + url);
WebResponse response = request.GetResponse();
response.Close();
Используй sendPhoto вместо sendMessage
 

SOG

Client
Регистрация
02.04.2020
Сообщения
3
Благодарностей
4
Баллы
3

vovanchis

Пользователь
Регистрация
14.03.2017
Сообщения
41
Благодарностей
1
Баллы
8
Может знает кто, возможно ли через API телеги отложенную отправку делать?
 

SteveJobs

Client
Регистрация
03.11.2016
Сообщения
283
Благодарностей
30
Баллы
28
Зачем тебе заморачиваться с C#? Выбирай POST.
В URL https://api.telegram.org/bot????????????????????????????????/sendPhoto
В данных chat_id=?????????????????????&photo={-Variable.link_img_deal-}&parse_mode=HTML&caption='любой текст'
Спасибо за помощь
Но всё равно актуально и был бы признателен, если кто-то поможет на чистом C# сделать отправку фото+текста в тг
 

AZANIR

Client
Регистрация
09.06.2014
Сообщения
405
Благодарностей
198
Баллы
43
Лови

C#:
//картинка c описанием 
string img = @"c:\1.jpg"
string strToken = "";
string strChatId = "";
string proxy = "";
string message = "описание";
string mode = "&parse_mode=html";

string data = "--8d769bc78125cd4\n";
data += string.Format("Content-Disposition: form-data; name=\"photo\"; filename=\"{0}\"\n", img);
data += "Content-Type: application/octet-stream\n";
data += img;

string resRequest = ZennoPoster.HttpPost(
"https://api.telegram.org/bot" + strToken + "/sendPhoto?chat_id=" + strChatId+"&caption="+message+mode,
data,"multipart/form-data",proxy,"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"});
 

booms1

Client
Регистрация
20.08.2019
Сообщения
136
Благодарностей
18
Баллы
18
Лови

C#:
//картинка c описанием
string img = @"c:\1.jpg"
string strToken = "";
string strChatId = "";
string proxy = "";
string message = "описание";
string mode = "&parse_mode=html";

string data = "--8d769bc78125cd4\n";
data += string.Format("Content-Disposition: form-data; name=\"photo\"; filename=\"{0}\"\n", img);
data += "Content-Type: application/octet-stream\n";
data += img;

string resRequest = ZennoPoster.HttpPost(
"https://api.telegram.org/bot" + strToken + "/sendPhoto?chat_id=" + strChatId+"&caption="+message+mode,
data,"multipart/form-data",proxy,"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"});
А как к этому делу можно отправить несколько фото?
 

AZANIR

Client
Регистрация
09.06.2014
Сообщения
405
Благодарностей
198
Баллы
43
  • Спасибо
Реакции: booms1

Szerzs

Client
Регистрация
15.06.2019
Сообщения
259
Благодарностей
68
Баллы
28
Подскажите пожалуйста:как установить аватарку в телеграм? Ни поиск по картинке,ни полная эмуляция не помагает кликнуть на смену аватарки. Установка координат сбивается. Что только не пробовал-не кликает на иконку фотоаппарата,хоть убей:-)

Не актуально-вопрос решён :-)
 
Последнее редактирование:

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
351
Благодарностей
52
Баллы
28
отличный код... только подскажи еще как туда вставить в описание перенос строки "{-String.Enter-}" не работает
Примерно так хотелось бы...

C#:
string message = "описание: 111
                    взято из: 222
                        сделано для: 333";

все разобрался.. вставляю текст из переменной:

C#:
string message = project.Variables["текст"].Value;
61415
 
Последнее редактирование:

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