summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPiotr Piastucki <leech.miranda@gmail.com>2015-05-18 18:53:46 +0000
committerPiotr Piastucki <leech.miranda@gmail.com>2015-05-18 18:53:46 +0000
commitc12830cc2e7a2ee578fb75bf8f195446d7a1e58f (patch)
tree36843d4d5206efdc6bdc82e12a0ec4edf535b02e
parentf93f5741bc2f8afc855f67b34732ff110c9e62ea (diff)
Send correct capabilities on PUT presence
git-svn-id: http://svn.miranda-ng.org/main/trunk@13682 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
-rw-r--r--protocols/MSN/src/msn_global.h3
-rw-r--r--protocols/MSN/src/msn_misc.cpp10
2 files changed, 7 insertions, 6 deletions
diff --git a/protocols/MSN/src/msn_global.h b/protocols/MSN/src/msn_global.h
index 88e600038e..481080e507 100644
--- a/protocols/MSN/src/msn_global.h
+++ b/protocols/MSN/src/msn_global.h
@@ -741,6 +741,9 @@ struct MsnContact
#define capex_SupportsP4Activity 0x40000000
#define capex_SupportsChats 0x80000000
+#define capexex_SupportsMissedConversations 0x00000001
+#define capexex_SupportsShortCircuit 0x00000020
+
#define NETID_UNKNOWN 0
#define NETID_MSN 1
#define NETID_LCS 2
diff --git a/protocols/MSN/src/msn_misc.cpp b/protocols/MSN/src/msn_misc.cpp
index 80607de098..ac44a8998b 100644
--- a/protocols/MSN/src/msn_misc.cpp
+++ b/protocols/MSN/src/msn_misc.cpp
@@ -771,7 +771,8 @@ void CMsnProto::MSN_SetServerStatus(int newStatus)
if (getByte("MobileEnabled", 0) && getByte("MobileAllowed", 0))
myFlags |= cap_MobileEnabled;
- unsigned myFlagsEx = capex_SupportsPeerToPeerV2;
+ unsigned myFlagsEx = capex_SupportsPeerToPeerV2 | capex_SupportsOfflineIM;
+ unsigned myFlagsExEx = capexex_SupportsMissedConversations | capexex_SupportsShortCircuit;
char szMsg[2048];
/*
@@ -803,21 +804,18 @@ void CMsnProto::MSN_SetServerStatus(int newStatus)
}
char** msgptr = GetStatusMsgLoc(newStatus);
- /* FIXME: This is what Skype client sends */
- myFlags = 0;
- myFlagsEx = cap_SupportsSDrive | cap_SupportsActivities;
int sz = mir_snprintf(szMsg, SIZEOF(szMsg),
"<user>"
"<sep n=\"PE\" epid=\"%s\"><VER>%s</VER><TYP>11</TYP><Capabilities>0:0</Capabilities></sep>"
"<s n=\"IM\"><Status>%s</Status></s>"
- "<sep n=\"IM\" epid=\"%s\"><Capabilities>%u:%u</Capabilities></sep>"
+ "<sep n=\"IM\" epid=\"%s\"><Capabilities>%u:%u:%u</Capabilities></sep>"
"<sep n=\"PD\" epid=\"%s\"><EpName>%s</EpName><ClientType>11</ClientType></sep>"
"<s n=\"SKP\"><Mood>%s</Mood><Skypename>%s</Skypename></s>"
"<sep n=\"SKP\" epid=\"%s\"><NodeInfo></NodeInfo><Version>24</Version><Seamless>true</Seamless></sep>"
"</user>",
MyOptions.szMachineGuid, msnProductVer,
szStatusName,
- MyOptions.szMachineGuid, myFlags, myFlagsEx,
+ MyOptions.szMachineGuid, myFlags, myFlagsEx, myFlagsExEx,
MyOptions.szMachineGuid, szPlace,
msgptr?ptrA(HtmlEncode(*msgptr)):"", GetMyUsername(NETID_SKYPE),
MyOptions.szMachineGuid,