Не получаю никаких событий от Asternet.Ari на FreePbx - PullRequest
0 голосов
/ 21 декабря 2018

Я установил FreePbx, и он работает, я могу делать звонки в АТС и из АТС.Я включил REST API и добавил пользователя и пароль.Я клонировал Asternet.Ari https://github.com/skrusty/AsterNET.ARI.

Программа запускается, и я получаю подключенное событие:

            // Create a new Ari Connection
            ActionClient = new AriClient(
                new StasisEndpoint("192.168.1.14", 8088, "userId", "password"),
                "HelloWorld");

            // Hook into required events
            ActionClient.OnStasisStartEvent += c_OnStasisStartEvent;
            ActionClient.OnChannelDtmfReceivedEvent += ActionClientOnChannelDtmfReceivedEvent;
            ActionClient.OnConnectionStateChanged += ActionClientOnConnectionStateChanged;
            ActionClient.OnChannelCallerIdEvent += ActionClient_OnChannelCallerIdEvent;

            ActionClient.Connect();
  ........

    private static void ActionClientOnConnectionStateChanged(object sender)
    {
        Console.WriteLine("Connection state is now {0}", ActionClient.Connected);
    }

ActionClient подключен.Затем я звоню на добавочный номер, но ничего не происходит.Я не получаю никаких других событий.Должно ли событие вызываться при вызове какого-либо расширения?Не уверен, правильно ли я установил АТС.Я не получаю никаких звонков, когда я звоню со смартфона или из-за пределов локальной сети на мобильный телефон.

1 Ответ

0 голосов
/ 10 февраля 2019

Хорошо, ваш Asterisk Ari подключается, но чтобы получить что-то в нем, вам нужно создать Extension, чтобы ваш вызов перешел в приложение Stasis.

Пожалуйста, отредактируйте ваш файл extensions.conf со следующей информацией

exten => _1XX,1,NoOp()
same => n,Stasis(HelloWorld,PJSIP/${EXTEN}, 45)
same => n,Hangup()

Этот скрипт сначала проверяет любой входящий номер, который начинается с 1, будет передан вашему скрипту ARI.HelloWorld - это имя приложения, поэтому оно уже есть в вашем скрипте.Теперь при поступлении любого звонка будет отображаться вся информация о вашем сокете.Теперь вы должны обработать эту информацию для любой конкретной задачи.\

...