Update docs
This commit is contained in:
22
DESIGN
22
DESIGN
@@ -9,23 +9,11 @@ Ratelimits.
|
|||||||
Ограничений на количество сообщений в секунду со стороны бота нет. То есть при некоторых настройках сервера, бот может
|
Ограничений на количество сообщений в секунду со стороны бота нет. То есть при некоторых настройках сервера, бот может
|
||||||
быть либо залимитирован, либо кикнут, либо забанен.
|
быть либо залимитирован, либо кикнут, либо забанен.
|
||||||
|
|
||||||
Нотификации.
|
|
||||||
Нотификации реализованы через модуль CHI. Это абстракция над базой данных. В качестве бд выбрана BerkeleyDB.
|
|
||||||
С одной стороны работает разгребальщик, который раз в секунду выгребает все непросроченные события из базы. А с другой -
|
|
||||||
в эту базу складывают события команды и прочие "продюсеры". Нотификации показываются с помощью desktop notification и с
|
|
||||||
помощью сообщений в канал notify.
|
|
||||||
|
|
||||||
Отложенные нотификации.
|
|
||||||
Приватные сообщения от бота. Набор пропущенных ивентов, не полученных в канальчике notify. Хранится в течение
|
|
||||||
retention_days. Показывается в момент джоина в канальчик notify.
|
|
||||||
|
|
||||||
И ещё про нотификации.
|
|
||||||
Нотификации, как правило, сопровождаются звуком, путь до mp3-шки с желаемым аудиоуведомлением можно задать в конфиге,
|
|
||||||
однако проигрываются нотификации в разных системах по-разному. В Windows например, вообщке не произрываются и desktop
|
|
||||||
notification не показываются вообще, потому что у меня такой системы нету. В MacOS звук воспроизводится через afplay, а
|
|
||||||
сами уведомления показываются средствами интерпретатора applescript - osascript. Под GNU/Linux звук воспроизводится
|
|
||||||
первым, что найдётся - mpg123, mpg321, madplay, mp3blaster, а уведомления показываются через notify-send.
|
|
||||||
|
|
||||||
Календарик.
|
Календарик.
|
||||||
Команда cal работает только на Linux и MacOS, предполагается, что на FreeBSD она работает также как и на MacOS, что
|
Команда cal работает только на Linux и MacOS, предполагается, что на FreeBSD она работает также как и на MacOS, что
|
||||||
касается других ос - не имплементировано.
|
касается других ос - не имплементировано.
|
||||||
|
|
||||||
|
Работа с докерным регистри.
|
||||||
|
Бот не умеет больше чем в один регистри.
|
||||||
|
Бот не умеет удалять репозитории из регистри. Если я праивльно помню это делает сам регистри, если в результате уборки
|
||||||
|
мусора в репозитории не осталось тэгов. Но это не точно.
|
||||||
|
|||||||
@@ -28,11 +28,5 @@ bash bootstrap.sh
|
|||||||
|
|
||||||
и всё необходимое будет скачано из интернетов, протестировано и установлено в локальный каталог vendor_perl.
|
и всё необходимое будет скачано из интернетов, протестировано и установлено в локальный каталог vendor_perl.
|
||||||
|
|
||||||
Для воспроизведения desktop notifications на MacOS используется afplay для звукового оповещения и osascript для
|
|
||||||
визуального, это стандартные средства MacOS.
|
|
||||||
|
|
||||||
Для воспроизведения desktop notifications под Linux используется mpg123, mpg321, madplay, mp3blaster, что первое
|
|
||||||
найдётся по этому списку, чтобы воспроизвеcти звук уведомления и send-notify для отсылки команды в нотификатор для
|
|
||||||
отображения уведомления на рабочем столе.
|
|
||||||
|
|
||||||
[1]: https://metacpan.org/pod/AnyEvent::IRC
|
[1]: https://metacpan.org/pod/AnyEvent::IRC
|
||||||
|
|||||||
Reference in New Issue
Block a user