Module

Phoenix

Package
purescript-phoenix
Repository
brandonhamilton/purescript-phoenix

#PHOENIX Source

data PHOENIX :: Effect

The Phoenix effect denotes computations which read/write from/to the Phoenix Channels.

#Socket Source

data Socket :: Type

A Phoenix Socket

#Channel Source

data Channel :: Type

A Phoenix Channel

#Push Source

data Push :: Type

A Phoenix Push object

#Endpoint Source

type Endpoint = String

An Endpoint URL is just a string

#Topic Source

type Topic = String

#Event Source

type Event = String

#Status Source

type Status = String

#Message Source

type Message = { event :: Event, payload :: Foreign, ref :: String, topic :: Topic }

#defaultSocketOptions Source

#reconnectAfterMs Source

#newSocket Source

newSocket :: forall eff. Endpoint -> Options Socket -> Eff (phoenix :: PHOENIX | eff) Socket

Create a new Phoenix Socket

#connect Source

connect :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) Unit

Socket operations

#disconnect Source

disconnect :: forall a eff. Socket -> (Socket -> Eff (phoenix :: PHOENIX | eff) a) -> Int -> String -> Eff (phoenix :: PHOENIX | eff) Unit

#channel Source

channel :: forall eff. Socket -> Topic -> Foreign -> Eff (phoenix :: PHOENIX | eff) Channel

#remove Source

remove :: forall eff. Socket -> Channel -> Eff (phoenix :: PHOENIX | eff) Unit

#sendHeartbeat Source

sendHeartbeat :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) Unit

#flushSendBuffer Source

flushSendBuffer :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) Unit

#makeRef Source

makeRef :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) String

#protocol Source

protocol :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) String

#endPointURL Source

endPointURL :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) String

#isConnected Source

isConnected :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) Boolean

#connectionState Source

connectionState :: forall eff. Socket -> Eff (phoenix :: PHOENIX | eff) ConnectionState

#onOpen Source

onOpen :: forall a eff. Socket -> (Socket -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

Register callbacks

#onMessage Source

onMessage :: forall a eff. Socket -> (Socket -> Message -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

#onSocketClose Source

onSocketClose :: forall a eff. Socket -> (Socket -> String -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

#onSocketError Source

onSocketError :: forall a eff. Socket -> (Socket -> String -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

#join Source

join :: forall eff. Channel -> Eff (phoenix :: PHOENIX | eff) Push

Channel operations

#push Source

push :: forall eff. Channel -> Event -> Foreign -> Eff (phoenix :: PHOENIX | eff) Push

#leave Source

leave :: forall eff. Channel -> Eff (phoenix :: PHOENIX | eff) Push

#rejoinUntilConnected Source

rejoinUntilConnected :: forall eff. Channel -> Eff (phoenix :: PHOENIX | eff) Unit

#canPush Source

canPush :: forall eff. Channel -> Eff (phoenix :: PHOENIX | eff) Boolean

#onChannelClose Source

onChannelClose :: forall a eff. Channel -> (Channel -> Event -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

Register callbacks

#onChannelError Source

onChannelError :: forall a eff. Channel -> (Channel -> String -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

#on Source

on :: forall a eff. Channel -> Event -> (Channel -> Event -> Foreign -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Unit

Listen for messages on a channel

#off Source

off :: forall eff. Channel -> Event -> Eff (phoenix :: PHOENIX | eff) Unit

#send Source

send :: forall eff. Push -> Eff (phoenix :: PHOENIX | eff) Unit

Push operations

#receive Source

receive :: forall a eff. Push -> Status -> (Push -> Foreign -> Eff (phoenix :: PHOENIX | eff) a) -> Eff (phoenix :: PHOENIX | eff) Push
Modules
Phoenix