Фильтрование сообщений

Периодически огребаю от гейта jit мессаги вида:

[08:33] Sending message failed.

На гейт на сервере я повлиять не могу, поэтому вопрос такой: как сделать фильтр, который бы такие мессаги блокировал? Т.е. куда и какой код впихнуть ))

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

надыбал сам... может, кому пригодится

Не знаю, как сделать хук в config.tcl, поэтому прописываю прямо в chats.tcl в процедуре

proc chat::add_message {chatid from type body x} {

сразу после объявления переменных такой код:

variable gate_jid

if {$body == "Sending message failed." && [lcontain $gate_jid $from]} {
return
}

А вот в верхнем уровне config.tcl уже прописываем jid'ы гейтов примерно так:

set gate_jid {
jit.jabbus.org
}

Re: надыбал сам... может, кому пригодится

Для стабильной версии Ткаббера имеет смысл добавить в config.tcl такое:

proc filter_trash {connid from id type is_subject subject body err thread priority x} {
  variable gate_jids

  if {$body eq "Sending message failed." && [lcontain $gate_jids $from]} {
    return stop
  }
}

hook::add process_message_hook filter_trash

set gate_jids {
  jit.jabbus.org
}

См. также это и это.

RE:

Спасибо. Этот вариант намного лучше.

Syndicate content