BaileysEx.Connection.Frame (baileys_ex v0.1.0-alpha.9)

Copy Markdown View Source

Pure helpers for WhatsApp's 3-byte length-prefixed transport frames.

Summary

Functions

Decodes a continuous stream of noise/frame data into distinct payloads. Returns {extracted_frames, remaining_buffer}.

Encodes a binary payload with a 24-bit length prefix.

Types

encode_error()

@type encode_error() :: :frame_too_large

Functions

decode_stream(buffer)

@spec decode_stream(binary()) :: {[binary()], binary()}

Decodes a continuous stream of noise/frame data into distinct payloads. Returns {extracted_frames, remaining_buffer}.

encode(payload)

@spec encode(binary()) :: {:ok, binary()} | {:error, encode_error()}

Encodes a binary payload with a 24-bit length prefix.