С наступающим! (для всех, читающих в 2020 - с наступившим!) )
Не могу разобраться с ботом - пытаюсь отправить себе файл с ПК.
Собственно, в чем суть бота: дома, в домашней сети wifi стоит Rasbery PI в качестве сервера, на котором в цикле крутится серверная часть с ботом - бот принимает url, по которому нужно сохранить web страницу локально на внешний usb подключенный к малине. Но, я так же, хочу иметь доступ к сохраненным файлам не только в домашней сети, а делать статический ip на малине (на ней так же стоит apache и COPS (OPDS каталогизатор)) - не хочется, поэтому, организовал "общение" все через того же бота:
Собственно, "общение" с ботом (знаю, что можно сделать клавиатуру с кнопками, но это больше тренировочный проект - для себя и тут мне даже интереснее сделать велосипед)
if (e.Message.Text.StartsWith("$"))//command
{
switch (e.Message.Text)
{
case "$help":
bot.SendTextMessageAsync(new Telegram.Bot.Types.ChatId(id), "send me some commands:\n $help -to see commands list\n" +
"$books_log - to see list of saved books (from log file)\n $books_list - to see list of saved books(get files name from storage)\n $download - to download some article");
break;
case "$books_log":
bot.SendTextMessageAsync(new Telegram.Bot.Types.ChatId(id), File.ReadAllText("URLLogs.txt"));
break;
case "$books_list":
GetBooksList();
break;
default:
if (e.Message.Text.StartsWith("$download"))
{
string pathToFile = GetDownloadFilePath(e.Message.Text.Substring(e.Message.Text.IndexOf(" ") + 1), e);
try
{
if (File.Exists(pathToFile))
{
Console.WriteLine("file exist");
}
else
{
Console.WriteLine("file NOT exist");
}
using (var stream = File.OpenRead(pathToFile))
{
InputOnlineFile iof = new InputOnlineFile(stream);
iof.FileName = "";
var send = bot.SendDocumentAsync(new Telegram.Bot.Types.ChatId(id), iof, "Сообщение");
}
//bot.SendDocumentAsync(new Telegram.Bot.Types.ChatId(id), new Telegram.Bot.Types.InputFiles.InputOnlineFile(pathToFile));
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
}
break;
}
return false;
}
Суть проблемы: код отрабатывает, без ошибок, в консоль выводится, что файл существует, но сам файл (htm страницу) - я не получаю.