improve help
[cloogle-irc.git] / cloogle.icl
index f933b2b..a2735bb 100644 (file)
@@ -48,16 +48,26 @@ process io chan w
 #! io = io <<< ("Received: " +++ resp +++ "\n")
 # ind = indexOf KEY resp
 | ind > 0
-       # cmd = split " " $ rtrim $ subString (ind + size KEY) (size resp - ind) resp
+       # cmd = split " " $ rtrim $ subString (ind + size KEY) (size resp) resp
        #! io =  io <<< ("Received command: " +++ printToString cmd +++ "\n")
        # toSend = case cmd of
                ["stop":_] = Nothing
                ["ping":_] = Just [msg "pong"]
-               ["help":_] = Just [msg "not implemented yet"]
+               ["help"] = Just 
+                       [msg "type !help cmd for command specific help"
+                       ,msg "available commands: help, ping"]
+               ["help":c:_] = case c of
+                       "help" = Just [msg "I will print help text"] 
+                       "ping" = Just [msg "I will reply with pong"] 
+                       _ = Just [msg "Unknown command"]
                [c:_] = Just [msg $ join " " ["unknown command: " , c, ",  type !help to get help"]]
        | isNothing toSend = (io, chan, w)
        # (chan, w) = send (map toString $ fromJust toSend) chan w
        = process io chan w
+| indexOf "PING :" resp > 0
+       # cmd = rtrim $ subString (indexOf "PING :" resp + size "PING :") (size resp) resp
+       # (chan, w) = send [toString $ PONG cmd Nothing] chan w
+       = process io chan w
 = process io chan w
 
 Start :: *World -> *World