-- module Test where
import Control.Concurrent.Chan (Chan, readChan, writeChan)
import Network.XMPP.PontariusXMPP
import Data.XML.Types
import qualified Data.Text as DT
import Data.Maybe
host = "test.pontarius.org"
user = "sprint1"
server = "test.pontarius.org"
port = 5222
resource = "pontarius"
password = ""
main :: IO ()
main =
do (co, ci) <- connect host port -- TODO: In, Out
(jid (Just user) server (Just resource)) password
writeChan co $ presenceEvent DoNotDisturb (presenceStatus "Pontarius XMPP 0.1 Alpha 2 Test")
loop ci
loop :: Chan ClientInEvent -> IO ()
loop c =
do e <- readChan c
processEvent e
loop c
where
processEvent :: ClientInEvent -> IO ()
processEvent (CIEIQGet (i, f, t, e))
| (nameNamespace $ elementName e) /= Nothing &&
(DT.unpack $ fromJust (nameNamespace $ elementName e)) ==
"http://jabber.org/protocol/disco#info" = putStrLn "Disco info!"
| otherwise = putStrLn $ ">>>>>>>>>> " ++ (show e)