En Facebook API mensajero, cómo prevenir botón de texto devolución de datos de carga útil que se registren a la ventana de chat de clic?

votos
1

TLDR; @ fondo

Me hizo la siguiente pregunta en la sección errores Facebook

NOTA: Esto es más de una sugerencia diseño de la plataforma de un error, ya que no pude encontrar un portal de retroalimentación de Chat API Actualmente estoy construyendo un robot de chat que permite al usuario realizar un seguimiento de un objetivo. Se dirá algo como ¿Has ido a dar un paseo el 12 de julio 2016? y tienen sí / no botones de abajo.
Actualmente el fin de pasar a la intención, el día y el booleano logro que necesito a la plantilla de una cadena como esta == == META conseguido? <<< >>> {} goal_achieved, fecha de seguimiento [[[{date_tracked}]] ] y el uso de expresiones regulares para capturar las variables delimitadas. Este es propenso a error de análisis en otros casos en los que las cadenas de plantilla en la carga útil son variables de entrada del usuario, es decir, si el '{goal_achieved}' fueron reemplazados con la variable objetivo '>> meditado
Se podría utilizar la carga útil de devolución de datos para almacenar una cadena JSON codificados pero el problema con esto es que la cadena de carga se registra en la salida de usuario y cadenas JSON son un poco feo y confuso. Los retos que enfrento podrían remediarse fácilmente si la carga útil no se registra en el lugar del usuario ingrese el texto para el botón para ayudar al usuario a confirmar que se hizo clic en el botón.
Si eso no es posible, ¿hay algún otro consejo para la codificación de datos en el botón de carga útil?

La siguiente respuesta fue ofrecido (Marcos Wiltse)

Hola Justin, Desafortunadamente en este momento nuestra estructura de carga útil no es compatible con la funcionalidad que usted está tratando de poner en práctica. Desde mi entendimiento que desea utilizar la carga útil para informar a su base de si el usuario realiza su 'meta' en esa fecha específica. Yo sugeriría que usted crea su respuesta de carga útil para el botón en su final antes de pasarlo a nosotros, que es básicamente la idea JSON que tenía inicialmente. Sé que esto es un poco engorroso de manejar, pero la respuesta de carga útil pasa de nuevo es independiente del texto que se proporcionó con el hilo mensajero. Yo sugeriría que también intenta desinfectar sus cadenas si le preocupa que un usuario haya proporcionado previamente que le causa un problema con la expresión regular. Usted debe ser capaz de implementar esta funcionalidad si los datos del usuario es verificada antes para evitar cualquier problema con el análisis de expresiones regulares / JSON. Dado que esta es una pregunta aplicación Voy a tener que cerrar este informe como no válida. Si todavía está buscando ideas adicionales y sugerencias concretas para la implementación de este flujo por favor, puesto que nuestra desbordamiento de pila en el que tenemos Facebook Ingenieros y una amplia gama de miembros de la comunidad que también contribuyen. http://facebook.stackoverflow.com/ Tenga cuidado y mejores deseos con su robot mensajero. marca

Esta frase fue particularmente claro:

Sé que esto es un poco engorroso de manejar, pero la respuesta de carga útil pasa de nuevo es independiente del texto que se proporcionó con el hilo mensajero.

TLDR; ¿Alguien puede informarme de cómo prevenir el botón de registro de la cadena de carga para que pueda usarlo para pasar JSON para mi aplicación sin que el usuario verlo?

Publicado el 02/08/2016 a las 18:59
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
1

Desde mi entender que usted está diciendo que cuando se pulsa un botón de la carga útil en lugar de texto del botón está apareciendo.

¿Está la definición de sus botones como este?

    {
      type: "postback",
      title: "View Details",
      payload: "details:12345"
    }

Me gustaría recomendar la eliminación de los caracteres especiales que ensuciaría con el análisis de la carga útil. Mientras los caracteres especiales no son cruciales para la experiencia del usuario Esta es probablemente una buena solución.

Si esto no resuelve el problema:

Se puede añadir una captura de pantalla que muestra el botón que está presionando, y el mensaje de registro que está hablando? Desde mi entender que usted está diciendo que cuando se pulsa un botón de la carga útil en lugar de texto del botón está apareciendo. Ese no es el caso para mí, mi texto botones de muestra cuando se presiona un botón.

Respondida el 03/08/2016 a las 13:24
fuente por usuario

votos
2

Asegúrese de comentar sendTextMessage()en su receivedPostback()llamada:

function receivedPostback(event){
    sendTextMessage(senderID, event.postback.payload);
}
Respondida el 24/10/2016 a las 13:01
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more