diff options
Diffstat (limited to 'xmppServer.hs')
-rw-r--r-- | xmppServer.hs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/xmppServer.hs b/xmppServer.hs index 823e1aba..41f0012e 100644 --- a/xmppServer.hs +++ b/xmppServer.hs | |||
@@ -609,7 +609,17 @@ sendCachedPresence state k = do | |||
609 | sendModifiedStanzaToClient (dup { stanzaFrom=Just from' }) | 609 | sendModifiedStanzaToClient (dup { stanzaFrom=Just from' }) |
610 | (connChan con) | 610 | (connChan con) |
611 | 611 | ||
612 | -- TODO: send local buddies in clientsByUser | 612 | -- Note: relying on self peer connection to send |
613 | -- send local buddies. | ||
614 | return () | ||
615 | |||
616 | clientSubscriptionRequest :: PresenceState -> IO () -> ConnectionKey -> Stanza -> IO () | ||
617 | clientSubscriptionRequest state fail k stanza = do | ||
618 | flip (maybe fail) (stanzaTo stanza) $ \to -> do | ||
619 | -- TODO: resolve hostname | ||
620 | -- TODO: add to solicitors | ||
621 | -- TODO; if already connected, send solicitation | ||
622 | -- TODO: addPeer | ||
613 | return () | 623 | return () |
614 | 624 | ||
615 | main = runResourceT $ do | 625 | main = runResourceT $ do |
@@ -647,6 +657,7 @@ main = runResourceT $ do | |||
647 | , xmppInformClientPresence = informClientPresence state | 657 | , xmppInformClientPresence = informClientPresence state |
648 | , xmppInformPeerPresence = informPeerPresence state | 658 | , xmppInformPeerPresence = informPeerPresence state |
649 | , xmppAnswerProbe = answerProbe state | 659 | , xmppAnswerProbe = answerProbe state |
660 | , xmppClientSubscriptionRequest = clientSubscriptionRequest state | ||
650 | } | 661 | } |
651 | liftIO $ do | 662 | liftIO $ do |
652 | atomically $ putTMVar (server state) sv | 663 | atomically $ putTMVar (server state) sv |