Ответы пользователя по тегу Nginx
  • Как взаимодействуют nginx-push-stream-module и php?

    mrhard
    @mrhard
    web разработчик
    Я рекомендую использовать на фронтэнде JS либу PushStream https://github.com/wandenberg/nginx-push-stream-mo...

    Отправляем сообщение на фронтенд через nginx-push-stream-module сервер
    $message = array('message'=>'Привет!');
        $idChannel = 1; //ID канала
        $nginxPushStreamModuleHost = 'http://localhost/'  //ВАШ СЕРВЕР С nginx-push-stream-module
          //отправка сообщения
          $ch = curl_init();
          curl_setopt($ch, CURLOPT_URL, $nginxPushStreamModuleHost.'pub/'.$idChannel);
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
          curl_setopt($ch, CURLOPT_POST, true);
          curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($message));
          curl_exec($ch);
          print_r(curl_getinfo($ch));
          curl_close($ch);


    Прослушиваем nginx-push-stream-module сервер на фронтенде
    idChannel = 1; //ID канала
    nginxPushStreamModuleHost = 'http://localhost/'; //ВАШ СЕРВЕР С nginx-push-stream-module
    
    pushstream = new PushStream({
                            timeout: 20000,
                            modes: 'eventsource|stream',
                            host:nginxPushStreamModuleHost,
                        
                            useSSL:false 
                            
                          });
    
    pushstream.onmessage = function(json) {
    //Сработает если с сервера что-то пришло пользователю
    alert('О! что-то пришол! Сообщение: '+json.message)
    }
    
    pushstream.addChannel(idChannel);
    pushstream.connect();
    Ответ написан
    1 комментарий