software - Facebook Messenger Chatbot ¿cómo recojo la ubicación geográfica de los usuarios que envían?
manychat bot facebook (3)
En Facebook Messenger hay un ícono que permite al usuario enviar sus coordenadas geográficas.
¿Está esto disponible en la plataforma de Facebook Messenger todavía, es decir, si un usuario me envía su ubicación, tiene acceso mi Chatbot? Si es así, ¿cómo se hace porque no puedo verlo en la respuesta en mi webhook?
Obtienes la ubicación como archivo adjunto en el mensaje. Vea la muestra a continuación:
{ mid: ''mid.1463464074086:96b149e1a047e47842'',
seq: 2076,
attachments:
[ { title: ''Anupam/'s Location'',
url: ''https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.bing.com%2Fmaps%2Fdefault.aspx%3Fv%3D2%26pc%3DFACEBK%26mid%3D8100%26where1%3D19.120002%252C%2B72.863715%26FORM%3DFBKPL1%26mkt%3Den-US&h=AAQH523sr&s=1&enc=AZNmEBjv3zHHm0_dYnEIC6j7EDsJNt8PZRZZyaXbIZ6VzjPsQUOOaMIPGtXFH17CevUiNK0_K594CgDQHAMQSru7uS_jjbkxojBWNwBnncqzaw'',
type: ''location'',
payload: [Object] } ] }
Desde la carga útil, puede acceder a la latitud y longitud utilizando:
lat = event.message.attachments[0].payload.coordinates.lat
lng = event.message.attachments[0].payload.coordinates.long
Sí, la ubicación se enviará como un archivo adjunto en el mensaje. Si se está refiriendo al código de ejemplo que figura en la documentación de la plataforma de Facebook Messenger, la solución se puede hacer de la siguiente manera ... (consulte el código completo aquí https://developers.facebook.com/docs/messenger-platform/quickstart )
en la sección else
else if (messageAttachments) {
console.log(messageAttachments[0].payload.coordinates.lat); //gives you lat
console.log(messageAttachments[0].payload.coordinates.long); // gives you long
}
Hay un error por ahora acerca de cómo obtener la ubicación de algunos usuarios.
Cuando mis usuarios comparten su ubicación en facebook-messenger-bot;
Si bien puedo obtener la ubicación de los usuarios como la respuesta a continuación;
{ mid: ''mid.1463464074086:96b149e1a047e47842'',
seq: 2076,
attachments:
[ { title: ''Fatih/'s Location'',
url: ''https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.bing.com%2Fmaps%..'',
type: ''location'',
payload: [Object]
} ] }
Pero no se puede obtener la ubicación de otros usuarios, como la respuesta a continuación;
{
{ mid: ''mid.$cAAD53Ka90kBmfY23q1gTEdy6rrmW'', seq: 19104}
}
El equipo de Facebook sigue trabajando en este error. Este es el enlace si desea navegar: https://developers.facebook.com/bugs/160926314660178/