#voip #voice #nexmo #outbound #vonage
#voip #голос #vonage #исходящий
Вопрос:
У моего клиента есть бизнес-аккаунт Vonage, в который входит небольшой штат сотрудников, работающих из дома, использующих жесткие VoIP-телефоны Vonage для звонков клиентам.
Звонки от персонала клиентам автоматически инициируются с сервера с помощью URL-адреса webhook. Этот API webhook устарел (что-то, что Vonage приобрела у Vocalocity), и Vonage издает звуки, что они прекратят его. Вместо этого они нажимают Nexmo.
Документация Nexmo и GitHub содержит примеры того, как выполнять исходящий вызов. Тем не менее, все примеры, похоже, написаны вокруг воспроизведения записи преобразования текста в речь с программного телефона Nexmo #. Это не то, что нужно моему клиенту. Нам нужно инициировать вызов с сервера моего клиента, чтобы персоналу не приходилось вручную набирать номер телефона, чтобы поговорить с клиентом.
Как я могу настроить Nexmo для выполнения вызова с уже существующей учетной записи / номера телефона Vonage?
Я использую Python и написал следующий код:
from nexmo import Client, Voice
import sys
APPLICATION_ID = sys.argv[1]
PRIVATE_KEY = sys.argv[2]
callFrom = sys.argv[3]
callTo = sys.argv[4]
answer_url = 'https://developer.nexmo.com/ncco/tts.json'
client = Client(application_id=APPLICATION_ID, private_key=PRIVATE_KEY)
voice = Voice(client)
response = voice.create_call({
'to': [{'type': 'phone', 'number': callTo}],
'from': {'type': 'phone', 'number': callFrom},
'answer_url': [answer_url]
})
print(response)
Ответ №1:
Чтобы подключить существующий добавочный номер VBC к новому разговору Vonage Voice API, сначала необходимо инициировать разговор с ТСОП, используя в качестве номера виртуально подготовленный номер телефона Vonage from
(подробнее здесь).
Затем вы можете использовать connect
действие в NCCO для подключения добавочного номера VBC к разговору.
Последующий connect
NCCO будет выглядеть следующим образом:
[
{
"action": "talk",
"voiceName": "Russell",
"text": "Hi there, connecting you to your Vonage Business Cloud Extension"
},
{
"action": "connect",
"endpoint": [
{
"type": "vbc",
"extension": "111" // supply your VBC extension here
}
]
}
]