La vinculación de cuentas es una función aparte de las otras funciones de vista web disponibles en la plataforma de Messenger. Solo se puede iniciar mediante los botones de inicio de sesión y no desde el menú persistente del bot, los botones de URL ni desde el plugin de chat ni un proceso de una vista web ya abierto.
Los desarrolladores que usan estas funciones ahora pueden obtener el identificador del usuario de forma segura mediante la función getContext()
en las extensiones de Messenger. Después, los bots pueden usar dicho identificador para vincular la cuenta del usuario o personalizar la experiencia.
Actualmente, la vinculación de cuentas solo se admite en la aplicación de Messenger para iOS y Android.
Cuando un usuario inicia una conversación con tu empresa, es posible que quieras identificarlo como un cliente que ya tiene una cuenta en tu negocio. Para ayudarte a ello, hemos creado un protocolo seguro para vincular y desvincular la identidad del usuario de Messenger y la identidad del usuario de tu empresa.
La vinculación de cuentas te permite invitar a los usuarios a iniciar sesión mediante tu propio proceso de autenticación y recibir un identificador de usuario específico de la página (PSID) de Messenger tras la finalización. Puedes ofrecer a los usuarios una experiencia más segura, personalizada y pertinente.
El proceso de vinculación de cuentas sigue unos pasos sencillos.
redirect_uri
y account_linking_token
se anexan a la devolución de llamada registrada.redirect_uri
y anexa un parámetro authorization_code
(definido por ti) para confirmar la vinculación.A continuación, se indica quién puede iniciar la desvinculación de cuentas:
La plataforma de Messenger invoca la URL de vinculación de cuentas cuando un usuario activa dicho proceso. Los parámetros redirect_uri
y account_linking_token
se anexan a la devolución de llamada de la URL.
<yourAccountLinkingUrl> ?account_linking_token=ACCOUNT_LINKING_TOKEN &redirect_uri=CALLBACK_URL
Si la vinculación de cuentas se realiza correctamente, redirige el navegador a la URL especificada en el parámetro redirect_uri
y anexa un parámetro authorization_code
definido por ti para finalizar el proceso. Ten en cuenta que la URL ya puede contener parámetros, por lo que debes anexar el código de autorización como corresponda:
<redirect_uri> &authorization_code=AUTHORIZATION_CODE
Si la vinculación de cuentas no se realiza correctamente, redirige el navegador al valor de redirect_uri
que recibiste como parámetro, pero no anexes el valor de authorization_code
.
Nombre del parámetro | Descripción |
---|---|
| URI de redireccionamiento que añadirá Messenger. Debes redirigir el navegador a esta ubicación al final del proceso de autenticación. Puede contener parámetros con codificación de URL. |
| Identificador de corta duración que pasa Messenger y que tienes que devolver como parte del esquema de redireccionamiento. Este identificador solo es válido durante cinco minutos, está cifrado y es único para cada usuario. |
| Código que proporcionas para confirmar que la vinculación se realizó correctamente. La plataforma de Messenger devolverá este código junto con el PSID del usuario como evento del webhook de vinculación de cuentas. Si no se pasa este parámetro, se cancelará el proceso de vinculación. |
Si la vinculación se realiza correctamente, se activa el evento de vinculación de cuentas para entregar el identificador de usuario específico de la página (PSID).
Debes registrarte en el evento de devolución de llamada de vinculación de cuentas. Si no se acepta este evento de webhook, se cancelará el proceso de vinculación.
En determinados casos, tienes que recuperar el identificador de usuario específico de la página (PSID) durante el proceso de vinculación. Para ayudarte a ello, vamos a proporcionar un extremo de recuperación de PSID que te permitirá obtener el PSID del usuario a partir de un parámetro account_linking_token
válido y sin caducar.
curl -X GET "https://graph.facebook.com/v2.6/me?access_token=PAGE_ACCESS_TOKEN \ &fields=recipient \ &account_linking_token=ACCOUNT_LINKING_TOKEN"
{ "id": "PAGE_ID", "recipient": "PSID" }
En determinados casos, tienes que desvincular el identificador de usuario específico de la página (PSID) de tu back-end mediante programación. Para ayudarte a ello, vamos a proporcionar un extremo de desvinculación de PSID que te permitirá desvincular la cuenta del usuario a partir de un PSID válido.
curl -X POST -H "Content-Type: application/json" -d '{ "psid":"PSID" }' "https://graph.facebook.com/v2.6/me/unlink_accounts?access_token=PAGE_ACCESS_TOKEN"
{ "result": "unlink account success" }
Utiliza la vinculación de cuentas si dispones de un sistema de cuentas de usuario que no es exclusivo de Messenger.
Ofrece a los usuarios la posibilidad de crear una cuenta en Messenger que también esté disponible fuera de esta plataforma.
Solicita a los usuarios que inicien sesión cuando resulte pertinente por contexto, es decir, cuando los usuarios del bot puedan comprobar las ventajas de esta acción.
Piensa en cómo debería comportarse el bot si un usuario rechaza el inicio de sesión.
Muestra una confirmación clara y una bienvenida acogedora tras el inicio de sesión.
No utilices la vinculación de cuentas si solo esperas interactuar con los usuarios a través de Messenger. Puedes almacenar información de las cuentas mediante los identificadores de las cadenas de mensajes.
Si puedes evitarlo, no exijas de entrada la vinculación de cuentas. Deja que los usuarios se familiaricen primero con el bot.