Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

109
Vistas
Carga útil de memoria del canal personalizado de Twilio Autopilot

Estoy creando un chat web y necesito integrar un asistente usando Twilio Autopilot, uso los canales personalizados de Autopilot de la siguiente manera:

  • Envío una solicitud POST a https://channels.autopilot.twilio.com/v2/{AccountSid}/{AssistantSid}/custom/webchat
  • Relleno estos campos en los datos de la solicitud (Idioma=en-US, UserId=user123, Text=Algo)
  • Agrego un parámetro de Memoria en la URL del Asistente

Mi código de fondo:

 // Assistant URL Memory parameter const context = JSON.stringify({ accountHolder: "foo bar", balance: 123 }, null, ""); // Request params const urlencoded = new URLSearchParams(); urlencoded.append("Language", "en-US"); urlencoded.append("UserId", message.Author); urlencoded.append("Text", message.Body); const requestConfig: AxiosRequestConfig = { headers: { "content-type": "application/x-www-form-urlencoded", "accept": "application/json", "authorization" : "Basic " + Buffer.from(accountSid + ":" + authToken).toString("base64") }, method: "POST", url: `https://channels.autopilot.twilio.com/v2/${accountSid}/${assistantSid}/custom/webchat?Memory=${context}`, data: urlencoded }; // Trigger the bot const twilioResponse = this.httpService.request(requestConfig); const result = await lastValueFrom(twilioResponse.pipe(map((response) => response.data)));

Función Twilio:

 exports.handler = async function(context, event, callback) { console.log(event.Memory); const userData = JSON.parse(event.Memory); // Memory does not contains my payload ! return callback(null, { "actions": [ { "say": `Hello ${userData.accountHolder}, your balance is ${userData.balance}` }, { "listen": true } ] }); };

Mi problema es que el parámetro Memoria no se envía a la función.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Tuve un problema similar al tratar de pasar la carga útil y contacté a un soporte de Twilio.

La respuesta que recibí fue: "Según la actualización actual de nuestro equipo de ingeniería, no están pensando en implementar el parámetro Memoria en el punto final V2, ya que hay muchos menos usuarios que lo consumen. Tendrá que usar el punto final V1 para Autopilot si está buscando usar el parámetro de URL "Memoria" para su caso de uso".

Por lo tanto, la URL deberá verse así: https://channels.autopilot.twilio.com/v1/ACxxx/UAxxx/custom/chat?Memory={"CarModel":"Diablo","CarMake":"Lamborghini" ,"CarYear":"2019"}'

about 4 years ago · Juan Pablo Isaza Denunciar

0

Desarrollador evangelista de Twilio aquí.

Hubiera pensado que podría querer codificar la URL de la memoria JSON cuando la agregue a la URL. Prueba esto:

 const context = encodeURIComponent( JSON.stringify({ accountHolder: "foo bar", balance: 123 }, null, "") );
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda