mist/websocket

Types

pub type Frame {
  TextFrame(payload_length: Int, payload: String)
  PingFrame(payload_length: Int, payload: String)
  PongFrame(payload_length: Int, payload: String)
}

Constructors

  • TextFrame(payload_length: Int, payload: String)
  • PingFrame(payload_length: Int, payload: String)
  • PongFrame(payload_length: Int, payload: String)
pub type Handler =
  fn(Message, Socket) -> Result(Nil, Nil)
pub type Message {
  TextMessage(data: String)
}

Constructors

  • TextMessage(data: String)
pub type ShaHash {
  Sha
}

Constructors

  • Sha

Functions

pub external fn base64_encode(data: String) -> String
pub external fn crypto_hash(
  hash: ShaHash,
  data: String,
) -> String
pub fn echo_handler(msg: Message, socket: Socket) -> Result(
  Nil,
  Nil,
)
pub fn frame_from_message(message: BitString) -> Result(
  Frame,
  Nil,
)
pub fn frame_to_bit_builder(frame: Frame) -> BitBuilder
pub fn message_to_frame(data: String) -> Frame
pub fn parse_key(key: String) -> String
pub fn send(socket: Socket, data: String) -> Result(
  Nil,
  SocketReason,
)
pub fn upgrade(socket: Socket, req: Request(BitString)) -> Result(
  Nil,
  Nil,
)
pub fn upgrade_socket(req: Request(BitString)) -> Result(
  Response(BitBuilder),
  Request(BitString),
)