Проблемы с react native в реальном времени на androide
Разрабатываю приложения на react native, делаю что бы приложения работало в реальном времени, сделал такую связку expo - 49, Laravel, pusher - server.
const connectToWebSocket = async () => {
try {
const ws = new Echo({
broadcaster: 'pusher',
Pusher,
key: appConfig.apiKay,
wsHost: appConfig.backendUrl,
wssHost: appConfig.backendUrl,
wsPort: 6001,
wssPort: 6001,
forceTLS: true,
encrypted: true,
cluster: 'eu',
auth: {
headers: {
Authorization: `Bearer ${props.authToken}`,
},
},
});
const channel = ws.channel('user-online-chat-channel');
channel
.subscribed(() => {})
.listen('UserOnlineChatEvent', (e) => {
set_user_online();
});
let typingTimer;
const channel_typing = ws.channel('typing-message-chat-channel');
channel_typing
.subscribed(() => {})
.listen('TypingMessageEvent', (e) => {
if (e.typingMessageData.companionId === props.userId) {
setTyping(true);
clearTimeout(typingTimer);
typingTimer = setTimeout(() => {
setTyping(false);
}, 500);
}
});
} catch (error) {
console.log('error', error);
}
};
когда запускаю приложения все работает нормально, но когда перехожу в режим сна, потом выхожу с него то adroid перестает слушать канал. Может кто то сталкивался с таким ? Может нужно использовать свой сервер вместо pusher ? Спасибо.