Pull to refresh
26
1.6
Алексей Айларов @aylarov

User

Send message
Вы по-моему неправильно поняли. Запрос функции (media_session_access_url) вернет сразу URL на запись, когда этот URL будет сформирован. Про потенциальный URL даж комментировать не хочется… Вы же понимаете что URL записи формируется только в случае запуска в сценарии записи я надеюсь?
или есть возможность все же получить урл с записью после вызова сценарий с бэкенда (делаем http запрос для запуска сценарий, делаем http запрос для получения урла записи)?

Есть, я же написал что можно делать потом HTTP-запросы к медиа-сессии по адресу media_session_access_url, которые на стороне сценария будут вызывать voximplant.com/docs/references/appengine/AppEvents.HttpRequest.html

На стороне сценария будет:
VoxEngine.addEventListener(AppEvents.HttpRequest, function (e) {
    // в e.path будет строка запроса , которая идет после media_session_access_url, можно там передавать название вызываемой функции, как вариант.
    return record_url;
}


Да вроде все вполне просто (если нужно писать разговор 2х соединенных звонков, то все это делается у любого одного из них):

var record_url;
call.addEventListener(CallEvents.RecordStarted, handleRecordStarted);
call.record();

function handleRecordStarted(e) {
   record_url = e.url;
}
В сценарии можно получить URL записи из voximplant.com/docs/references/appengine/CallEvents.RecordStarted.html, параметр url. Бэкенд может вызывать функции сценария через media_session_access_url, передавая туда параметры, которые будут приходить сюда voximplant.com/docs/references/appengine/AppEvents.HttpRequest.html, соответственно возвращать данные можно просто сделав return из хэндлера этого события.
Можно прямо массив в JSON передать, в чем проблема?
Отладчик работает, чтобы началась сессия отладки нужно сделать HTTP-запрос StartScenario. Сессия запускается на платформе или по факту HTTP-запроса (в случае callback-сценария) или по факту звонка пришедшего на платформу.
Оператору необязательно делать свой VoxImplant, это ему не особенно и нужно на самом деле, можно подключить к VoxImplant SIP-транки свои и делать все что необходимо.
Коллеги, рекомендую обратить внимание на VoxImplant, в России уже рядом компаний используется, есть уже вся необходимая интеграция с телефонной инфраструктурой, и писать на Javascript большинству проще чем на Erlang :)
Отлавливаете событие недозвона (http://voximplant.com/docs/references/appengine/CallEvents.Failed.html) и по его факту инициируете следующий вызов. На одну сессию можно сделать не более 10 звонков.
Ну в целом идея такая, что эти данные клиент должен вводить :) в форме авторизации. Но есть и другой вариант — voximplant.com/docs/references/websdk/VoxImplant.Client.html#loginWithOneTimeKey, вместо пароля используется специальный хэш, который считается у вас на сервере после получения ключа.
Если захотите интегрировать телефонию с ним, то есть отличный вариант
Именно так и сделать, указать его вторым параметров в функции callPSTN
В каком формате вы его указываете в методе callPSTN?
Не обязательно, купить номер — это один из вариантов, второй — валидировать уже существующий у вас, придет автоматизированный вызов с кодом для валидации.

Мы не ограничиваем количество вызовов, 100-150 звонков в течение дня — это очень незначительная нагрузка для нашей инфраструктуры :)
Это номер платформы в России по умолчанию, чтобы был другой номер надо поменять сценарий, а именно в VoxEngine.callPSTN указать второй параметр. Надо учесть что абы какой номер подставлять нельзя. Сначала нужно его авторизовать в разделе CallerIDs
После HTTP-запроса StartScenarios в облаке запустится данный сценарий и сделает звонок сначала на 1 номер, а потом на другой и соединит их.
account_id — это один из вариантов, вместо него можно указать account_name или email-адрес. Мы знаем, что наша дкоументация далека от совершенства на данный момент, мы работаем над ее улучшением и продолжим писать статьи как в блоге, так и на Хабре. Комментарии очень помогают сделать платформу лучше.
В посте есть про это отдельно
свой api_key можно узнать в разделе Profile
Спасибо за замечание, сейчас создадим тикет и постараемся поправить в самое ближайшее время.
Ваш вектор уже давно реализован такими компаниями как Twilio, Plivo, Tropo и многими другими, включая Zingaya (см. VoxImplant)

Information

Rating
1,469-th
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity