Asterisk - click2call Java работает, но занимает 2 шага

Я реализовал метод Java (используя библиотеку Asterisk-Java), который инициирует вызов между двумя пользователями. Алиса звонит и боб приемник. Это работает, но я не знаю почему, это делается в 2 этапа:

  1. Алиса получает звонок от себя.
  2. Если Алиса отвечает на звонок, звонок между ней и Бобом запускается. (= Алиса должна нажать "Принять звонок", чтобы в итоге сделать звонок Бобу.

Есть идеи, почему Алиса сначала получает звонок от себя?

Вот мой код:

public void call(final String user, final String exten) throws IOException, AuthenticationFailedException, TimeoutException {
    OriginateAction originateAction;
    ManagerResponse originateResponse;

    originateAction = new OriginateAction();
    originateAction.setChannel("SIP/" + user);
    originateAction.setContext("work");
    originateAction.setExten(exten);
    originateAction.setPriority(new Integer(1));
    originateAction.setTimeout(new Long(30000));

    // connect to Asterisk and log in
    managerConnection.login();

    // send the originate action and wait for a maximum of 30 seconds for Asterisk to send a reply
    originateResponse = managerConnection.sendAction(originateAction, 30000);

    // and finally log off and disconnect
    managerConnection.logoff();
}

1 ответ

originateAction.setChannel("SIP/" + user);

Это действие запущено первым.

Если вам нужен другой заказ, вы должны сделать это в другом порядке.

Вы можете сделать набор через локальный / канал.

На этот вопрос я отвечал в прошлом месяце 4 или 5 раз.

Для получения дополнительной информации см. Другие подобные вопросы.

Другие вопросы по тегам