diff options
author | joe <joe@jerkface.net> | 2014-03-10 22:44:21 -0400 |
---|---|---|
committer | joe <joe@jerkface.net> | 2014-03-10 22:44:21 -0400 |
commit | e0869b7109ac5cb8902e0718c315869e3f135866 (patch) | |
tree | 322f9df827f9aaafe9c51b54f3a0f095dbb250ba /Presence | |
parent | 6725df5d9a557e7086fa0e6dfaf282768876e1e1 (diff) |
prefer roster-name to canonical name if possible.
Diffstat (limited to 'Presence')
-rw-r--r-- | Presence/XMPPServer.hs | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/Presence/XMPPServer.hs b/Presence/XMPPServer.hs index 9059a4c0..efd865d8 100644 --- a/Presence/XMPPServer.hs +++ b/Presence/XMPPServer.hs | |||
@@ -16,8 +16,6 @@ module XMPPServer | |||
16 | , cloneStanza | 16 | , cloneStanza |
17 | , LangSpecificMessage(..) | 17 | , LangSpecificMessage(..) |
18 | , peerKeyToText | 18 | , peerKeyToText |
19 | , peerKeyToResolvedName | ||
20 | , peerKeyToResolvedNames | ||
21 | , addrToText | 19 | , addrToText |
22 | , sendModifiedStanzaToPeer | 20 | , sendModifiedStanzaToPeer |
23 | , sendModifiedStanzaToClient | 21 | , sendModifiedStanzaToClient |
@@ -185,7 +183,7 @@ data XMPPServerParameters = | |||
185 | , xmppRosterOthers :: ConnectionKey -> IO [Text] | 183 | , xmppRosterOthers :: ConnectionKey -> IO [Text] |
186 | , xmppSubscribeToRoster :: ConnectionKey -> IO () | 184 | , xmppSubscribeToRoster :: ConnectionKey -> IO () |
187 | -- , xmppLookupClientJID :: ConnectionKey -> IO Text | 185 | -- , xmppLookupClientJID :: ConnectionKey -> IO Text |
188 | , xmppTellClientNameOfPeer :: ConnectionKey -> IO Text | 186 | , xmppTellClientNameOfPeer :: ConnectionKey -> [Text] -> IO Text |
189 | , xmppDeliverMessage :: (IO ()) -> Stanza -> IO () | 187 | , xmppDeliverMessage :: (IO ()) -> Stanza -> IO () |
190 | , xmppInformClientPresence :: ConnectionKey -> Stanza -> IO () | 188 | , xmppInformClientPresence :: ConnectionKey -> Stanza -> IO () |
191 | , xmppInformPeerPresence :: ConnectionKey -> Stanza -> IO () | 189 | , xmppInformPeerPresence :: ConnectionKey -> Stanza -> IO () |
@@ -240,12 +238,6 @@ peerKeyToText :: ConnectionKey -> Text | |||
240 | peerKeyToText (PeerKey { callBackAddress=addr }) = addrToText addr | 238 | peerKeyToText (PeerKey { callBackAddress=addr }) = addrToText addr |
241 | peerKeyToText (ClientKey { localAddress=addr }) = "ErrorClIeNt0" | 239 | peerKeyToText (ClientKey { localAddress=addr }) = "ErrorClIeNt0" |
242 | 240 | ||
243 | peerKeyToResolvedName :: ConnectionKey -> IO Text | ||
244 | peerKeyToResolvedName k@(ClientKey { localAddress=addr }) = return "ErrorClIeNt1" | ||
245 | peerKeyToResolvedName pk = do | ||
246 | ns <- peerKeyToResolvedNames pk | ||
247 | return $ maybe (peerKeyToText pk) id (listToMaybe ns) | ||
248 | |||
249 | 241 | ||
250 | wlog :: String -> IO () | 242 | wlog :: String -> IO () |
251 | wlog s = putStrLn s >> hFlush stdout | 243 | wlog s = putStrLn s >> hFlush stdout |
@@ -1343,9 +1335,6 @@ sendRoster query xmpp replyto = do | |||
1343 | NetworkOrigin k _ -> Just k | 1335 | NetworkOrigin k _ -> Just k |
1344 | LocalPeer -> Nothing -- local peer requested roster? | 1336 | LocalPeer -> Nothing -- local peer requested roster? |
1345 | flip (maybe $ return ()) k $ \k -> do | 1337 | flip (maybe $ return ()) k $ \k -> do |
1346 | jid <- case k of | ||
1347 | ClientKey {} -> xmppTellClientHisName xmpp k -- LookupClientJID xmpp k | ||
1348 | PeerKey {} -> xmppTellClientNameOfPeer xmpp k | ||
1349 | hostname <- xmppTellMyNameToClient xmpp | 1338 | hostname <- xmppTellMyNameToClient xmpp |
1350 | let getlist f = do | 1339 | let getlist f = do |
1351 | bs <- f xmpp k | 1340 | bs <- f xmpp k |
@@ -1354,6 +1343,9 @@ sendRoster query xmpp replyto = do | |||
1354 | subscribers <- getlist xmppRosterSubscribers | 1343 | subscribers <- getlist xmppRosterSubscribers |
1355 | solicited <- getlist xmppRosterSolicited | 1344 | solicited <- getlist xmppRosterSolicited |
1356 | subnone0 <- getlist xmppRosterOthers | 1345 | subnone0 <- getlist xmppRosterOthers |
1346 | jid <- case k of | ||
1347 | ClientKey {} -> xmppTellClientHisName xmpp k -- LookupClientJID xmpp k | ||
1348 | PeerKey {} -> xmppTellClientNameOfPeer xmpp k (Set.toList buddies) | ||
1357 | let subnone = Set.union solicited subnone0 \\ Set.union buddies subscribers | 1349 | let subnone = Set.union solicited subnone0 \\ Set.union buddies subscribers |
1358 | let subto = buddies \\ subscribers | 1350 | let subto = buddies \\ subscribers |
1359 | let subfrom = subscribers \\ buddies | 1351 | let subfrom = subscribers \\ buddies |