diff --git a/protocols/irc/IrcProtocol.cpp b/protocols/irc/IrcProtocol.cpp index c641382..49e9993 100644 --- a/protocols/irc/IrcProtocol.cpp +++ b/protocols/irc/IrcProtocol.cpp @@ -233,7 +233,9 @@ IrcProtocol::Process(BMessage* msg) meta.AddInt32("im_what", IM_ROOM_METADATA); meta.AddString("chat_id", chat_id); meta.AddInt32("room_default_flags", - ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS); + ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS | ROOM_NOTIFY_DM); + if (_IsChannelName(chat_id) == false) + meta.AddInt32("room_disallowed_flags", ROOM_AUTOJOIN); _SendMsg(&meta); } break; diff --git a/protocols/purple/PurpleApp.cpp b/protocols/purple/PurpleApp.cpp index c3acc18..920215e 100644 --- a/protocols/purple/PurpleApp.cpp +++ b/protocols/purple/PurpleApp.cpp @@ -264,7 +264,7 @@ PurpleApp::ImMessage(BMessage* msg) meta.AddString("chat_id", purple_conversation_get_name(conv)); meta.AddString("chat_name", purple_conversation_get_title(conv)); meta.AddInt32("room_default_flags", - 0 | ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS); + 0 | ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS | ROOM_NOTIFY_DM); if (chat != NULL) meta.AddString("subject", purple_conv_chat_get_topic(chat)); SendMessage(purple_conversation_get_account(conv), meta); diff --git a/protocols/xmpp/JabberHandler.cpp b/protocols/xmpp/JabberHandler.cpp index 8d56e7e..49cd010 100644 --- a/protocols/xmpp/JabberHandler.cpp +++ b/protocols/xmpp/JabberHandler.cpp @@ -244,8 +244,10 @@ JabberHandler::Process(BMessage* msg) BMessage metadata(IM_MESSAGE); metadata.AddInt32("im_what", IM_ROOM_METADATA); metadata.AddString("chat_id", chat_id); - metadata.AddInt32("room_default_flags", 0 | ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS); - metadata.AddInt32("room_disallowed_flags", 0 | ROOM_AUTOJOIN | ROOM_AUTOCREATE); + metadata.AddInt32("room_default_flags", 0 | ROOM_LOG_LOCALLY + | ROOM_POPULATE_LOGS | ROOM_NOTIFY_DM); + metadata.AddInt32("room_disallowed_flags", 0 | ROOM_AUTOJOIN + | ROOM_AUTOCREATE); _SendMessage(&metadata); } break; @@ -1766,8 +1768,8 @@ JabberHandler::handleMUCInfo(gloox::MUCRoom *room, int features, metadata.AddInt32("im_what", IM_ROOM_METADATA); metadata.AddString("chat_id", chat_id); metadata.AddString("chat_name", name.c_str()); - metadata.AddInt32("room_default_flags", - 0 | ROOM_AUTOJOIN | ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS); + metadata.AddInt32("room_default_flags", 0 | ROOM_AUTOJOIN + | ROOM_LOG_LOCALLY | ROOM_POPULATE_LOGS | ROOM_NOTIFY_DM); metadata.AddInt32("room_disallowed_flags", 0 | ROOM_AUTOCREATE); _SendMessage(&metadata); }