ExWapp.Message.Handler.Receipt (ExWapp v0.1.2)

Copy Markdown View Source

Handles inbound delivery/read receipts and message acknowledgements.

It updates persisted chat status, emits receipt acknowledgements, and translates retry or server errors into session actions without decoding message content.

Summary

Functions

Expands a receipt stanza into one entry per normal or grouped participant receipt.

Functions

handle_ack(node, session, state)

@spec handle_ack(ExWapp.Binary.Node.t(), pid(), map()) :: {:ok, map()}

handle_receipt(node, session, state)

@spec handle_receipt(ExWapp.Binary.Node.t(), pid(), map()) ::
  {:ok, map()} | {:ok, map(), [term()]}

parse_receipts(node)

@spec parse_receipts(ExWapp.Binary.Node.t()) :: [map()]

Expands a receipt stanza into one entry per normal or grouped participant receipt.