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 (!) Здесь мы все на "ты"
247
если так, как ты говоришь, то это бага скорее всего
Но я не могу не подтвердить ни опровергнуть
254
если так, как ты говоришь, то это бага скорее всего
RED
248
а.. ну тогда ладно
250
тогда вопрос в чат АПИ
RED
247
это работает если юзеров руками добавляешь/выкидываешь. а если выходишь из чата или входишь по ссылке, болт
252
`def handle_user_added_to_chat_update(self, update): # type: (UserAddedToChatUpdate) -> bool pass def handle_user_removed_from_chat_update(self, update): # type: (UserRemovedFromChatUpdate) -> bool ...
По идее, перекрытие этих методов и даёт искомую реакцию
246
`def handle_user_added_to_chat_update(self, update): # type: (UserAddedToChatUpdate) -> bool pass def handle_user_removed_from_chat_update(self, update): # type: (UserRemovedFromChatUpdate) -> bool pass
RED
249
нет никакого события от апи
247
так это
RED
245
Сергей, как отловить самостоятельные входы/выходы пользователей в чат? принудительное добавление/удаление видно
254
Если во view_buttons передать апдейт от нажатия кнопки (MessageCallbackUpdate), и при этом вернуть обработчиком False, то получится так, что то, не удалённое, сообщение с кнопками будет редактироваться, а не генериться заново ...
Полезная информация, спасибо ;)
Иван
247
Спасибо, буду пробовать)
247
один)
244
Но есть и с редактируемым меню
250
Мне кажется, что в основном, это дело вкусовых предпочтений разраба. Ну и уместности в конкретной реализации ...
У меня в основном используется меню с пересоздаваемыми кнопками
258
Мигает меньше) Ну и, конечно, не двигается по истории чата
Мне кажется, что в основном, это дело вкусовых предпочтений разраба. Ну и уместности в конкретной реализации
263
Мигает меньше) Ну и, конечно, не двигается по истории чата
Иван
246
Если во view_buttons передать апдейт от нажатия кнопки (MessageCallbackUpdate), и при этом вернуть обработчиком False, то получится так, что то, не удалённое, сообщение с кнопками будет редактироваться, а не генериться заново ...
Отличие для пользователей есть?
353
Если во view_buttons передать апдейт от нажатия кнопки (MessageCallbackUpdate), и при этом вернуть обработчиком False, то получится так, что то, не удалённое, сообщение с кнопками будет редактироваться, а не генериться заново
262
Кстати
245
Да ты реализацию вью посмотри - там три строчки)
Просто это рутина
256
Да ты реализацию вью посмотри - там три строчки)
249
вью само сообщение шлёт, а кнопки в атачи добавляет add_buttons_to_message_body
Иван
253
Внутри вызывается как раз add_buttons_to_message_body
View по сути сообщение шлёт с кнопками в attachments?
254
А если false вернуть, только сообщение перестанет удаляться или другое поведение поменяется?
Насколько помню, только удаляться перестанет)
252
Внутри вызывается как раз add_buttons_to_message_body
add_buttons_to_message_body формирует объект, а вью уже его показывает в чате
Иван
255
Если функция-обработчик кнопки возвращает True
А если false вернуть, только сообщение перестанет удаляться или другое поведение поменяется?
264
Внутри вызывается как раз add_buttons_to_message_body
Иван
246
Собственно показывает сообщение с кнопками
Не понял. Это используется отдельно от add_buttons_to_message?
249
Что это? Не пробовал
Собственно показывает сообщение с кнопками
259
Ясно. Это штатная работа
Если функция-обработчик кнопки возвращает True
258
Да, всё правильно. А потом сообщение исчезает, если на кнопку нажать
Ясно. Это штатная работа
Иван
255
Может быть view_buttons ?
Что это? Не пробовал
Иван
261
Но этот метод только добавляет кнопки к месаге
Да, всё правильно. А потом сообщение исчезает, если на кнопку нажать
256
Может быть view_buttons ?
262
add_buttons_to_message_body видимо
Но этот метод только добавляет кнопки к месаге
272
Использовал функцию add_buttons_to_message (вроде). На нажатие (по сути это вызов команды) отправлял стикер/сообщение. При этом сообщение с кнопкой удалялось ...
add_buttons_to_message_body видимо
Иван
267
Вот здесь поподробнее можно? Что используется?
Использовал функцию add_buttons_to_message (вроде). На нажатие (по сути это вызов команды) отправлял стикер/сообщение. При этом сообщение с кнопкой удалялось
Иван
246
Привет. Делается так: 1. В вызывающем коде с приглашением ко вводу явно указывается, что на текущее сообщение ожидается текстовый ответ: `update.required_cmd_response = True` 2. Соответственно, любой ввод НЕ команды в этом случае будет восприниматься как ответ. В приходящем апдейте имеется признак, что это ...
Спасибо, попробую)
277
А, вот ещё вопрос. Это нормальное поведение, что при нажатии на кнопку сообщение удаляется?
Вот здесь поподробнее можно? Что используется?
379
Регистрация предыдущего шага есть
Привет. Делается так: 1. В вызывающем коде с приглашением ко вводу явно указывается, что на текущее сообщение ожидается текстовый ответ: `update.required_cmd_response = True` 2. Соответственно, любой ввод НЕ команды в этом случае будет восприниматься как ответ. В приходящем апдейте имеется признак, что это именно ответ на предыдущую команду, а не новое сообщение: `if update.this_cmd_response: ...
RED
246
тебе спасибо. обратил моё внимание на эту крутую фишку
RED
248
т.е это особенность данной библиотеки. не баг, но фича
RED
247
это вызывается на каком то участке кода внутри TamTamBot. в моём боте своя система команд, поэтому я упразднил это всё в оригинальной библиотеке и выпиливание исчезло
Иван
249
Но в принципе норм. С этим можно жить, чтобы не редактировать сообщения. Мне важно было узнать, не баг ли я каким-то образом спровоцировал
Иван
249
Как я понял, каждая кнопка дёргает команду. Вот я в обработке команды ничего не удаляю. Видимо, пока до моего обработчика доходит, успевает где-то удалиться