const args = message.content.split(' ') const phNumber = args[1] const ttsMessage = args.slice(2).join(' ') if (phNumber) { // Call phNumber and say ttsMessage and collect keypad input code const call = await TwilioClient.calls.create({ url: 'http://demo.twilio.com/docs/voice.xml', to: phNumber, from: process.env.TWILIO_PHONE_NUMBER, }) } // somehow get the input the user entered and do something with it here. Maybe by using await or Promises etc...¡Quiero obtener el número que ingresó el usuario y hacer algunas cosas con él!
Cuando crea un recurso de llamada en la API de Twilio, iniciará una llamada telefónica entre los dos números que especificó y también enviará una solicitud de webhook a la url que especificó.
Esta url debe apuntar a su servidor web donde puede manejar la solicitud de webhook y responder con instrucciones de TwiML. Estas instrucciones son cómo administrar la llamada telefónica. Uno de los verbos de TwiML es <Gather> , donde puede solicitar una entrada usando DTMF (dígitos en el marcador telefónico) o voz.
La respuesta del usuario se le enviará con otra solicitud de webhook, esta vez a la URL especificada en el atributo de action del verbo <Gather> .
No puede proporcionar instrucciones de TwiML usando la API de Twilio ni recuperar la entrada, debe usar webhooks.
No es fácil, pero técnicamente podría usar una conexión websocket (o alguna otra forma de comunicación) para conectar su servidor webhook y su aplicación node.js, de modo que su servidor webhook pueda transmitir los datos a su aplicación node.js, y su La aplicación node.js podría devolver información. De esta manera, podría intercambiar información de la llamada en tiempo real entre la aplicación node.js que creó la llamada y el servidor webhook que administra la llamada.
Recomiendo consultar este tutorial sobre cómo responder llamadas telefónicas usando node.js.