Enviar Mensajes

Enviar un mensaje como "el usuario"

POST https://api.wannabot.io/v1/conversation/message/user

Éste endpoint se utiliza para continuar una conversación entre un usuario y uno de tus bots.

Headers

Request Body

{
    "status": "ok"
}

WEBHOOK

En caso de haber especificado el parámetro "webhook", Wannabot procesará el flujo de la conversación e irá enviando las interacciones a esa URL de callback a través de un método POST. En el body se incluirán los siguientes parámetros:

{
  // Id de la conversación
  "session_id" : "2c1cc196f6ef3d594343711d",
  // Si es TRUE, indica que es un mensaje de typing, y el parámetro data estará vacío
  "typing": false,
  "bot": {
    // Id del bot publicado,
    "id": "1afc95aa3fc15b000118d69c", 
    // Tipo de bot publicado (web)
    "type": "web",
    // Si el Bot publicado se encuentra activo
    "active": true
  },
  // TRUE si el mensaje es del bot y FALSE si es del usuario
  "is_bot": true,
  // TRUE si el mensaje es del usuario y a FALSE si es del bot
  "is_user": false,
  "data": {
    // En caso de "is_user: true", indica la URL de la imagen enviada por el usuario
    "image": "URL...",
    // En caso de "is_user: true", indica el texto del mensaje enviado por el usuario
    "text": "Mensaje del usuario al Bot",
    // En caso de "is_bot: true", Indica el tipo de la interaccion de Wannabot
    // Posibles: TEXT, IMAGE, HTML, CARDS, LIST, LOCATION, STRIPE_CHECKOUT, PUSH_PERMISSION
    "type": "TEXT",
    // En caso de "is_bot: true", TRUE si la respuesta que llega es un error definido en el flujo de la conversación, debido a que no se cumple ninguna conexión entre interacciones
    "is_error": false,
    // En caso de "is_bot: true", contiene los datos de la estructura de la interacción
    // El detalle los indicaremos en bloques de código aparte.
    "interaction_data": {...}
  }
}

INTERACTION DATA

Como se indica en el bloque de código anterior, Wannabot enviará los datos de las interacciones en función de su tipo. Aquí indicamos la estructura que llegará en función de cada tipo:

TEXT / HTML / STRIPE_CHECKOUT / PUSH_PERMITS:

{
  // Mensaje indicado en Wannabot para esta interacción
  "text": "Hola usuario",
  // Listado de Botones para esta interacción
  "buttons": [{
    // Indica el texto para este botón
    "title": "Texto del bóton",
    // Tipo de botón. Posibles: postback, web_url, phone_number
    "type": "postback", 
    // Indica el payload, en caso de ser un botón de tipo POSTBACK, para este botón
    "payload": "Texto del payload",
    // Muestra el texto indicado en este campo. Puede utilizarse para implementar funcionalidades personalizadas en otras integraciones
    "onclick": "....",
    // Indica la URL, en caso de ser un botón de tipo WEB_URL
    "url": "http://...."
  }],
  // Texto de ayuda para mostrar al usuario en esta interacción
  "placeholder": "Escribe aquí"
}

IMAGE:

{
    // Indica la URL de la imagen cargada en Wannabot para esta interacción
    "image": "http://...."
}

LOCATION:

{
   "location": {
      "title": "Oficina de Wannabot",
      "subtitle": "En Madrid",
      "latitude": 40.4371367,
      "longitude": -3.6896114,
      "image": "https://maps.googleapis.com/maps/api/staticmap?...",
      "url": "https://www.google.com/maps/search/...", 
      "embed": "https://www.google.com/maps/embed/v1/place?..."
   }
}

CARDS:

{
  "template_type": "generic",
  // Indica si las imágenes de las CARDS tienen un formato "paisaje" o "cuadrado"
  "image_aspect_ratio": "horizontal",
  // Listado de CARDS
  "elements": [{
    "title": "Título de esta Card",
    "subtitle": "Subtítulo de esta Card",
    "image_url": "http://....",
    "default_action": {
      // Tipo de botón. Posibles: web_url
      "type": "web_url",
      "url": "http://..."
    },
    // Listado de Botones para esta CARD
    "buttons": [{
      // Indica el texto para este botón
      "title": "Texto del bóton",
      // Tipo de botón. Posibles: postback, web_url, phone_number
      "type": "postback", 
      // Indica el payload, en caso de ser un botón de tipo POSTBACK, para este botón
      "payload": "Texto del payload",
      // Muestra el texto indicado en este campo. Puede utilizarse para implementar funcionalidades personalizadas en otras integraciones
      "onclick": "....",
      // Indica la URL, en caso de ser un botón de tipo WEB_URL
      "url": "http://...."
    }]
  }]
}

Enviar un mensaje como "el Bot"

POST https://api.wannabot.io/v1/conversation/message/bot

Éste endpoint se utiliza para continuar una conversación con un usuario desde uno de tus bots, fuera del flujo de conversación normal que has definido. Esto es particularmente útil cuando desea continuar un flujo de conversación basado en un evento interno que ha tenido lugar... Por ejemplo, realizar una encuesta a los clientes 3 días después de que alguien utilice su servicio.

Headers

Request Body

{
    "status": "ok"
}

Last updated