Aleksey
Хотя нет, все же я фаундер одного из чатов. Поэтому обязаны уважать мое мнение.
Lex
кстати, может кто таки делал бота с хранением состояния для диалогового режима?
Pavel
Я делал
Pavel
Мы вроде это даже обсуждали
Lex
да вроде, а наработки под NDA?
Pavel
А чего там нарабатывать, это FSM простая
Pavel
Состояние храню в виде строки в базе рядом с пользователем.
Lex
о, точно, вспомнил, да, Я еще говорил, что хочу избежать использование базы
Pavel
Когда боту приходит сообщение, достаем пользователя, если видим что в поле состояния что-то записано, то эту строку мапим на соответствующую функцию/метод/класс и запускаем его.
Pavel
Там же рядом можно хранить сериализованный контекст состояния.
Lex
Ну можно в массиве хранить в переменных.
угу, так и будет, в памяти, пофиг на сохранение между рестартами
Pavel
Ну значит можно в качестве сосояния прямо хранить ссылку на нужный метод, и рядом контекст
Pavel
https://github.com/solyaris/dialogs вот тут можно почитать
Lex
О, спасибо
Anonymous
Всем привет. Собрал в одном месте все чаты для программистов - @Chats_Developers, пользуйтесь на здоровье. Ваш чат у нас тоже есть, не удаляйте это сообщение.
Aleksey
это сообщение.
Aleksey
так для разнообразия.
Dmitrii
😂
Aleksandr
c-c-combo breaker!
Aleksandr
эх, сломалась вся задумка это должна была быть группа с самой длинной цепочкой джоинов
Aleksey
это и есть самая длинная цепочка джойнов
Aleksey
с февраля!
Aleksey
это не нормально
Aleksandr
нифига себе, и правда
ivn
как заблокировать человека. чтобы не видеть его сообщения в чатах? актуально
Aleksey
чорт у меня нет тут права кика :(
Pavel
Это вроде нельзя сделать. Ты можешь заблокировать контакт и не будешь видеть его и он не сможет тебе писать. Но его сообщения в чатах ты все равно видишь всегда.
Aleksey
это можно сделать
Aleksey
просто надо использовать Pidgin какой нить
Aleksey
он может глобально выкусывать сообщения
ivn
хотелось бы средствами Telegram, конечно, ну да ладно, есть решение проще
Aleksey
это вам не irc.
Aleksey
ой. пациент вышел.
Aleksandr
как заблокировать человека. чтобы не видеть его сообщения в чатах? актуально
это сломает хронологию переписки и ты не будешь понимать что происходит в группе
Aleksandr
ибо ты будешь видеть ответы этому человеку от других людей
Aleksandr
и будет не ясно, что здесь нахрен происходит
Зайчатки Разума
Andrey
Что имеете ввиду??
Игнором определённых людей не пользовался, но видел как люди кусками пропадали. Т.е. о наличии определённых людей узнавали только по приветствию от других. Перезапуск только помогал
Pavel
В чате разработчиков телеграма прошел интересный инсайд, что в ближайшем обновлении апи телеграма прибудет метод удаления сообщений. Можно будет наконец-то легко клепать модеративных ботов.
Aleksandr
меня казалось боты и сейчас вырезают всякие стикеры и слова по фильтру, но это не точно и возможно с применением обёрток вокруг tg-cli
Aleksandr
будет здорово, если это упростится
Pavel
Да да, через tg-cli все это очень геморно, это отдельный жирный протокол с кучей заморочек и подключением телефона. А если не соврали насчет нового метода, то это станет тривиальной задачей.
Aleksandr
крутяк
Dmitrii
Как сделать людям хорошо: сначала сделать хуевый протокол, а потом изобрести базовые фичи IRC.
Dima
привет. перерыл весь github, не могу никак найти такого вот бота на python или go, который бы пошел в /var/log/remote/{{ hostname }}/app.log и форвардил мне в телеграм чат последние строчки лога, и чтобы можно было задать ему несколько таких файлов, которые форвардить
Dima
точнее, нашел на Rust: https://github.com/Ralvke/ltg_push
Зайчатки Разума
Dima
не знаете ли случаем такого простого ботика?
Sergey
точнее, нашел на Rust: https://github.com/Ralvke/ltg_push
чем тебе на раст не угодил?
Dima
тем что для его установки / деплоя надо сначала выкатить на узел Rust. если бы это был python - то оставалось бы просто положить файл из git, написать к нему systemd обертку, и задеплоить ансиблом. если go - ну, собрать тогда.
Sergey
на узлу раст не нужен, он работает также как го
Sergey
скомпилил и скинул на серв, всё
Dima
никак не могу смириться с мыслью что деплоить голые бинарники и класть их в git - нормально
Dima
ну а как быть? неужели никому в голову не приходило читать /var/log/app.log и форвардить critical в телеграм?
Sergey
ты видимо не знаешь об артефактах в ci
Dima
не, ci для IAC разворачивать будет жирновастенько.
Dima
*IaC
Dima
https://en.wikipedia.org/wiki/Infrastructure_as_Code
Dima
вот в этом смысле используется аббревиатура
Dima
errbot смотрел ?
https://github.com/errbotio/errbot - оно?
Aleksey
да
Dima
не, что-то не оно. поднял в итоге на Rust бота, govno&palki production, тестирую.
Pavel
Но вообще судя по твоему ТЗ такого бота можно на питоне написать строчек за 30-40
Pavel
без всяких библиотек.
Dima
да я уже задеплоил. разбираюсь как ему подсунуть несколко файлов