Как сделать, чтобы socket.io не закрывал соединения, когда приложение находится в фоновом режиме в Angular PWA

socket.on('new-notification', function(data) {

  let room_id = data.room_id;
  var receiver_id = data.receiver_id;
  var booking_request_id = data.booking_request_id;
  var message = {
    to: notification_payload,
    collapse_key: 'green',

    notification: {
      title: 'Tittle',
      body: "New message from  User",
      icon: site_url + 'assets/icons/icon- 72x72.png',
      sound: 'default',
      url: redirect_url,
    },
    data: {
      title: 'Tittle',
      body: "New message from  User",
      icon: site_url + 'assets/icons/icon- 72x72.png',
      sound: 'default',
      url: redirect_url,
    }
  };

  fcm.send(message, function(err, response) {
    if (err) {
      console.log("Something has gone wrong!");
    } else {
      console.log("Successfully sent with response: ", response);
    }
  });
}
});
}
else {

}
}
});
});

У меня есть Angular PWA, который использует Socket.io Node и экспресс-сервер для обмена сообщениями в реальном времени и push-уведомлений с использованием Firebase Cloud Messaging. Обмен сообщениями работает нормально, но проблема в том, что когда пользователь выходит из приложения, он не сможет получать уведомления, а получает их только при активном использовании приложения. Я предполагаю, что Socket io отключается, когда пользователь покидает приложение. Итак, есть ли способ убедиться, что сокет остается активным, даже если приложение работает в фоновом режиме. Я прикрепил свой фрагмент уведомления. Ваша помощь будет очень признательна


person Allan Mupikata    schedule 22.04.2021    source источник
comment
связанный: заголовок stackoverflow.com/questions/58667207/   -  person Mehdi    schedule 22.04.2021


Ответы (1)