Как совершить звонок через Asterisk с сервера на js?
Как инициировать звонок с сервера node.js и после подключить к звонку пользователя (браузер)?
Имеется настроенный Asterisk, где есть extension 666, который использует trunk провайдера. Для задачи как я понял нужно использовать ARI originate.
axios.post(`.../ari/channels?endpoint=PJSIP/666&extension=8913*******&context=from-internal&priority=1&app=demoapp`);
На клиенте регистрирую пользователя через SIP.js
const ua = new SIP.UserAgent({
autoStart: true,
transportOptions: {server: `wss://***`},
authorizationUsername: '666',
authorizationPassword: '***',
uri: SIP.UserAgent.makeURI(`sip:666@$***`),
delegate: {
onInvite: (session) => {
console.log('onInvite');
session.accept();
},
},
});
const registerer = new SIP.Registerer(ua);
await registerer.register();
Ему прилетает invite, но по факту звонок на указанный номер не просиходит.
Что я делаю не правильно?
Ответы (1 шт):
Автор решения: essle
→ Ссылка
Путем проб различных вариаций запроса нашел тот, который работает:
axios.post(`.../ari/channels?endpoint=PJSIP/8913******@rt-trunk&priority=1&app=demoapp`);
- Номер телефона указывается не в параметре
extension, в самомendpoint - Вместо extension с внутренним номером должен использоваться сам транк провайдера