NokiMo
Хачатур
Хачатур

boosty


Исходники полностью рабочих 2 Telegram-ботов на 2 языках

Исходники к ботам на C# и на php.mp4

Исходники:
C# ➜ https://pastebin.com/raw/GAp3wWQR
php ➜ https://pastebin.com/raw/Qp5ALTqS
Чтобы зарегистрировать своего php-бота,
нужно перейти 1 раз по этому адресу:
https://api.telegram.org/bot111111111111/setwebhook?url=botPath
Вместо 111111111111 ➜ ваш API-ключ.
Вместо botPath ➜ полный путь к php-файлу вашего бота.

Comments

<div ><div><span class="text">Понял в чем была проблема, может кому пригодиться)<br>Если у вас только чтение данных, то нужно использовать Get, а если изменение то используйте POST.<br>Возможно боты сканируют сайты и отправляют запросы, поэтому у меня пересохранялись неверные данные.<br>Теперь логирую запросы, они так же поступают с каких то IP, но уже ни чего не меняют в бд)</span></div><div></div></div>

Василий Елин

<div ><div><span class="text">Я пока только так спасаюсь:</span></div><div></div><div><span class="text">static Task Error(ITelegramBotClient botClient, Exception exception, CancellationToken token)</span></div><div></div><div><span class="text">{</span></div><div></div><div><span class="text">Console.WriteLine($"\n\n================= {DateTime.Now} ================= \n\n{exception}");</span></div><div></div><div><span class="text">Console.WriteLine("Перезапускаю сервер...");</span></div><div></div><div><span class="text">Cmd($"Taskkill /f /im Bot.exe && Timeout /t 2 && \"{Assembly.GetEntryAssembly().Location.Replace(".dll", ".exe")}\"");</span></div><div></div><div><span class="text">throw new NotImplementedException();</span></div><div></div><div><span class="text">}</span></div><div></div></div>

Хачатур

<div ><div><span class="text">Хачатур, сделал бота и как будто все работает, спасибо за помощь)<br>Но есть вопрос, бот на .net 8 - типа бот знакомств, сделал бд на хостинге beget. У пользователя сохраняются данные, одно из них состояние (для statemachine).<br>Если оставить бота на долго, он может улететь в ошибку...<br>Сейчас добавил Directory.SetCurrentDirectory(AppContext.BaseDirectory);<br>и ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;<br>Жду как отработает. Главное что в какой то момент, он как будто отправляет мне предпоследний запрос на хостинг... допустим я изменил состояние с 1 на 2 и оставил так, а потом бот сам меняет с 2 на 1 (и может сделать это два раза подряд, судя по логам). Никакие методы для этого не использую, нигде не вызываются. И вызывается именно предпоследний запрос к серверу.<br>не понимаю как залогировать это и проверить... уже много чего перепробовал)</span></div><div></div></div>

Василий Елин


Related Creators