Listeners doesn't seems to works
Opened this issue · 3 comments
Hello,
I'm facing an issue using the javascript sdk.
Here is the code :
`
const useChatEvents = () => {
const dispatch = useAppDispatch();
const isConnected = useAppSelector(messagingSelector.selectIsConnected);
useEffect(() => {
const onDisconnectedListener = () => {
dispatch(messagingActions.setIsConnected(false));
console.log('Disconnected listener');
};
const onReconnectListener = () => {
console.log('Reconnect listener');
};
const onMessageListener = (userId: any, message: any) => {
console.log(userId, message);
};
const onSentMessageListener = (messageLost: any, messageSent: any) => {
console.log(messageLost, messageSent, 'ici');
};
const onDeliveredStatusListener = (messageId: any, dialogId: any, userId: any) => {
console.log(messageId, dialogId, userId);
};
const onReadStatusListener = (messageId: any, dialogId: any, userId: any) => {
console.log(messageId, dialogId, userId);
};
if (isConnected) {
QB.chat.onReadStatusListener = onReadStatusListener;
QB.chat.onDeliveredStatusListener = onDeliveredStatusListener;
QB.chat.onSentMessageCallback = onSentMessageListener;
QB.chat.onDisconnectedListener = onDisconnectedListener;
QB.chat.onReconnectListener = onReconnectListener;
QB.chat.onMessageListener = onMessageListener;
}
return () => {
if (QB.chat) {
QB.chat.onReadStatusListener = undefined;
QB.chat.onDeliveredStatusListener = undefined;
QB.chat.onSentMessageCallback = undefined;
QB.chat.onDisconnectedListener = undefined;
QB.chat.onReconnectListener = undefined;
QB.chat.onMessageListener = undefined;
}
};
}, [isConnected]);
};
`
I'm connected and have initialized quickblox, I can get dialogs, dialog messages, send message,.....
I don't receive any response from the listeners apart from QB.chat.onDisconnectedListener.
Is there any solution or some configuration that I'm missing ?
Good day. The part of your code looks logical. But have you seen JS Chat Example? We have implemented a lot of requested listeners.
https://github.com/QuickBlox/quickblox-javascript-sdk/blob/gh-pages/samples/chat/js/listeners.js
Yes I have seen this but for me it is not working.
The only one I can make work is the disconnect listener.
The rest are not firing !
For example the onMessageListener is not firing when I get a new message from an other user
Hello,
When I try to join a dialog I have an error code 403 with the message unknown issue.
However I'm connected to the chat and can get dialogs and messages !
I think it is linked with the problem of listeners not firing.
I'm joining the dialog like that:
`try {
console.log('Joining', dialogId);
const dialogJid = await QB.chat.helpers.getRoomJidFromDialogId(dialogId);
console.log('jid', dialogJid);
const res = await new Promise((resolve, reject) => {
QB.chat.muc.join(dialogId, (error: any, result: any) => {
if (error) {
console.log({ error });
reject(error);
return;
}
console.log({ result });
resolve(result);
});
});
console.log('joined', res);
} catch (err) {
console.log(err);
}`