TamTamBot для питона ✔️

123 •
Обсуждение, вопросы, предложения. TamTamBot (TTB): https://github.com/asvbkr/TamTamBot">https://github.com/asvbkr/TamTamBot OpenAPI client (OAC): https://github.com/asvbkr/openapi_client">https://github.com/asvbkr/openapi_client * туториал - https://habr.com/ru/company/mailru/blog/466373/ * демобот - https://github.com/asvbkr/ttBotDemo">https://github.com/asvbkr/ttBotDemo Его работающая инсталяция - @asvbkrTestBot1 * Другие примеры - https://github.com/asvbkr (!) Здесь мы все на "ты"
1
Но опять таки, про кнопки в этой библиотеке я мало что знаю.
1
cmd_handler вызывается только при вводе определенных команд, а у меня кнопки должны появится после ввода произвольного текста, ну а что вызывается при их нажатии не пойму ...
При нажатии на кнопку вызывается команда. (если я не ошибаюсь)
TamTamBot для питона ✔️
1
Таким же способом, вроде как
cmd_handler вызывается только при вводе определенных команд, а у меня кнопки должны появится после ввода произвольного текста, ну а что вызывается при их нажатии не пойму
TamTamBot для питона ✔️
1
есть метод get_yes_no_buttons , но по аналогии мне не удалось
1
для двух кнопок 2 cmd_handler'a
1
Таким же способом, вроде как
TamTamBot для питона ✔️
1
cmd_handler обрабатывает команды /start /help и т.д а вот свои кнопки как обработать?
1
Насколько я знаю, кнопки запускают cmd_handler_.
TamTamBot для питона ✔️
1
нет условие выполнить, если да выполняем определенный код, нет - ждем следующего сообщения боту
1
А ты хочешь текст отправить?
TamTamBot для питона ✔️
1
У Сергея в tamtambot есть пример кнопок.
такого примера нет (или я не разобрался), у него для меню есть - тут все получилось
TamTamBot для питона ✔️
1
это понятно, но ведь мы пытаемся использовать уже написанную библиотеку
1
У Сергея в tamtambot есть пример кнопок.
1
мне это не очень помогло )
При нажатии на кнопку на адрес webhook уходит json, в нем смотри значение payload
TamTamBot для питона ✔️
1
У кнопки есть payload
мне это не очень помогло )
TamTamBot для питона ✔️
1
buttons = [ [CallbackButtonCmd(_('Да'), 'yes', intent=Intent.POSITIVE)], [CallbackButtonCmd(_('Нет'), 'no', intent=Intent.POSITIVE)], ] mb = self.get_yes_no_buttons self.msg.send_message(mb, user_id=update.user_id)
TamTamBot для питона ✔️
1
кнопки сделал так, но мне кажется что это не совсе правильно:
1
У кнопки есть payload
TamTamBot для питона ✔️
1
точнее кнопки добавил, только не пойму как обрабатывать нажатия
TamTamBot для питона ✔️
1
не могу добавить кнопки да нет ну и обработать их нажатие
1
ну это уже другая история)
TamTamBot для питона ✔️
1
вобщем это не проблема, главное я суть уловил, если что аналогично поотключаю
TamTamBot для питона ✔️
1
но твои команды при этом работают )
TamTamBot для питона ✔️
1
да список исчез полностью, включая мои команды
1
Вот так должно сработать: в своём классе делаешь def get_commands(self): return []
1
Ща гляну. Но должно быть в одном месте
TamTamBot для питона ✔️
1
Это, так называемый, полиморфизм
кстати, а как убрать твой список команд не залазая в код ТТБ, если я их не планирую использовать? создать функции с возвратом pass?
TamTamBot для питона ✔️
1
у меня просто в ТГ уже другой уровень, а в ТТ пока первая версия ТГ-кода, а нужно также в ТТ сделать. Что слать?
1
Что получается посмотрим
1
ТТ
1
Если хочешь, пришли мне свой код (или дай доступ на гитхабе) на посмотреть.
TamTamBot для питона ✔️
1
будем ждать развития, а я пока посовершенствуюсь
TamTamBot для питона ✔️
1
а многим (как я) впринципе жить позволяет 😂
1
В любом случае использование ттб уже сейчас серьёзно упрощает жизнь. Во всяком случае, мне)
TamTamBot для питона ✔️
1
да, там тоже есть apihelper (аналог openapi_client) потом Telebot - прослойка, а твой код с декораторами, получается красиво )
1
Но в планах есть)
1
посто в библиотеке ТГ другая философия, а учитывая мою подготовку, сложно перестраиваться
Философия там, скорее всего, та же в своей основе (ООП). Но там используются декораторы (питоновская фича), которые упрощают использование. У меня руки не дошли, пока.
TamTamBot для питона ✔️
1
впринципе дописать до структуры как реализовано в ТГ мне кажется не сложно, просто моих знаний пока маловато, и будет круто
1
Так. Именно так
TamTamBot для питона ✔️
1
плохого конечно ничего, особенно для самообразования )) просто системности нет, ТТБ задуман как более лаконичная прослойка между опенапиклиент и твоим (своим) кодом, но приходится к опенапи все равно обращаться...
1
ну меню тогда не сделать, нужно тогда еще модули подключать из опенапи
А что в этом плохого?
1
посто в библиотеке ТГ другая философия, а учитывая мою подготовку, сложно перестраиваться
Я с ней не работал. В общем в планах есть посмотреть на неё поближе. Но, пока, как есть.
TamTamBot для питона ✔️
1
ну меню тогда не сделать, нужно тогда еще модули подключать из опенапи