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

ukrainec2014

Client
Joined
May 12, 2017
Messages
348
Reaction score
51
Points
28
C#:
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;
объясните пожалуйста этот кусок для понимания...
что тут делается..
 

AZANIR

Client
Joined
Jun 9, 2014
Messages
405
Reaction score
196
Points
43
Спасибо за помощь
Но всё равно актуально и был бы признателен, если кто-то поможет на чистом C# сделать отправку фото+текста в тг
вот это делается
 

ukrainec2014

Client
Joined
May 12, 2017
Messages
348
Reaction score
51
Points
28
Last edited:

haliul

Client
Joined
Jan 18, 2016
Messages
95
Reaction score
12
Points
8
Здравствуйте помогите отправить видео файл с компа.
Что поменять?
https://api.telegram.org/bot{-Variable.bot_id-}/sendDocument?chat_id={-Variable.chat_id-}


--8d769bc78125cd4
Content-Disposition: form-data; name="document"; filename="1.pdf"
Content-Type: application/octet-stream
C:\Users\prest\Desktop\1.pdf
 

one

Client
Joined
Sep 22, 2015
Messages
6,793
Reaction score
1,264
Points
113
Поищите внимательней по форуму, выкладывали решение.
 

haliul

Client
Joined
Jan 18, 2016
Messages
95
Reaction score
12
Points
8
Поищите внимательней по форуму, выкладывали решение.
Буть добр ткни носом пол дня уже убил
 

one

Client
Joined
Sep 22, 2015
Messages
6,793
Reaction score
1,264
Points
113
Ну насчет видео я промахнулся, не внимательно прочел, но думаю отправка картинки от видео не сильно будет отличаться кодом (сдесь же в начале топика).

Вам надо видео отправить в чат а почему осылаете PDF?
--8d769bc78125cd4
Content-Disposition: form-data; name="document"; filename="1.pdf"
Content-Type: application/octet-stream
C:\Users\prest\Desktop\1.pdf
 

alexmin9559

Client
Joined
Oct 19, 2013
Messages
20
Reaction score
34
Points
13
Буть добр ткни носом пол дня уже убил
Этот код отправляет видео в ТГ, только чтобы видео воспроизводилось нужно нажать на загрузку.

var bot_id = project.Variables["tg_api"].Value;
var chat_id = project.Variables["tg_chanel"].Value;

string description = project.Variables["description"].Value; //если требуется описание

string File = project.Lists["File"].First();
project.Lists["File"].RemoveAt(0);
project.SendInfoToLog(File);

string data = string.Empty;
data += "--8d769bc76365cd4\n";
data += string.Format("Content-Disposition: form-data; name=\"video\"; filename=\"{0}\"\n", File);
data += "Content-Type: application/octet-stream\n";
data += File;
string resRequest = ZennoPoster.HttpPost(
"https://api.telegram.org/bot" + bot_id + "/sendVideo?chat_id=" + chat_id + "&caption=" + description,
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"}
);
 
Last edited:

alexmin9559

Client
Joined
Oct 19, 2013
Messages
20
Reaction score
34
Points
13
Чтобы видео сразу начинало проигрываться, отправленное выше публикованным кодом, его размер должен быть примерно 480x304 px и весить должно около 7 мб.

В этой теме есть решение для отправки в ТГ больших видео:
 
  • Thank you
Reactions: haliul

haliul

Client
Joined
Jan 18, 2016
Messages
95
Reaction score
12
Points
8
Спасибо всем
 
Joined
Oct 19, 2018
Messages
189
Reaction score
24
Points
18
удалил сам
 
Last edited:

heks

Client
Joined
Oct 1, 2013
Messages
1,090
Reaction score
263
Points
83
так и не могу найти код для отправки сразу нескольких картинок с описанием ткните носом пожалуйста
понял что отправлять через sendMediaGroup но что то не могу составить правильный запрос
 
Last edited:

Troyan47

Client
Joined
Dec 26, 2014
Messages
89
Reaction score
12
Points
8
Так же интересует вопрос по работе с sendMediaGroup, через кубик post запроса,но не через C#
 

heks

Client
Joined
Oct 1, 2013
Messages
1,090
Reaction score
263
Points
83
Так же интересует вопрос по работе с sendMediaGroup, через кубик post запроса,но не через C#
походу никто так и не поможет новую тему создал по этому поводу может кто все таки откликнется
 

cherus09

Client
Joined
Oct 10, 2016
Messages
171
Reaction score
14
Points
18
Привет, кто-нибудь знает как Зеннопостером отправлять такие посты в Телеграм

70802
 
  • Thank you
Reactions: ukrainec2014

Home_KreKer

Client
Joined
Dec 5, 2016
Messages
137
Reaction score
35
Points
28
так и не могу найти код для отправки сразу нескольких картинок с описанием ткните носом пожалуйста
понял что отправлять через sendMediaGroup но что то не могу составить правильный запрос
Задача решена?
 

Philipp

Client
Joined
Oct 14, 2019
Messages
95
Reaction score
38
Points
18
У меня ошибка всё время, не могу понять что ни так, правильный ли гет?

https://api.telegram.org/bot{API бота}/sendMessage?chat_id={@chat_name}e&text=123

Ответ такой приходит

{"ok":false,"error_code":400,"description":"Bad Request: chat not found"}
 

Mikhail B.

Moderator
Joined
Dec 23, 2014
Messages
14,333
Reaction score
5,431
Points
113
У меня ошибка всё время, не могу понять что ни так, правильный ли гет?

https://api.telegram.org/bot{API бота}/sendMessage?chat_id={@chat_name}e&text=123

Ответ такой приходит

{"ok":false,"error_code":400,"description":"Bad Request: chat not found"}
Нужно не имя чата, а ID чата. Можно узнать если добавить бота для выдачи chat_id, таких полно. гуглите.
 

hago73

Client
Joined
Sep 7, 2012
Messages
59
Reaction score
21
Points
8
У меня такая же ошибка, хотя я прописал ID группы, а не имя
 

Ostap1992

Client
Joined
Feb 26, 2020
Messages
42
Reaction score
3
Points
8

Ostap1992

Client
Joined
Feb 26, 2020
Messages
42
Reaction score
3
Points
8

albert22531

Client
Joined
Jun 9, 2021
Messages
2
Reaction score
0
Points
1
Компиляция кода Ошибка в действии "CS0246" "Ошибка в директивах using. The type or namespace name 'Telegram' could not be found (are you missing a using directive or an assembly reference?)". [Строка: 1; Cтолбец: 7]

ДАйте пж библиотеку телграм.бот.dll
не надо тут говорить что она не нужна
функция
CommonCode.SendPhoto
откуда то браться должна
 

pablo1994

Client
Joined
Oct 26, 2020
Messages
7
Reaction score
5
Points
3
Приветствую. В чем может быть проблема?

Проект зациклен и при положительной логике делает скрин инстанса и отправляет его в ТГ с описанием.

Но бывают моменты, что пишет отправлено, но при этом ничего не пришло.
 

Shining

Client
Joined
May 25, 2018
Messages
35
Reaction score
0
Points
6
У меня такая же ошибка, хотя я прописал ID группы, а не имя
Попробуйте перд ID групппы добавить символ "-":

Содержимое запроса:
chat_id=-ВАШ_ИД&text=

Заметил что ИД группы идут с минусом для отправки, а личные чаты без символа.
 

nicos77777

Client
Joined
Apr 4, 2013
Messages
331
Reaction score
16
Points
18
Как хешь теги в описании отправлять?
 

nicanil

Client
Joined
Mar 6, 2016
Messages
2,242
Reaction score
1,807
Points
113

socsecret.ru

Client
Joined
Sep 30, 2017
Messages
344
Reaction score
207
Points
43
Пытаюсь через гет-запрос отправить фото с компьютера.
https://api.telegram.org/bot{-Variable.token-}/sendPhoto?chat_id={-Variable.chat_id-}&photo={-Variable.img-}
Приходит ответ: {"ok":false,"error_code":400,"description":"Bad Request: invalid file HTTP URL specified: Wrong port number specified in the URL"}
При этом если в переменной img указать фото не с компа, а с интернета - всё работает. Почему так?

upd: нашёл способ отправки картинки через post-запрос, но всё равно хочется понять причину вышеописанной проблемы
 
Last edited:

backoff

Client
Joined
Apr 20, 2015
Messages
5,931
Reaction score
6,389
Points
113
но всё равно хочется понять причину вышеописанной проблемы
тут же по-русски написано, не верный запрос ))
Bad Request: invalid file HTTP URL specified: Wrong port number specified in the URL
 

haliul

Client
Joined
Jan 18, 2016
Messages
95
Reaction score
12
Points
8
Пытаюсь через гет-запрос отправить фото с компьютера.
https://api.telegram.org/bot{-Variable.token-}/sendPhoto?chat_id={-Variable.chat_id-}&photo={-Variable.img-}
Приходит ответ: {"ok":false,"error_code":400,"description":"Bad Request: invalid file HTTP URL specified: Wrong port number specified in the URL"}
При этом если в переменной img указать фото не с компа, а с интернета - всё работает. Почему так?

upd: нашёл способ отправки картинки через post-запрос, но всё равно хочется понять причину вышеописанной проблемы
Наверное вот так надо. Прикреплять как файл
C#:
string token = project.Variables["token"].Value.Trim();

string filePath = @project.Variables["filePath"].Value.Trim();

string channel = project.Variables["channel"].Value.Trim();

string description = project.Variables["description"].Value.Trim();

var botClient = new TelegramBotClient(token);

var me = botClient.GetMeAsync().Result;

using (FileStream stream = System.IO.File.OpenRead(filePath))

{
    

    Message message = botClient.SendVideoAsync(

        chatId: channel,

        caption: description,

        parseMode: ParseMode.Html,

        video: new InputOnlineFile(stream),

        supportsStreaming: true

    ).Result;

}
 

socsecret.ru

Client
Joined
Sep 30, 2017
Messages
344
Reaction score
207
Points
43
Наверное вот так надо. Прикреплять как файл
C#:
string token = project.Variables["token"].Value.Trim();

string filePath = @project.Variables["filePath"].Value.Trim();

string channel = project.Variables["channel"].Value.Trim();

string description = project.Variables["description"].Value.Trim();

var botClient = new TelegramBotClient(token);

var me = botClient.GetMeAsync().Result;

using (FileStream stream = System.IO.File.OpenRead(filePath))

{
   

    Message message = botClient.SendVideoAsync(

        chatId: channel,

        caption: description,

        parseMode: ParseMode.Html,

        video: new InputOnlineFile(stream),

        supportsStreaming: true

    ).Result;

}
Спасибо за ответ, но это не то. Смысл в том, что я хочу понять, что именно не нравится телеграму, почему он не хочет принимать запрос с указанием ссылки на ПК, но если всё остальное идентично, а ссылка на ресурс в интернете, то спокойно работает.
 

Users Who Are Viewing This Thread (Total: 1, Members: 0, Guests: 1)