Получить статус подключения Pusher в режиме реального времени

Я использую Pusher.com для настройки уведомлений в реальном времени. Я предпочитаю использовать его для синхронизации таблиц в реальном времени.

Но иногда это не работает из-за проблем с подключением. Поэтому я хочу проверить, активен ли pusher connect или нет. Я использую Laravel для этой системы, и я отобразил статус с помощью значка (зеленый и красный значок).

Вот код, который я написал в файле blade.php

    var pusher = new Pusher('dfgfg', {
                cluster: 'us3',
                encrypted: true
            });

            pusher.connection.bind('connected', function() {
                $('#pusheron').css('display','flex');
                $('#pusheroff').css('display','none');
            });
            pusher.connection.bind('error', function() {
                $('#pusheron').css('display','none');
                $('#pusheroff').css('display','flex');
            });

Это то, что я сделал сейчас. Но иногда работает некорректно. Я был бы рад, если бы кто-нибудь научил меня другому способу получения статуса подключения к толкателю в режиме реального времени. С уважением


person GlobalKnowledge    schedule 07.04.2020    source источник


Ответы (1)


Pusher генерирует события при изменении состояния соединения. Вы можете использовать это для обнаружения изменений в режиме реального времени и обновления отображения состояния.

pusher.connection.bind('state_change', function(states) {
  // states = {previous: 'oldState', current: 'newState'}
  $('div#status').text("Channels current state is " + states.current);
});

См. https://pusher.com/docs/channels/using_channels/connection#connection-states.

person doydoy    schedule 08.04.2020
comment
Спасибо @doydoy за ответ. Я просто хотел получить статус подключения или отключения. Вроде работает в штатном режиме. Но если я сплю ПК с включенным браузером. (Соединение было включено, а значок был зеленым) После того, как я разбудил компьютер, зеленый значок остается, даже если сеть еще не отключена. Есть ли способ решить эту проблему? - person GlobalKnowledge; 08.04.2020