Amplify JS API Documentation
    Preparing search index...

    Interface EventsChannel

    interface EventsChannel {
        close(): void;
        publish(event: DocumentType, pubOptions?: EventsOptions): Promise<any>;
        subscribe(
            observer: SubscriptionObserver<any>,
            subOptions?: EventsOptions,
        ): EventsSubscription;
    }
    Index

    Methods

    • Experimental

      API may change in future versions

      Close channel and any active subscriptions

      Returns void

      const channel = await events.connect("default/channel")

      channel.close()
    • Experimental

      API may change in future versions

      Publish events to a channel via WebSocket

      Parameters

      • event: DocumentType

        JSON-serializable value or an array of values

      • OptionalpubOptions: EventsOptions

        request overrides: authMode, authToken

      Returns Promise<any>

      void on success

      const channel = await events.connect("default/channel")

      await channel.publish({ some: "data" });
      // event batching
      await channel.publish("default/channel", [{ some: "event" }, { some: "event2" }])
      // authMode override
      await channel.publish({ some: "data" }, { authMode: "userPool" });

      on error

    • Experimental

      API may change in future versions

      Subscribe to Events

      Parameters

      • observer: SubscriptionObserver<any>

        observer callback handlers { next: () => {}, error: () => {}}

      • OptionalsubOptions: EventsOptions

      Returns EventsSubscription

      const channel = await events.connect("default/channel")

      channel.subscribe({
      next: (data) => { console.log(data) },
      error: (err) => { console.error(err) },
      })
      // authMode override
      channel.subscribe({
      next: (data) => { console.log(data) },
      error: (err) => { console.error(err) },
      }, { authMode: 'userPool' })