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 (!) Здесь мы все на "ты"
99
И что же делать, если мне нужен текст, а не команда?
71
Там содержится команда и её параметры
73
В ТТБ это свойство используется не совсем произвольно
70
В том числе и текстом
68
И это свойство единственное, которое может заполняться произвольным значением
72
В этом событии приходит, в частности, то, что содержится в свойстве "payload" кнопки
68
Отвечаю не сразу
72
просто сильно занят сейчас)
72
хорошо, и что мне это дает?)
69
кнопка передаёт событие "message_callback"
71
или кнопки только команды вызывают?
72
Ну text: 'text' ?
71
Это как?
68
Сергей, а кнопка может простой текст передать?
75
Да так-то это не моя мысль))
TamTamBot для питона ✔️
70
Насколько я знаю, кнопки запускают cmd_handler_.
твоя мысль вообщем то оказалась верной, через cmd_handler_yes получилось, только это не правильно: я теперь и через кнопку и через /yes попадаю в это место кода ))
72
Позже)
TamTamBot для питона ✔️
75
При нажатии на кнопку вызывается команда. (если я не ошибаюсь)
не всегда, если бы мне нужна была команда, то было бы проще... а мне нужно на выходе yes/no или 1/0 неважно, главное чтоб я смог выполнить условие
74
есть метод get_yes_no_buttons , но по аналогии мне не удалось
а вот про это у Сергея надо спросить. Самому интересно.
67
Но опять таки, про кнопки в этой библиотеке я мало что знаю.
82
cmd_handler вызывается только при вводе определенных команд, а у меня кнопки должны появится после ввода произвольного текста, ну а что вызывается при их нажатии не пойму ...
При нажатии на кнопку вызывается команда. (если я не ошибаюсь)
TamTamBot для питона ✔️
78
Таким же способом, вроде как
cmd_handler вызывается только при вводе определенных команд, а у меня кнопки должны появится после ввода произвольного текста, ну а что вызывается при их нажатии не пойму
TamTamBot для питона ✔️
128
есть метод get_yes_no_buttons , но по аналогии мне не удалось
101
для двух кнопок 2 cmd_handler'a
115
Таким же способом, вроде как
TamTamBot для питона ✔️
102
cmd_handler обрабатывает команды /start /help и т.д а вот свои кнопки как обработать?
120
Насколько я знаю, кнопки запускают cmd_handler_.
TamTamBot для питона ✔️
103
нет условие выполнить, если да выполняем определенный код, нет - ждем следующего сообщения боту
102
А ты хочешь текст отправить?
TamTamBot для питона ✔️
99
У Сергея в tamtambot есть пример кнопок.
такого примера нет (или я не разобрался), у него для меню есть - тут все получилось
TamTamBot для питона ✔️
103
это понятно, но ведь мы пытаемся использовать уже написанную библиотеку
105
У Сергея в tamtambot есть пример кнопок.
99
мне это не очень помогло )
При нажатии на кнопку на адрес webhook уходит json, в нем смотри значение payload
TamTamBot для питона ✔️
107
У кнопки есть payload
мне это не очень помогло )
TamTamBot для питона ✔️
103
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 для питона ✔️
101
кнопки сделал так, но мне кажется что это не совсе правильно:
113
У кнопки есть payload
TamTamBot для питона ✔️
104
точнее кнопки добавил, только не пойму как обрабатывать нажатия
TamTamBot для питона ✔️
103
не могу добавить кнопки да нет ну и обработать их нажатие
101
ну это уже другая история)
TamTamBot для питона ✔️
100
вобщем это не проблема, главное я суть уловил, если что аналогично поотключаю
TamTamBot для питона ✔️
103
но твои команды при этом работают )
TamTamBot для питона ✔️
102
да список исчез полностью, включая мои команды
102
Вот так должно сработать: в своём классе делаешь def get_commands(self): return []