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
useSubscription
internally, 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.