Twilio - используйте Gather DTMF с Stream - PullRequest
0 голосов
/ 26 апреля 2020

Я пытаюсь создать систему, которая захватывает мой медиапоток, когда я вызываю входящий номер twilio. Если пользователь нажимает клавишу #, я хотел бы отключить вызов. В моем коде nodejs я обработал запрос ответа на вызов как:

res.send(`
    <Response>
      <Say> Welcome to XYZ </Say>
      <Gather input="dtmf" finishOnKey="#" timeout="60" action="/completed">
          <Stream name="description" url="wss://${req.headers.host}/"/>
      </Gather>
    </Response>
  `);

, и мой завершенный метод объявлен как:

app.get("/completed", (req, res) => res.send(`<Hangup />`));

Но вызов ждет 60 секунд, и медиа не передает поток на событие wss, но отключается при нажатии клавиши #. Принимая во внимание, что если я напишу

res.send(`
    <Response>
      <Say> Welcome to XYZ </Say>
      <Start>
         <Stream name="description" url="wss://${req.headers.host}/"/>
      </Start>
      <Pause length="15" />
      <Gather input="dtmf" finishOnKey="#" timeout="60" action="/completed">
      </Gather>
    </Response>
  `);

, поток медиаданных на соединение wss, но dtmf не работает. Любое предложение, чтобы решить этот сценарий?

...