Сейчас моя система обрабатывает входящие/исходящие вызовы, но мне нужно иметь возможность перевести вызов, отключить 1-го оператора от вызова и дождаться, пока какой-либо другой агент выбранного отдела примет вызов.
Я использую TwiML Dial для соединения звонков. Я слышал о библиотеке конференций Twilio, но я не знаю, возможно ли это с конференцией, чтобы оставить клиента в состоянии ожидания в одиночестве, и какой-то агент входит.
вот мои функции конечной точки для входящего и исходящего трафика.
router.post('/outbound', validateTwilioRequest, async (req: express.Request, res: express.Response) => {
const voiceResponse = new VoiceResponse();
voiceResponse.dial({
callerId: req.body.callerId
}, req.body.To);
res.type('text/xml');
res.send(voiceResponse.toString());
});
router.post('/inbound', validateTwilioRequest, async (req: express.Request, res: express.Response) => {
const clientName = req.query.clientName as string
const voiceResponse = new VoiceResponse();
const dial = voiceResponse.dial();
const client = dial.client(clientName)
client.parameter({
name: 'callId',
value: result
})
res.type('text/xml');
res.send(voiceResponse.toString());
});
🤔 А знаете ли вы, что...
Node.js позволяет использовать один и тот же язык (JavaScript) на клиентской и серверной стороне.
Если вы используете Twilio Task Router, то просто определите своего рабочего «contact_uri» в атрибутах, т.е.
{"contact_uri":"client:yourworkernamehere"}
Если вы используете голосовой клиент, убедитесь, что при создании токена доступа клиента при инициализации клиента пользовательского интерфейса (программного телефона) значение идентификатора соответствует имени клиента в contact_uri атрибута worker. например identity = 'yourworkernamehere' при создании токена доступа и "contact_uri":"client:yourworkernamehere
" в атрибуте рабочего.
Конечно, с помощью библиотеки конференций Twilio технически вы можете просто оставить участника в конференц-зале, или лучше использовать функцию удержания конференции, например, легко воспроизводить музыку для удержания: Удержание конференции
Если для вас важно воспроизводить музыку, пока участник ждет, вы можете сделать ложный звонок в эту конференц-зал и использовать TwiML для этого ложного звонка, чтобы воспроизвести музыкальный файл (в идеале 8-битный WAV для наилучшего качества). Под дозвоном вы имеете в виду теплую/холодную передачу второму агенту? Да, конференц-залы упрощают эту задачу, особенно при использовании TaskRouter с инструкциями по конференциям: Концепции конференц-связи Twilio.
Если все еще есть какая-то путаница, дайте мне знать в комментариях, я обновлю этот ответ.