Mercurial > ~mikael > mcabber > hg
comparison mcabber/src/hooks.c @ 453:39e173645f9c
External command is called for MUC messages
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Mon, 26 Sep 2005 22:36:18 +0200 |
parents | 03bb57383cea |
children | 33dc3ca6e9ca |
comparison
equal
deleted
inserted
replaced
452:dfd9c62b3a39 | 453:39e173645f9c |
---|---|
78 // XXX We could use an option here to know if we should write GC messages... | 78 // XXX We could use an option here to know if we should write GC messages... |
79 if (!is_groupchat && !(message_flags & HBB_PREFIX_ERR)) | 79 if (!is_groupchat && !(message_flags & HBB_PREFIX_ERR)) |
80 hlog_write_message(jid, timestamp, FALSE, wmsg); | 80 hlog_write_message(jid, timestamp, FALSE, wmsg); |
81 | 81 |
82 // External command | 82 // External command |
83 if (!is_groupchat) | 83 // XXX We should avoid calling the function for history lines in MUC |
84 hk_ext_cmd(jid, 'M', 'R', NULL); | 84 hk_ext_cmd(jid, (is_groupchat ? 'G' : 'M'), 'R', NULL); |
85 | 85 |
86 // We need to rebuild the list if the sender is unknown or | 86 // We need to rebuild the list if the sender is unknown or |
87 // if the sender is offline/invisible and hide_offline_buddies is set | 87 // if the sender is offline/invisible and hide_offline_buddies is set |
88 if (new_guy || | 88 if (new_guy || |
89 (roster_getstatus(jid, NULL) == offline && | 89 (roster_getstatus(jid, NULL) == offline && |
168 arg_type = "MSG"; | 168 arg_type = "MSG"; |
169 if (info == 'R') | 169 if (info == 'R') |
170 arg_info = "IN"; | 170 arg_info = "IN"; |
171 else if (info == 'S') | 171 else if (info == 'S') |
172 arg_info = "OUT"; | 172 arg_info = "OUT"; |
173 | 173 break; |
174 case 'G': | |
175 arg_type = "MSG"; | |
176 arg_info = "MUC"; | |
174 break; | 177 break; |
175 case 'S': | 178 case 'S': |
176 arg_type = "STATUS"; | 179 arg_type = "STATUS"; |
177 if (strchr(imstatus2char, tolower(info))) { | 180 if (strchr(imstatus2char, tolower(info))) { |
178 status_str[0] = toupper(info); | 181 status_str[0] = toupper(info); |