summaryrefslogtreecommitdiff
path: root/xmppServer.hs
diff options
context:
space:
mode:
Diffstat (limited to 'xmppServer.hs')
-rw-r--r--xmppServer.hs13
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
616clientSubscriptionRequest :: PresenceState -> IO () -> ConnectionKey -> Stanza -> IO ()
617clientSubscriptionRequest 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
615main = runResourceT $ do 625main = 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