TamTamBot для питона ✔️
120 •
@pyBotApiFrm
Обсуждение, вопросы, предложения.
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
(!) Здесь мы все на "ты"
RED
226
ye z yt pyf.? ytcrjkmrj rjcnskmyj/ e ,l ljk;ys ,snm dcnhjtyyst chtlcndf? vyt rf;tncz
m4dn355
225
то есть перед записью в бд a = str(a), а после чтения a = exec(a), да?)
m4dn355
224
ща попробую))
RED
224
или json
RED
226
ы = exec(ы), например
RED
227
самое простое, разверни строку в словарь с помощью exec
m4dn355
216
так, если напрямую из переменной с типом 'PhotoAttachment' передавать в attachments=, то все работает, остался самый главный вопрос...
как переменную с типом 'PhotoAttachment' добавить в субд. пользуюсь postgresql и столбец с тем куда я пытаюсь то что внутри этой переменной сохранить имеет тип text и при попытке записи он меня отправляет в пешее эротическое, что 'PhotoAttachment' нельзя записать. ...
RED
217
не знаю.. то ли баг, то ли фича
RED
221
кстати оно работает только в привате. а в публичном чате получается {"code":"chat.denied","message":"chat.send.msg.no.permission.generic"}
m4dn355
219
только у меня)
m4dn355
216
оно же не может просто так не работать)
m4dn355
217
таааак, теперь внимательно ща пересмотрю)
RED
223
eval TTBOT.send_message(NewMessageBody('ололо', attachments=HLOL), user_id=source[1])
RED
217
попробовал.. работает
RED
218
ой
RED
224
exec HLOL = [{'payload': {'photo_id': 891176815428,
'token': 'E8KigUCLlbsb3PLLHm2BJYp16aw/8QDJkOBe1GUT8b9tVByxhano+S3hVA8hnZ3/+KuSHiDaOXSQcd7NSTTn4ipccEHtH+wulw1266MrA3I=',
'url': 'https://i.mycdn.me/image?id=891176815428&t=0&plc=API&viewToken=JCY0RhJSgQdkQSjUoafHHw&tkn=*UUjYJu7N54Y9DNPnLnrEk_jRemw'},
'type': 'image'}]
m4dn355
215
и я все равно получаю
HTTP response body: {"code":"proto.payload","message":"attachments.null: invalid type"}
m4dn355
204
вот он у меня получается передает туда
[{'payload': {'photo_id': 891176815428,
'token': 'E8KigUCLlbsb3PLLHm2BJYp16aw/8QDJkOBe1GUT8b9tVByxhano+S3hVA8hnZ3/+KuSHiDaOXSQcd7NSTTn4ipccEHtH+wulw1266MrA3I=',
'url': 'https://i.mycdn.me/image?id=891176815428&t=0&plc=API&viewToken=JCY0RhJSgQdkQSjUoafHHw&tkn=*UUjYJu7N54Y9DNPnLnrEk_jRemw'},
'type': 'image'}]
m4dn355
204
то же самое...
RED
205
attachment = update.message.body.attachments
m4dn355
204
тоооочно))) сейчас попробую))
RED
214
эм.. а зачем ты урл вытаскиваешь. попробуй тело аттача целиком
m4dn355
202
понятно, что инвалид тайп, так а какой должен он быть чтоб быть валид? где-то я что-то упускаю...
m4dn355
198
не, так тоже не дает...
HTTP response body: {"code":"proto.payload","message":"attachments.null: invalid type"}
m4dn355
199
ща попробую)
m4dn355
200
attachmentS
m4dn355
204
а стоп)
m4dn355
198
неа...
HTTP response body: {"code":"proto.payload","message":"attachment: invalid type"}
m4dn355
197
ща попробую)
RED
201
а если так.. attachments=[data['url']]
m4dn355
199
Добрый день) задача стоит создать бота которые делает отложенные посты в канале. бот спрашивает у пользователя сначала время, записывает время, затем спрашивает тело поста и пользователь пишет собственно сам пост, который нужно отложенно публиковать.
с отправкой текста я разобрался, а вот с прикрепленными файлами понять не могу что и как делать.
Получая ответ от пользователя сначала записываю текс ...
302
Вопрос непонятен. Что делаешь и что не получается при этом?
Иван
199
urllib3 вроде как в requirements)
Иван
205
А сразу его нельзя получить?
Иван
208
С помощью этого кода вроде как можно файл достать. https://stackoverflow.com/questions/17285464/whats-the-best-way-to-download-file-using-urllib3
Иван
198
А как аудиофайлы грузить? В attachments приходит url только?
207
Ну и, есть подозрение, что туториал не читал
192
По такому предположению, я предполагаю, что нет понимания вот какого момента:
в ботапи всё асинхронно, и тем более кнопки. Т.е. вот так - "нажал - отправилось" обрабатывается как:
нажал - пришло событие боту - в процессе обработки этого события направилось ...
Вот здесь посмотри
205
Никак. С ботами в принципе подход другой
199
А как получить текст нового сообщения в этом цикле?
199
Тут вообще ерунда написана. Этот цикл либо никогда не выполнится, либо будет выполняться бесконечно.
Текст то в update.message.body.text не меняется
205
А как обновить состояние для последнего полученного сообщения? То есть я хочу получить текст нового сообщения, а он мне присылает текст старого. ...
Тут вообще ерунда написана. Этот цикл либо никогда не выполнится, либо будет выполняться бесконечно.
206
А как обновить состояние для последнего полученного сообщения? То есть я хочу получить текст нового сообщения, а он мне присылает текст старого.
198
Привет. Как можно получить текст полученного сообщения?
update.text не исполняется.
И сейчас при использовании вашего аудиобота и выполнении некоторых команд моего приходит сообщение {бот @FileToAudio (Аудио из файлов (Audio from files))} Ваш запрос (menu) невозможно выполнить прямо сейчас (т.к. выполняются сервисные работы ...
Это эксепшн. Смотри логи
199
Привет. Как можно получить текст полученного сообщения?
update.text не исполняется.
И сейчас при использовании вашего аудиобота и выполнении некоторых команд моего приходит сообщение {бот @FileToAudio (Аудио из файлов (Audio from files))} Ваш запрос (menu) невозможно выполнить прямо сейчас (т.к. выполняются сервисные работы и др.). Попробуйте позже. (диалог <бот @FileToAudio (Аудио из файлов (Audi ...