Bots para Workplace

Creación de bots para Workplace en grupos y chats

Información general

Con las integraciones personalizadas para Workplace, ahora es posible crear potentes bots que pueden interactuar con las personas en los grupos y el chat.

Puedes crear un bot que publique contenido en grupos, responda a preguntas con información adicional o realice una acción cuando se mencione en comentarios en una publicación, todo ello automáticamente. También puedes crear bots que puedan conversar con personas en Work Chat y proporcionar información en tiempo real o gestionar solicitudes con elementos de conversación estructurados, como respuestas rápidas y menús persistentes.

Para crear un bot para tu comunidad, necesitarás un rol de administrador del sistema.

Si no eres un administrador de la comunidad de Workplace, deberás trabajar con un administrador para crear un bot.

Bots como páginas

En Workplace, de manera similar a la plataforma de Messenger, los bots se representan como páginas. Se crea una página automáticamente al crear una aplicación de integración personalizada. Las personas de tu comunidad de Workplace pueden descubrir tu bot e interactuar con él a través de esta página.

Las páginas de bots son públicas de la empresa, de modo que cualquier miembro de una comunidad de Workplace puede ver y etiquetar el bot, así como enviarle mensajes. Sin embargo, en función del nivel de permisos que elijas al crear el bot, es posible que no pueda ver todo el contenido en Workplace ni interactuar con él.

Por ejemplo, si el bot tiene el permiso Leer contenido del grupo, podrá ver el contenido de los grupos. Si el bot no tiene el permiso Publicar en grupos, no podrá responder al contenido de ningún grupo.

Además, las personas solo podrán buscar tu bot y enviarle mensajes en Work Chat si tiene el permiso Enviar mensajes a cualquier miembro.

Bots en grupos

En los grupos, los bots pueden hacer muchas de las cosas que hacen las personas. Esto significa que puedes crear bots que publiquen nuevo contenido, comentar contenido con nueva información e indicar Me gusta en publicaciones para indicar reconocimiento o aprobación.

Los bots también pueden @mencionar a personas para captar su atención y recibir @menciones para iniciar un proceso específico o formular una pregunta.

Por último, los bots pueden suscribirse al grupo y @mencionar webhooks, que ofrecen la posibilidad de supervisar contenido e interactuar con los usuarios de maneras flexibles.

Bots en el chat

Los bots en grupos pueden utilizar y compartir información en un grupo de personas de forma asíncrona, mientras que los bots en el chat son mejores para dirigir la interacción en tiempo real con una sola persona o un grupo definido de personas.

Por ejemplo, un bot de chat se puede utilizar para enviar recordatorios o notificaciones importantes a alguien basados en un evento próximo, como una entrevista o una reunión. Los bots de Work Chat también se pueden utilizar para interactuar con un usuario en una conversación y realizar una acción de seguimiento en función de los comentarios recibidos.

Este modelo de interacción se basa en los mismos conceptos que utiliza la plataforma de Messenger. Como resultado, los bots de Work Chat pueden utilizar funciones como menús persistentes, respuestas rápidas y plantillas para enriquecer la experiencia del usuario.

Chat de bot a usuario

Si un bot tiene el permiso Enviar mensajes a cualquier miembro, podrá enviar un mensaje directo a cualquier persona en Workplace a través de su dirección de correo electrónico o su identificador de Workplace a través de la API de envío de Messenger.

Un bot en la predicción de escritura de un nuevo mensaje

El permiso Enviar mensajes a cualquier miembro también permite al bot participar en las predicciones de escritura de las plataformas de chat de Workplace.

Un bot en la predicción de escritura de un nuevo mensaje

Al suscribirse a los webhooks de mensajes de página, tu bot también recibirá una notificación cuando un usuario le envíe mensajes y podrás crear un flujo de conversaciones combinando el envío y la recepción.

Conversación de bot a usuario

Chat de bot a grupo

Cuando un bot tiene los permisos Enviar mensajes a cualquier miembro y Bot de chat en grupo, puede crear y administrar conversaciones de chat en grupo de varias personas, así como añadirse a estas. Los bots pueden crear nuevas conversaciones de grupo, para lo cual deben especificar una lista de destinatarios, y cambiar el nombre de las conversaciones para crear conversaciones de chat sobre temas específicos con personas específicas.

Una conversación con nombre con personas específicas creada por un bot.

Al activar la asistencia por chat de grupo, tu bot participará en las predicciones de escritura de Añadir personas en una conversación de chat de grupo existente. A continuación, recibirá webhooks de cada mensaje enviado por las personas de esa conversación y podrá responder a esa conversación con su thread ID.

Adición de un bot a un chat de grupo y posterior @mención del bot

Creación de nuevas conversaciones con nombre

Para crear una nueva conversación con destinatarios específicos, realiza una solicitud POST al extremo /me/messages. Para ello, especifica una matriz de recipient IDs y una carga útil de message inicial de la siguiente manera:

POST /me/messages
{
  "recipient": {
    "ids": [<user_ids>]
  },
  "message": <message_payload>
}

Obtendrás una carga útil de respuesta con un thread ID que podrás utilizar para los mensajes de seguimiento.

Si vuelves a utilizar el mismo extremo con la misma lista de destinatarios, se creará una nueva conversación. Para enviar mensajes de seguimiento a una conversación ya creada, realiza una solicitud POST al extremo /me/messages mediante el objeto thread_id en la carga útil recipient, de la siguiente manera:

POST /me/messages
{
  "recipient": {
    "thread_key": <thread_id>
  },
  "message": <message_payload>
}

Para cambiar el nombre de una conversación creada por el bot, realiza una solicitud POST al perímetro /{thread}/threadname, de la siguiente manera:

POST /t_<thread_id>/threadname
{
  "name": "new name"
}

Ten en cuenta que es necesario añadir al objeto thread_id el prefijo "t_" en la ruta del perímetro.

También puedes añadir y eliminar participantes en las conversaciones mediante solicitudes POST o DELETE en el perímetro /{thread}/participants como se indica a continuación:

POST t_<thread_id>/participants
{
  "to": [<user_ids>]
}

DELETE t_<thread_id>/participants
{
  "to": [<user_ids>]
}

Observa que las operaciones en el perímetro /{thread}/participants están disponibles para las conversaciones creadas por la integración.

Recibir menciones en una conversación

Si tu bot se menciona en un mensaje, nuestro webhook enviará la lista de miembros etiquetados en ese mensaje como la carga útil siguiente:

{
    "object":"page",
    "entry":[{
        "id":"746230239054322",
        "time":1539281406974,
        "messaging":[{
            ...
            "message":{
                "mid":"<message id>",
                "seq":2192,
                "text":"@Edu Gomes @Example Bot What's 2+2?"
            },
            "mentions":[{
                "offset":0,
                "length":10,
                "id":"100017376437045"
            },
            {
                "offset":11,
                "length":12,
                "id":"746230239054322"
            }]
        }]
    }]
} 

Socios de plataforma de bots

Workplace tiene varios socios de plataforma de bots que presentan asistencia integrada para los bots en Workplace. Puedes ver la lista de estos socios aquí. Puedes utilizar una de estas plataformas para crear un potente bot sin escribir ni una sola línea de código.

Prácticas recomendadas

Usar el canal adecuado

Al decidir si se van a crear interacciones de grupo o chat para el bot, vale la pena considerar dónde será más útil el bot.

  • Si estás creando un bot con el que varias personas podrán interactuar a la vez o un bot que publicará contenido para que lo vean varias personas, tiene sentido crear un bot que realice publicaciones en grupos y responda a los comentarios y las menciones en publicaciones de grupos.
  • Si creas un bot que necesita alertar a alguien sobre algo inmediato, algo que puede requerir un seguimiento rápido o algo con lo que las personas deben interactuar en privado, debes admitir las conversaciones en Work Chat para el bot.

Una sola aplicación puede gestionar ambos canales. Es posible que haya ocasiones en que, por ejemplo, el bot de tu servicio de ayuda reciba mensajes de Work Chat y otras en que necesite realizar publicaciones en grupos y recibir las respuestas.

Establecer enlaces profundos a bots

Utiliza el formato de enlace https://w.m.me/{page-id} para establecer un enlace directo con un bot de chat en Workplace. Actualmente, la asistencia está disponible en el chat de Workplace cuando se utiliza la web, Android o iOS. En las plataformas para móviles donde la aplicación Chat de Workplace esté instalada, el enlace se abrirá directamente en la aplicación.

Parámetros de referencia

También se puede utilizar un parámetro de referencia para incorporar más información en el enlace. Por ejemplo, este parámetro puede activar el bot para realizar acciones personalizadas en función del usuario que ha hecho clic para llegar al bot.

Para utilizar la función, utiliza el formato de enlace https://w.m.me/{page-id}?ref={referral_parameter}. Esta función se implementa igual que la plataforma de Messenger. Consulta la documentación de Messenger para obtener detalles.

El campo del webhook pertinente es messaging_referrals y requiere una nueva suscripción. Anteriormente, este no era un campo de webhook disponible para las aplicaciones de Workplace, pero ahora podrás suscribirte del modo habitual.

La carga útil del webhook tiene el mismo formato que Messenger, con las diferencias habituales: Workplace utiliza identificadores de usuario específicos de la aplicación, no identificadores específicos de la página. Además, Workplace también proporciona un campo de comunidad en el webhook, con el identificador de la comunidad.

Interacciones de grupo

Una vez que la aplicación se ha suscrito a webhooks, tu bot obtendrá una notificación cuando se mencione en una publicación o un comentario de un grupo. Es importante que el bot responda a las menciones rápidamente. Si el bot tiene que procesar una solicitud antes de responder, resulta útil indicar Me gusta en el comentario para indicar a la persona que le bot sabe que se le ha mencionado.

Si proporcionas información después de la mención en un comentario, añade una cadena de respuestas para que el resto de la conversación de grupo siga fluyendo.

Si el bot tiene que proporcionar información al publicador original, añade un comentario en la propia publicación para que también reciba una notificación.

Interacciones de chat

Las interacciones de bots de Work Chat admiten una funcionalidad parecida a la de la plataforma de Messenger. Incluye botones de respuesta rápida y plantillas para ayudarte a implementar árboles de decisiones en conversaciones de bots.

De este modo, es mucho más fácil utilizar procesos útiles y se reduce la cantidad de escritura que las personas deben realizar, sin necesidad de procesamiento de lenguaje natural sofisticado, lo que simplifica enormemente la internacionalización si creas bots para una plantilla global.