static void received_chat_msg(PurpleAccount *account, const char *sender, const char *msg, PurpleChatConversation *chat, PurpleMessageFlags flags, gpointer null) { const char *nick; PurpleConversation *conv = PURPLE_CONVERSATION(chat); nick = purple_chat_conversation_get_nick(chat); if (g_utf8_collate(sender, nick) == 0) return; if (purple_prefs_get_bool(PREFS_EVENT_CHAT_NICK) && (purple_utf8_has_word(msg, nick))) notify(conv, _("%s said your nick in %s"), sender, purple_conversation_get_name(conv)); else if (purple_prefs_get_bool(PREFS_EVENT_CHAT_MSG)) notify(conv, _("%s sent a message in %s"), sender, purple_conversation_get_name(conv)); }
static void chat_msg_received_cb(PurpleAccount *account, char *sender, char *message, PurpleChatConversation *chat, PurpleMessageFlags flags, PurpleSoundEventID event) { if (flags & PURPLE_MESSAGE_DELAYED) return; g_return_if_fail(chat != NULL); if (purple_chat_conversation_is_ignored_user(chat, sender)) return; if (chat_nick_matches_name(chat, sender)) return; if (flags & PURPLE_MESSAGE_NICK || purple_utf8_has_word(message, purple_chat_conversation_get_nick(chat))) play_conv_event(PURPLE_CONVERSATION(chat), PURPLE_SOUND_CHAT_NICK); else play_conv_event(PURPLE_CONVERSATION(chat), event); }
static void chat_msg_received_cb(PurpleAccount *account, char *sender, char *message, PurpleConversation *conv, PurpleMessageFlags flags, PurpleSoundEventID event) { PurpleConvChat *chat; if (flags & PURPLE_MESSAGE_DELAYED) return; chat = purple_conversation_get_chat_data(conv); g_return_if_fail(chat != NULL); if (purple_conv_chat_is_user_ignored(chat, sender)) return; if (chat_nick_matches_name(conv, sender)) return; if (flags & PURPLE_MESSAGE_NICK || purple_utf8_has_word(message, chat->nick)) play_conv_event(conv, PURPLE_SOUND_CHAT_NICK); else play_conv_event(conv, event); }
static void chat_msg_received_cb(PurpleAccount *account, char *sender, char *message, PurpleChatConversation *chat, PurpleMessageFlags flags, PurpleSoundEventID event) { PurpleConversation *conv = PURPLE_CONVERSATION(chat); if (flags & PURPLE_MESSAGE_DELAYED || flags & PURPLE_MESSAGE_NOTIFY) return; g_return_if_fail(conv != NULL); if (purple_chat_conversation_is_ignored_user(chat, sender)) return; if (chat_nick_matches_name(chat, sender)) return; if (flags & PURPLE_MESSAGE_NICK || purple_utf8_has_word(message, purple_chat_conversation_get_nick(chat))) /* This isn't quite right; if you have the PURPLE_SOUND_CHAT_NICK event disabled * and the PURPLE_SOUND_CHAT_SAY event enabled, you won't get a sound at all */ play_conv_event(conv, PURPLE_SOUND_CHAT_NICK); else play_conv_event(conv, event); }