The EncryptedEventBroker ensures that we provide a single encrypted event to bridges from potentially multiple /sync responses. The broker is also responsible for starting these syncs depending on which users can read the room.

More broadly speaking, the bridge handles encrypted events currently by listening over the AS stream for encrypted messages, and then spinning up a /sync in order to read the message. In order to decrypt them, we proxy these requests through https://github.com/matrix-org/pantalaimon.

+-------------------+ | Homeserver | +--------+----------+ ^ | Proxy | | +--------+----------+ | Pantalaimon | +--------+----------+ ^ /sync requests | | +--------+----------+ | Bridge | +-------------------+

Constructors

Methods

  • Called when the bridge gets an event through an appservice transaction.

    Parameters

    Returns Promise<boolean>

    Should the event be passed through to the bridge.

  • Start a sync loop for a given bridge user

    Parameters

    • userId: string

      The user whos matrix client should start syncing

    Returns Promise<void>

    Resolves when the sync has begun.

  • Parameters

    • loginFlows: {
          flows: {
              type: string;
          }[];
      }
      • flows: {
            type: string;
        }[]

    Returns boolean

Generated using TypeDoc