Я хочу создать робота в Telegram. После поиска я нашел telegram.bot в пакете Nuget.Отправить фотографии, используя telegram.bot
Но у меня возникли проблемы с отправкой фотографии. Определение функции, как
Bot.SendPhoto(int channelId, string photo, string caption)
Но я не знаю, что, как ожидается, в параметре string photo
. Должен ли я преобразовать свое изображение в строку base64 или передать путь к изображению, или ...?
Мой код в настоящее время выглядит следующим образом
var Bot = new Telegram.Bot.Api("API KEY");
var b = new System.Net.WebClient().DownloadData(a.DefaultImage());
System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(new System.IO.MemoryStream(b));
var z = bmp.GetThumbnailImage(200, (200 * bmp.Height)/bmp.Width,
new System.Drawing.Image.GetThumbnailImageAbort(
delegate { return true; }), IntPtr.Zero);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
z.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
var x = new Telegram.Bot.Types.FileToSend()
{
Filename = a.DefaultImage().Split('/').LastOrDefault(), Content = ms
};
var t = Bot.SendPhoto("@Chanel", x, a.Title);
Но это вызывает Исключение
Telegram.Bot.Types.ApiRequestException: [Ошибка]: Bad Request: Файл для отправки должно быть непустой
В репозитории NuGet пакета 'Tele Bot' нет. Каково фактическое имя используемого вами пакета? Это 'TeleBotDotNet' или' telegram.bot'? – rufanov
Какая у вас проблема? Вы получаете исключение или что еще? –
i not undrestand put to ** String Photo ** Атрибут этой функции –