Hypi facilitates real-time monitoring of the database using Subscription method.
The subscription function monitors the upsert operation on any object of any type. If the mutation (insert or update of data) happens in any field of an object, the server will push the update to all connected clients subscribed to the type for which data was added or updated. The subscription works only on the upsert function execution and not on other mutations.
Hypi implements the GraphQL subscriptions-transport-ws protocol.
The WebSocket endpoint is wss://api.hypi.app/graphql
Suppose you are creating a messaging app. When a sender sends the message, the receiver will receive the message through a subscription. The receiver listens to the changes in the text of the message object of the sender. If the data is inserted in the text field of the message object of the sender, the receiver receives the inserted text.
You may add the
subscription to any field of any data type. The subscription works on the subscribed field only and not on other fields.
Here, we are configuring the subscription on the
name field of the
Author type. This switches on the listener mode of the receiver. This works as a listener/receiver socket.
Open second Hypi GraphQL Playground (editor) on another tab of the browser selecting the same release and same instance. This works as a sender socket. Insert data in the name field.
You will get the notification of this insertion into the previous socket that was listening to this event.
You may perform any number of upsert operation. The upsert event would be notified in the listener tab.
Please note that if you insert data in the
age field of Author1, the insertion notification will not be received.