Parrhesia.Negentropy.Sessions (parrhesia v0.12.0)

Copy Markdown

In-memory NIP-77 session tracking over bounded local event snapshots.

Summary

Types

session_key()

@type session_key() :: {pid(), String.t()}

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

close(server \\ __MODULE__, owner_pid, subscription_id)

@spec close(GenServer.server(), pid(), String.t()) :: :ok

message(server \\ __MODULE__, owner_pid, subscription_id, message)

@spec message(GenServer.server(), pid(), String.t(), binary()) ::
  {:ok, binary()} | {:error, term()}

open(server \\ __MODULE__, owner_pid, subscription_id, filter, message, opts \\ [])

@spec open(GenServer.server(), pid(), String.t(), map(), binary(), keyword()) ::
  {:ok, binary()} | {:error, term()}

start_link(opts \\ [])

@spec start_link(keyword()) :: GenServer.on_start()