Как выводить номер телефона без обновления страницы?

asterisk при съеме трубки оператором отправляет get запрос с данными на адрес laravel контроллера, после чего тот должен через response()->json() отправлять обработанные данные на открытую в браузере страницу (для этого на странице js fetch использовал, чтобы ловить ответ), однако, данные приходят обратно в телелефонию, что ли. Но сам факт, что ничего не ловится.

Дополнительно:

если астерикс шлет запрос, то астерикс ответ и получит через response()->json(). в каком месте тут возник браузер?

  • Дмитрий, это и так понятно. Я сюда за ответом пришел, как этого избежать
  • Владислав, класть ответ во что нибудь постоянное, и оттуда читать запросом браузера? А какие еще могут быть варианты?
  • Из браузера запрос приходит в один скрипт, а запрос из asterisk'а - в другой. Даже если это один файл, на каждый запрос запускается его отдельная копия. Каждый скрипт, соответственно, отвечает тому, кто послал запрос.
    Вариантов решения несколько.
    1. Websocket. Пишется отдельный сервер, который слушает события Asterisk (AMI/ARI) и рассылает сообщения подключенным клиентам.
    2. LongPull. Клиент делает долгий запрос. Asterisk вызывает скрипт, меняющий состояние. Скрипт с запросом от клиента обнаруживает изменение состояния и отвечает клиенту.
    3. Периодический опрос. Asterisk вызывает скрипт, меняющий состояние, клиент периодически вызывает скрипт, возвращающий текущее состояние.

     

    Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.

     

      • Как выводить номер телефона без обновления страницы?Есть ответ
      • 07.04.2024
      Ответить

      Для вывода номера телефона без обновления страницы можно использовать технологию AJAX (Asynchronous JavaScript and XML). AJAX позволяет отправлять запросы на сервер без перезагрузки страницы и обновлять только определенные части содержимого.

      Прежде всего, необходимо создать скрипт на сервере, который будет отвечать на AJAX запрос и возвращать номер телефона. Для примера, давайте использовать PHP для этой цели.

      Создадим файл с именем `getPhoneNumber.php` с следующим содержимым:

       

      Теперь создадим HTML страницу, на которой будет отображаться номер телефона. Добавим кнопку, при нажатии на которую будет отправляться AJAX запрос на сервер для получения номера телефона.

      ```html

      Получение номера телефона без обновления страницы

      $(document).ready(function(){
      $("#getPhoneBtn").click(function(){
      $.ajax({
      url: "getPhoneNumber.php",
      type: "GET",
      success: function(response){
      $("#phone").text("Номер телефона: " + response);
      },
      error: function(){
      $("#phone").text("Ошибка загрузки номера телефона");
      }
      });
      });
      });

      ```

      В данном примере используется библиотека jQuery для удобной работы с AJAX запросами. При нажатии на кнопку "Получить номер телефона" отправляется GET запрос на скрипт `getPhoneNumber.php`, который возвращает номер телефона. После успешного получения ответа, номер телефона отображается на странице без перезагрузки.

      Таким образом, вы можете получить номер телефона и отобразить его на странице без необходимости обновления всей страницы.

    Оставить комментарий