@softcose/softchat - v0.1.0
    Preparing search index...

    Class RelaySession

    Serialized relay protocol state machine.

    The host retains WebSocket, persistence, reachability, and retry scheduling.

    Index
    • Complete authentication and replay queued operations.

      Returns void

    • Release native state after the host has closed its transport.

      Returns void

    • Close and forget one subscription.

      Parameters

      • id: string

      Returns void

    • Remove at most limit queued outbound text frames.

      Parameters

      • limit: number = 256

      Returns readonly string[]

    • Queue one bounded batch of signed events for delivery tracking.

      Parameters

      Returns void

    • Consume one relay text frame and return required platform actions.

      Parameters

      • frameJson: string

      Returns readonly Readonly<
          {
              delayMilliseconds: number;
              deliveryState?: | "pending"
              | "inFlight"
              | "accepted"
              | "rejected"
              | "retryable";
              event?: Readonly<
                  {
                      content: string;
                      createdAt: number;
                      id: NostrEventId;
                      kind: NostrEventKind;
                      publicKey: NostrPublicKey;
                      signature: NostrEventSignature;
                      tags: readonly NostrTag[];
                  },
              >;
              frame: string;
              kind: | "openTransport"
              | "sendFrame"
              | "authenticate"
              | "persistEvent"
              | "subscriptionReady"
              | "deliveryChanged"
              | "closeTransport"
              | "scheduleReconnect";
              value: string;
          },
      >[]

    • Add or replace a subscription using canonical filter JSON values.

      Parameters

      • id: string
      • filtersJson: readonly string[]

      Returns void

    • Notify the state machine that the platform transport connected.

      Returns void

    • Notify the session of transport loss and calculate recovery actions.

      Returns readonly Readonly<
          {
              delayMilliseconds: number;
              deliveryState?: | "pending"
              | "inFlight"
              | "accepted"
              | "rejected"
              | "retryable";
              event?: Readonly<
                  {
                      content: string;
                      createdAt: number;
                      id: NostrEventId;
                      kind: NostrEventKind;
                      publicKey: NostrPublicKey;
                      signature: NostrEventSignature;
                      tags: readonly NostrTag[];
                  },
              >;
              frame: string;
              kind: | "openTransport"
              | "sendFrame"
              | "authenticate"
              | "persistEvent"
              | "subscriptionReady"
              | "deliveryChanged"
              | "closeTransport"
              | "scheduleReconnect";
              value: string;
          },
      >[]