allowBots. Коли цей шлях увімкнено, захист від циклічної взаємодії пар не дає двом ідентичностям ботів нескінченно відповідати одна одній.
Захист забезпечує основний обробник вхідних відповідей. Кожен канал, що підтримує цю функцію, перетворює свою вхідну подію на загальні дані: обліковий запис або область дії, ідентифікатор розмови, ідентифікатор бота-відправника та ідентифікатор бота-одержувача. Ядро відстежує пару учасників в обох напрямках (A до B і B до A вважаються тією самою парою), застосовує ліміт у ковзному часовому вікні та блокує пару на період очікування після перевищення ліміту.
Значення за замовчуванням
Захист від циклічної взаємодії пар активний щоразу, коли канал дозволяє повідомленням від ботів надходити до диспетчеризації. Вбудовані значення за замовчуванням:
Захист не впливає на повідомлення від людей, розгортання з одним ботом, фільтрування власних повідомлень або відповіді ботів, які не перевищують ліміт.
Налаштування спільних значень за замовчуванням
Задайтеchannels.defaults.botLoopProtection один раз, щоб надати всім каналам, які підтримують цю функцію, однакову базову конфігурацію. Перевизначення на рівні каналу, облікового запису та кімнати все одно дають змогу окремо налаштовувати відповідні середовища.
enabled: false лише тоді, коли політика вашого каналу навмисно дозволяє розмови між ботами без автоматичного блокування.
Перевизначення для каналу, облікового запису або кімнати
Канали, які підтримують цю функцію, накладають власну конфігурацію на спільні значення за замовчуванням окремо для кожного ключа. Порядок пріоритету, від найвужчої області:channels.<channel>.<room-or-space>.botLoopProtection, коли канал підтримує перевизначення для окремих розмовchannels.<channel>.accounts.<account>.botLoopProtection, коли канал підтримує облікові записиchannels.<channel>.botLoopProtection, коли канал підтримує значення за замовчуванням верхнього рівняchannels.defaults.botLoopProtection- вбудовані значення за замовчуванням
Підтримка каналами
- Discord: нативні дані
author.bot, згруповані за обліковим записом Discord, каналом і парою ботів. - Google Chat: нативні дані
sender.type=BOTдля прийнятих повідомлень від ботів, згруповані за обліковим записом, простором і парою ботів. - Matrix: налаштовані облікові записи ботів Matrix, згруповані за обліковим записом Matrix, кімнатою та налаштованою парою ботів.
- Slack: нативні дані
bot_idдля прийнятих повідомлень від ботів, згруповані за обліковим записом Slack, каналом і парою ботів.