useSubscription
useSubscription calls the subscribe method from liveProvider when mounted. It is useful when you want to subscribe to a Realtime channel.
Refine uses this hook internally in data hooks to subscribe Realtime data. You can refer liveProvider's Integrated Hooks section for more information.
Usage
import { useSubscription } from "@refinedev/core";
useSubscription({
channel: "channel-name",
types: ["event-name", "another-event-name"]
onLiveEvent: (event) => {},
dataProviderName: "default",
});
Properties
useSubscription will be passed to the subscribe method from the liveProvider as a parameter. You can use the following properties of this method while subscribing to a channel.
channel required
Channel name to subscribe to.
onLiveEvent required
Callback that is run when new events from the subscription arrive.
types
Type of events to subscribe. "\*" means all events. By default, it subscribes to all events.
enabled
You can disable the subscription by setting this prop to false and vice versa. By default, it is enabled.
params
You can pass any additional parameters to the liveProvider's subscribe method.
Hooks that use useSubscription internally send the query's parameters' (pagination, meta, sort, filters, etc.) information along with this prop.
For more information on which hooks use
useSubscriptioninternally, refer to the LiveProvider's "Integrated Hooks" section→
dataProviderName
You can pass the name of the data provider to use for the subscription. By default, it uses the "default" data provider.