Tkabber Wiki

Плагины/AntiSPIM
Login

Плагины/AntiSPIM

Материал из Tkabber Wiki

Идея взята из отложенного протокола JEP-0159 Spim blocking но там предлагают реализовать на серверах а тут в Ткаббере. Первый вариант конечно лучше, но протокол то отложен, когда активируют и активируют ли вообще неизвестно.

Суть протокола -- фильтровать все входящие сообщения и презенсы по следующим правилам:

  1. если from есть в ростере, то пропускать.
  2. если from есть в списке jid-ов на которые недавно уходили сообщения (последняя три дня к примеру), то пропускать.
  3. возможен еще конфигурируемый фильтр по серверу. К примеру для всех серверов кроме icq.jabber.ru тоже пропускать.
  4. для всех остальных соообщение/презенс сохранить, а в ответ выслать случайную текстовую капчу, которую можно взять из файлика и ждать ответ некоторое время. Если ответ пришел и он верен -- показать сохраненное сообщение, иначе через некоторое время сохраненное сообщение удалить а JID забыть.

Список JID-ов, на которые отсылались сообщения, список JID-ов которым были высланы капчи, ответы на эти капчи и сами сохраненные сообщения можно хранить на сервере в jabber:x:private (JEP-0049) при этом периодически (можно не по таймеру, а во время очередного обновления данных) удалять записи с истекшим сроком годности.

Еще надо предусмотреть: