{ # Фронт-энд бота "jabber": { # Если не задан, будет localhost "server": "jabber.tld", # Если не задано - 5222 для нешифрованного соединения или для starttls и 5223 для голого (старорежимного) ssl "port": 5222, # Включить шифрование "ssl": true, # Это более современный протокол и как раз на нём работет большинство jabber-серверов, порт 5222, # jabber.ru по этому протоколу как-то странно работает, если его включить, я получаю # tls: first record does not look like a TLS handshake "starttls" : true, # Не проверяем сертификаты по-умолчанию. # Вам правда хочется всё это проверять? Там по идее могут быть всякие Lets Encrypt, которые хоть и работают, но # создают кучу проблем "ssl_verify": false, # Позволять авторизацию логин-паролем по незашифрованному каналу связи "insecureallowunencryptedauth": false, # Таймаут установления соединения с сервером, в секундах. 10 секунд, если не задано. "connection_timeout": 10, # Задержка перед пере-коннекчиванием. 3 секунды, если не задано. "reconnect_delay": 3, # Промежуток между пингами сервера, для определения его живости. По-умолчанию 60 секунд. # Пинги посылаются, если в течение этого времени не было активности со стороны сервера. "server_ping_delay": 60, # Промежуток между пингами muc-ов. По-умолчанию 900 секунд. (Согласно рекомендации в xep-0410.) # Пинги посылаются, если в течение этого времени не было активности со стороны muc-а. "muc_ping_delay": 900, # Сколько ждать перед переджоиванием к комнате. По-умолчанию, 3 секунды. "muc_rejoin_delay": 3, # Ping-to-ping splay delay. Варьируемая задержка между пингами, чтобы не набирать высокий message rate. # По-умолчанию, 3 секунды. Под капотом преобразуются в миллисекунды. Важна для пингов MUC-ов, особенно, # если их МНОГО. "ping_splay_delay": 3, # Ник бота, с которым он будет заходить в комнаты "nick": "buny", # Уникальная часть jid-а, специфичная для клиента "resource" : "Лунная призма", # Имя пользователя для авторизации на сервере "user": "buny@jabber.tld", # Пароль для авторизации "password": "secret", # Список JID-ов, которым позволено управлять ботом (например, давать отмашку на rehash). # В списке jid-ы без resource-а. # Если не задано ни одного мастера, то бот сам себе мастер. "bot_masters": [ "luna@earth.tld" ], # Jabber-каналы, к которым бот попробует присоединиться при старте "channels": [ "my_channel@conference.jabber.tld", "another_channel@conference.jabber.tld" ], # Статус, с которым бот запускается. (если всё нормально, этот статус будет видать только в логах сервера и # на долю секунды он промелькнёт у всех в ростере, у кого бот в знакомых. Может отсуствовать, тогда статус будет # пустой строкой "startup_status": [ "bunny bot is starting" ], # Статус, который демонстрируется во время работы бота, как xa # (по задумке - extended away, на практике, к away обычно отношения не имеет) "runtime_status": { # Сам текст статуса, может отсустствовать, тогда статус - это пустая строка "text": [ "Тот, кто не знает силу пешек, не имеет права ходить королевой.", "Когда ты пройдешь сквозь мрак беспомощности и попадешь в мир надежды, тогда ты преодолеешь все преграды.", "По-моему, тебе очень хочется стать уткой по-пекински!", "If a soldier’s pride means hurting one another, I don’t want it.", "Without the bad times, we wouldn’t appreciate the good times.", "I’ll just warn you now, I don’t know how to use a computer.", "Thinking isn’t going to get us anywhere.", "Вместо того, чтобы произносить речи, лучше бы подумала, что ты будешь делать дальше.", "Да как ты смела разгадать мой замысел?! Я же целую ночь не спала, пока его придумала. Верни мне мой сон!", "Не волнуйся, жизнь намного скучнее, чем ты себе её представляешь.", "Я бы завела котёнка, но у меня уже есть Луна и она жрёт как лошадь.", "Звезда нашей надежды никогда не исчезнет. Пока она горит, всё будет в порядке. Мы не сможем проиграть", "Голова с хвостиками… Не вмешивайся в наши дела! Играть в войну — это опасно" ], # Период смены статуса, сек. Если параметра нет или он выставлен в 0, ротации не будет # 3 дня "rotation_time": 259200, # Рандомная составляющая, добавляемая к периоду смены статуса, сек. # 4 дня "rotation_splay_time": 345600 }, # Задержка перед баном, миллисекунды. Иногда сервер может подтормаживать на моменте бана. Jabber.ru так делает. # В этом случае бан не записывается в банлист комнаты. "ban_delay": 600, # Произносим ли что-то пафосное в момоент бана "ban_phrases_enable": false, # Пафосные фраза, произносимые перед баном "ban_phrases": [ "Во имя Луны, я накажу тебя!", "Сила Луны, проснись!", "Мы — воительницы справедливости!", "Любовь и справедливость победят всегда!", "Я буду защищать этот мир до последнего вздоха!", "Мысли о любви делают нас сильнее!", "Никогда не сдавайся, даже если все кажется безнадежным!", "Мы можем преодолеть любые трудности, если будем вместе!", "Любовь — это самая мощная сила во Вселенной!", "Верь в себя и свою силу!", "Красавица-воин Сейлор Мун, покоряющая сердца!", "Мы несем свет и надежду в этот мир!", "Луна, дай мне силу!", "Мысли о друзьях дают мне силу!", "Мы боремся за мир и справедливость!", "Мы всегда найдем путь к победе!", "Наша дружба — это наша сила!", "Мы — защитницы мира, и ничто не остановит нас!", "Любовь — это то, что делает нас сильнее!", "Мы сражаемся за будущее всех живых существ!", "Мы всегда будем вместе, независимо от трудностей!", "Мы — сестры по духу и воительницы справедливости!", "Мы несем свет и надежду в этот мир!", "Любовь — это самое важное чувство во Вселенной!", "Мы сражаемся за справедливость и защищаем тех, кто слабее!", "Мы — герои, которые противостоят тьме!", "Луна, дай мне силу стать красавицей-воином!", "Мы сражаемся за мир и равенство!", "Мы — надежда для всех, кто нуждается в защите!", "Мы — воительницы справедливости, и ничто не остановит нас!" ] }, # command sign символ-суффикс команды, например !rehash или !help. По-умолчанию "!". "csign" : "!", # Многословность логов. Если не задано, то info. Debug - ДЕЙСТВИТЕЛЬНО вербозный уровень логгирования. # Есть ещё trace :) "loglevel": "debug", # Если не задан, логи идут в STDOUT "log": "/var/log/buny-jabber-bot/error.log" }