Тёмный

Создание Telegram бота на PHP #8: рекомендации по проектированию ботов и ответы на вопросы 

Prog-Time
Подписаться 6 тыс.
Просмотров 1,5 тыс.
50% 1

Опубликовано:

 

29 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 33   
@ProgTime
@ProgTime 7 месяцев назад
Спасибо за просмотр! Пишите по всем вопросам, буду рад помочь! Важные ссылки: Курс по разработке бота - prog-time.ru/course_cat/telegram-bot-basic/ Prog-Time - prog-time.ru/ Telegram - t.me/prog_time_bot ВКонтакте - vk.com/progtime
@_CABi_A
@_CABi_A 6 месяцев назад
Вопрос по многопоточности. Если в Боте присутствует долгая функция (например, обращение к нейросети и ожидание ответа), то по мере обращения разных пользователей к боту, как предотвратить затупы бота?
@ProgTime
@ProgTime 6 месяцев назад
Есть несколько вариантов: - можно использовать Rabit MQ для настройки системы очередей - можно использовать хуки, если есть такая функция у нейросети
@_CABi_A
@_CABi_A 6 месяцев назад
Было бы интересно посмотреть подробнее об этом
@petroboyko
@petroboyko 11 месяцев назад
Всем привет каким образом записать или как правильно обяснить когда в бот пишут какой нибудь вопрос и как его сохранить или записать и передать владельцу... вот пишу боту бот отвечает что незнает ответа а как мой вопрос сохранить или записать его чтоб отправить владельцу сообщение с вопросом
@_slash_-
@_slash_- 11 месяцев назад
Сделал интернет -магазин себе на php и js, но вот никак не пойму, как реализовать при оплате доставку с пересчетом суммы. Адрес подключается легко методом need_shipping_address. Чаевые вроде тоже не сложно.А вот чтобы с пересчетом суммы при доставке не пойму никак
@Alex_Pav0208
@Alex_Pav0208 11 месяцев назад
Благодарю за классный материал, было бы интересно посмотреть видео Hestia cp
@ProgTime
@ProgTime 11 месяцев назад
Текст подготовил, на неделе постараюсь записать видео
@Alex_Pav0208
@Alex_Pav0208 11 месяцев назад
@@ProgTime я только учусь и мне было интересно про все это узнать, как настроить, как заливать фалы на сервер и тд. Спасибо большое за предоставленный материал
@ProgTime
@ProgTime 11 месяцев назад
Залил видео по Hestia CP - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-WK6PClrEBm4.html
@Alex_Pav0208
@Alex_Pav0208 11 месяцев назад
@@ProgTime большое спасибо
@coal-zi5tn
@coal-zi5tn 5 месяцев назад
Есть ли простой способ сделать отложенное удаление сообщения в боте? Например, нужно вывести какую-то дополнительную информацию сообщением и через время удалить его
@ProgTime
@ProgTime 5 месяцев назад
Простого способа нет! Можно зафиксировать ID сообщения в БД и с помощью крона удалить сообщение в определённый момент
@XSelent-qj6qz
@XSelent-qj6qz 9 месяцев назад
Привет! Будь добр, скажи пожалуйста как на php реализовать функционал машины состояния (FSM)?
@indi6277
@indi6277 10 месяцев назад
Надеюсь что получу ответ. Гуглил не нашел. Дело такое, написал бота, примитивный, отвечает по сценариям. НО, если я отредактирую свое сообщение(уже отправленное), бот банится, "status":"kicked". С чем это связано, как пофиксить? помогите...
@ProgTime
@ProgTime 10 месяцев назад
Нужна более подробная информация + желательно показать код
@indi6277
@indi6277 10 месяцев назад
@@ProgTime Спасибо за ответ, за попытку помочь. Наверное я разобрался, но еще буду тестить. В чем было дело. Я прикрутил вебхук к действующему проекту на Laravel, json от ТГ я преобразую в коллекцию и уже с ней работаю дальше. После редактирования сообщения в чате ТГ, json меняет структуру и приходит не "message", а "edited_message", в результате этого, ну и моего кода, Laravel выбрасывал ошибку "Call to a member function get() on null". Так как я все сразу делал на хостинге, локально же не потестишь, ошибку не видел. Но интересно что по итогу ТГ получал эту ошибку как ответ и банил бота, может не с первого раза, но все таки. PS Еще раз спасибо за помощь.
@LaMo3aBp
@LaMo3aBp 11 месяцев назад
подскажите пожалуйста как можно сохранить номер телефона пользователя в переменную или в базу? допустим пользователь делится контактом по кнопке с "'request_contact' => TRUE", а как его потом получить и запихнуть в базу не могу сообразить Заранее благодарю за ответ!
@ProgTime
@ProgTime 11 месяцев назад
Я лично с этим не сталкивался, но если тебе приходит ответ, ты можешь распарсить объект ответа и вынести телефон в переменную. Далее используя PDO подключиться к БД (предварительно создав базу и таблицы с полями) и занести в неё информацию.
@ivanandreevich5159
@ivanandreevich5159 11 месяцев назад
сервер - мак мини и статик айпи за 100 руб + самоподписанный сертификат.
@ProgTime
@ProgTime 11 месяцев назад
Не советую! Минусы: - сам "мак мини" сейчас стоит 68 тыс. + тяжело масштабировать, для улучшения нужно покупать новое оборудование - нужно следить за стабильной работой (интернет, перебои со светом, физические повреждения) - для правильной настройки нужно обладать большими знаниями, чем я показал в видео Идея не плохая, но мароки много!
@ivanandreevich5159
@ivanandreevich5159 11 месяцев назад
@@ProgTime 2010х годов стоит копейки. а 68 это на м2 чипе и на него ubuntu server не поставить.
@ivanandreevich5159
@ivanandreevich5159 11 месяцев назад
в качестве адреса вебхука используют токен.
@ProgTime
@ProgTime 11 месяцев назад
Это как? Вот я например знаю адрес твоего обработчика (например bot.php) и отправляю на него данные похожие на запрос от бота. Как ты проверишь, что я не бот?
@ivanandreevich5159
@ivanandreevich5159 11 месяцев назад
@@ProgTime если вы знаете адрес моего обработчика то вы знаете мой токен. но тогда чего стоит мой токен?
@ProgTime
@ProgTime 11 месяцев назад
Нет, это не так. Если я знаю путь до скрипта, это не значит что я знаю его код, соответственно я не знаю токен прописанный в скрипте.
@ivanandreevich5159
@ivanandreevich5159 11 месяцев назад
@@ProgTime да как же вы его узнаете то?
@ProgTime
@ProgTime 11 месяцев назад
например автоподбором. Как по по вашему подбирают пароли и взламывают аккаунты?
Далее