Webhooks

So that you receive notifications of events related to your domain users and messages.

Since your domain users and messages are stored in our databases. Callbacks URLs are used to synchronize data stored in our servers with data stored in your database. They also allow you to do custom backgroud tasks when chat events happened such as user status change, sending message, receiving message etc...

Users Presence callback URL

You can retrieve your domain users presence status in real time through the use of a Callback URL. You can then save user's presence status in your database or show the list of online users in your website or filter users by presence status. The feature is not enabled by default, to activate it you must define a valid callback URL and enable feature in your admin panel.

Once activated, for each change of user presence status, our MQTT servers send to the Callback URL this JSON data:

Variable Name

Description

userid

data-user-id of user

status

new user presence status

timestamp

unix timestamp of last user presence status

Below an example in PHP page https://www.votre-domain.com/status-callback.php that retrieves json data sent by MQTT chat.

/* get JSON Post Data */
$json = file_get_contents('php://input');
/* get PHP data Array */
$data = json_decode($json);
/* show userid and status */
echo $data["userid"].":".$data["status"];

$json content example :

{
"userid":1,
"status":"online",
"timestamp":1602511574
}

Messages CallBack URL

To receive real-time notifications whenever a message is sent by users in your domain. You must activate a Callback URL to your website. The feature is not enabled by default, to activate it you must define a valid callback URL and enable feature in your admin panel.

Once activated, for each new message sent, our MQTT servers send to the Callback URL this JSON data.

Variable Name

Description

from_userid

userid of user who send the message

to_userid

userid of user who receive the message

#message

message content

Message data :

Variable Name

Description

id

message id

message

message value

timestamp

unix timestamp

type

message type

p1

Parameter 1

p2

Parameter 2

P3

Parameter 3

Message Type:

Variable Value

Description

0

Text & smileys

1

Stickers

2

Picture from disk

3

Record

4

Picture from cam

5

Audio/Video Notification

Below an example in PHP page https://www.votre-domain.com/messages-callback.php that retrieves json data sent by MQTT chat.

$json = file_get_contents('php://input');
/* get PHP data Array */
$data = json_decode($json);

$data content example :

{
"from_userid":2,
"message":{
"id":138946,
"message":"ok",
"p1":"",
"p2":"",
"p3":"",
"timestamp":1602511586,
"type":0
},
"to_userid":3601
}

Logs

When adding a callback URL, you should add a valid URL reachable by internet. Adding a mal formed or inaccessible URL can cause timeouts and overload of our servers. For this we have planned to disable immediately any callback URL which returns non-reachability or HTTP response codes 401, 403 etc . In this case you must reactivate feature again with a valid URL this time.

In all cases you can supervise last data sets or errors related to yours callback URLs through logs availables in your admin panel.