Usar los Webhooks de Facebook con una página

Antes de que se me olvide:

1. Usamos una aplicación de Facebook (o creamos una), debemos entonces añadir en los productos, Webhooks.

2. Nos suscribimos a Page, hay que hacer un URL con https activado donde recibiremos la información, puede ser un php simple como esto:

<?php

/* webhook para Facebook @ToRo 2017 https://tar.mx */

$log = __DIR__."/log.log";

$me = "frase de desafío";

if(isset($_GET['hub_mode']) && isset($_GET['hub_verify_token']) && $_GET['hub_verify_token'] == $me) {

die($_GET['hub_challenge']);

}

ob_start();

//

$content = file_get_contents("php://input");

$content = json_decode($content);

print_r($content);

//

$data = ob_get_contents();

ob_end_clean();

file_put_contents($log,$data,FILE_APPEND);

Eso es suficiente, ya que le responde la frase a Facebook y te dejará continuar. Luego te mostrará la lista de objetos sobre los cuales te puedes suscribir, en mi caso elegí feed y mention.

3. Entras a login de la aplicación (previamente debe tener también el producto de iniciar sesión con ...), puedes ver un ejemplo de como implementar login con facebook en este proyecto - Foro PHP en el directorio login/ - es necesario el permiso manage_pages o bien si es tu aplicación debes solicitarlo aún sin aprobación.

4. Teniendo el ID de la página y el token de acceso, nos suscribimos al webhook de la aplicación:

<?php 

require_once __DIR__ . '/vendor/autoload.php'; // change path as needed

$configfb = [

'app_id' => 'APP_ID',

'app_secret' => 'APP_SECRET',

'default_graph_version' => 'v2.11',

];

$otoken='TOKEN_PAGE'; //token al identificarte y obtener manage_pages

$meme = 'ID_PAGINA'; //igual, el id que obtuviste de la página al identificarte

// nos suscribimos:

$response = $fb->post( '/'.$meme.'/subscribed_apps',[], $otoken);

print_r($response)

5. Con este último paso, nos estamos suscribiendo como página al webhook de la aplicación, si todo salió bien se debe estar llenando el archivo log.log del script ejemplo.

+ fotos / videos

https://tar.mx/tar.svg

Almacenado en Apps, Facebook API

por Jorge Martínez Mauricio :)

blog / fotos / archivo

Usar los Webhooks de Facebook con una página

tar.mx es un blog sobre fotografía, tecnología y otras chunches

modificado viernes 9 de julio de 2021, 21:42

cuentame