Original Coast Clothing (OC) es una marca de ropa ficticia creada para mostrar las principales funciones de la plataforma de Instagram y ofrecer una experiencia de cliente excelente. Con esta demostración como inspiración, cualquier usuario puede crear una experiencia satisfactoria de compatibilidad de la API de Messenger con Instagram que aproveche la automatización y el servicio de atención al cliente en directo. Se proporcionan el código abierto de la aplicación y una guía sobre cómo implementar la experiencia en el entorno local o el servidor remoto. También se incluye un ejemplo de experiencia de Messenger complementario. Para probarlo ahora, envía un mensaje a @originalcoastclothing o comenta una publicación. |
Esta experiencia utiliza las funciones de la plataforma siguientes. Si decides implementar la experiencia en tu página, el código las utilizará todas:
Al finalizar esta guía, tendrás una aplicación de Instagram completa ejecutándose en el servidor y respondiendo mensajes desde tu cuenta.
Esta experiencia funciona con código abierto. Cualquier usuario puede empezar fácilmente a desarrollar una excelente experiencia de mensajes.
El código se publica en virtud de la licencia de BSD, lo que te permite usarlo de manera gratuita para satisfacer tus necesidades. El código se hospeda en GitHub a modo de referencia adicional.
El objetivo de esta sección es recopilar todos los identificadores e identificadores de acceso necesarios para que la aplicación de Instagram pueda enviar y recibir mensajes correctamente. Antes de empezar, asegúrate de cumplir todos los requisitos que hemos mencionado antes. Llegado este punto, debes tener una página, una aplicación de Facebook registrada y una cuenta profesional de Instagram.
Si acabas de crear una nueva aplicación de Facebook, es probable que se encuentre en modo de desarrollo. Ten en cuenta que las aplicaciones en este modo solo pueden enviar mensajes a usuarios conectados a la aplicación (administradores, desarrolladores y evaluadores). Puedes continuar con esta guía en este modo. Sin embargo, cuando la aplicación esté lista para publicarse, deberá someterse a la revisión de la aplicación para obtener el permiso instagram_manage_messages
. Si quieres obtener más información, consulta Revisión de la aplicación.
Llegado este punto, debes tener lo siguiente:
La experiencia se puede implementar automáticamente en Heroku o Glitch mediante los botones siguientes. Se te pedirá que introduzcas las variables de entorno necesarias para completar la configuración.
Implementación en HerokuImplementación en GlitchUn servicio de tunelización expone tu servidor web local a una URL externa a la que los webhooks de Facebook puede acceder. Existen muchos servicios de este tipo. En este ejemplo, utilizaremos ngrok.
Clona el repositorio en tu máquina local:
git clone https://github.com/fbsamples/original-coast-clothing-ig.git cd original-coast-clothing-ig
Si aún no lo has hecho, instala ngrok mediante una descarga o la línea de comandos:
$ npm install -g ngrok
En el directorio de este repositorio, solicita un túnel al servidor local con tu puerto preferido.
$ ngrok http 3000
La pantalla debería mostrar el estado de ngrok:
Session Status online
Account Redacted (Plan:iuluufkccebegkhifrlgfhudrtbthgln Free)
Version 2.3.35
Region United States (us)
Web Interface http://127.0.0.1:4040
Forwarding http://1c3b838deacb.ngrok.io -> http://localhost:3000
Forwarding https://1c3b838deacb.ngrok.io -> http://localhost:3000
Toma nota de la URL HTTPS del servidor externo que se reenvía a tu máquina local. En el ejemplo anterior, es https://1c3b838deacb.ngrok.io
.
Abre una nueva pestaña de terminal, también en el directorio del repositorio.
$ npm install
Como alternativa, puedes utilizar Yarn:
$ yarn install
Copia el archivo .sample.env
en .env
.
$ cp .sample.env .env
Edita el archivo .env
para añadir todos los valores de tu aplicación y página.
$ node app.js
Ahora deberías poder acceder a la página predeterminada de la aplicación en el navegador en http://localhost:3000.
Confirma que también puedes acceder a la aplicación en la URL externa del paso 2.
Clona el repositorio en tu máquina local:
git clone https://github.com/fbsamples/original-coast-clothing-ig.git cd original-coast-clothing-ig
Si el directorio no es un repositorio Git, crea uno:
$ git init
Initialized empty Git repository in .git/
$ git add .
$ git commit -m "My first commit"
Si todavía no está instalada, descarga e instala la CLI de Heroku.
$ heroku apps:create
Creating app... done, ⬢ mystic-wind-83
Created http://mystic-wind-83.herokuapp.com/ | git@heroku.com:mystic-wind-83.git
Toma nota del nombre asignado a tu aplicación. En este ejemplo, era mystic-wind-83
.
En el panel de aplicaciones de Heroku, busca tu aplicación y define las variables de configuración siguiendo los comentarios del archivo .sample.env
.
Como alternativa, puedes definir variables de entorno desde la línea de comandos de la siguiente manera:
$ heroku config:set PAGE_ID=XXXX
$ git push heroku master
$ heroku logs --tail
Ahora que el servidor está en funcionamiento, el extremo del webhook se encuentra en la ruta /webhook
. En el ejemplo de Heroku anterior, sería http://mystic-wind-83.herokuapp.com/webhook
.
Para configurar tu webhook, sigue la [guía de webhooks para la plataforma de Messenger](https://developers.facebook.com/docs/messenger-platform/webhooks
Después de validar la suscripción del webhook, suscríbete a los eventos siguientes:
Para probar los webhooks, haz clic en los botones “Hacer prueba” junto a los eventos suscritos. Deberías ver los eventos de prueba en la salida del registro del servidor.
Con la sesión iniciada en una cuenta con el rol “Evaluador de Instagram”, intenta enviar un mensaje a la cuenta de Instagram conectada a tu página o deja un comentario en una publicación.
Si ves una respuesta a tu mensaje en Instagram, la aplicación está configurada correctamente. ¡Eso es todo!
Es posible que la aplicación de Facebook aún esté en modo de desarrollo. Puedes añadir a usuarios como evaluadores de la aplicación y, si aceptan, la aplicación les podrá enviar mensajes. Una vez que tengas todo listo, puedes solicitar el permiso instagram_manage_messages
para poder responder a cualquier persona.
¿Esta guía es incorrecta? Envía un problema para comunicárnoslo.