socketio-0.1.1: Web/SocketIO/Event.hs
--------------------------------------------------------------------------------
-- | Functions exposed to end users in CallbackM
{-# LANGUAGE OverloadedStrings #-}
module Web.SocketIO.Event where
--------------------------------------------------------------------------------
import Web.SocketIO.Types
--------------------------------------------------------------------------------
import Control.Applicative ((<$>))
import Control.Monad.Reader
--------------------------------------------------------------------------------
-- | Extracts payload carried by the event
--
-- @
-- `on` \"echo\" $ do
-- payload <- reply
-- liftIO $ print payload
-- emit "echo" payload
-- @
reply :: CallbackM [Text]
reply = callbackEnvPayload <$> ask
--------------------------------------------------------------------------------
-- | Name of the event
getEventName :: CallbackM EventName
getEventName = callbackEnvEventName <$> ask