2012-11-07 3 views
11

Ho davvero bisogno di aiuto con questo!Impossibile inviare notifiche FB con nuova API

sto cercando di inviare notifiche da un'applicazione di tela utilizzando la nuova API di notifiche, ma continuo a ricevere la seguente eccezione:

OAuthException: (# 200) Solo le applicazioni di tela web possono inviare notifiche app

Tuttavia, l'app viene caricata nella tela di Facebook: effettuo una chiamata ajax al mio server quando l'utente esegue una determinata azione che attiva la richiesta POST di notifica. L'utente ha anche autorizzato l'app.

Questo è il codice che sto utilizzando:

$graphUrl = $user_id . "/notifications"; 
$params = array("access_token" => $admintoken, 
      "href" => $link, 
     "template" => "string of text < 180 chars" 
     ); 

try { 
    $result = $facebook->_graph($graphUrl, 'POST', $params); 
} catch (Exception $e){ 
    echo $e; 
} 

risposta

22

Ho appena incontrato anche questo e questo è come ho risolto, ma questo potrebbe non essere relativo al sistema come sembri alcuni la vostra è una tela di canapa app. La mia è un'app che funziona principalmente su Facebook, ma ha ganci di integrazione di Facebook che consentono agli utenti di autorizzare la mia app di Facebook e quindi ricevere aggiornamenti su eventi interessanti tramite il framework di Facebook.

Sono andato a modificare le mie impostazioni dell'app nell'app Facebook Developers, guarda su Impostazioni-> pagina di base in basso. Ho solo selezionato "Sito web con accesso Facebook". Ho controllato "App su Facebook" e questo mi ha dato una "Pagina su tela" e varie altre impostazioni. Con questi compilati e salvati, il POST to uid/notifiche ha funzionato immediatamente.

Per inciso, andando a apps.facebook.com/myappnamehere fallisce perché reindirizza a https e la richiesta al mio sito non è riuscito perché il mio SSL non è configurato correttamente, ma questo non ha impedito le notifiche vengono inviati sotto che le applicazioni credenziali.

+0

questa è la risposta che ho bisogno di grazie: D –

0

1: \ Vai a developer.facebook.com

2: \ Vai alla tua app Impostazioni \ base

3: \ Aggiungere nuova piattaforma da Plus a pulsante in fondo alla pagina

4: \ Scegli Facebook Canvas

ora potrebbe essere necessario compilare il modulo con il tuo url

Questo è tutto

+1

Vedo solo giochi Web di Facebook, sito Web, IOS, Android, App Windows, scheda Pagina, Xbox, Playstation. Non vedo la tela di Facebook – Guus

1

Recentemente, stavo affrontando lo stesso problema e ho trovato che Facebook Web Games sono formalmente conosciuto come Facebook Canvas.

Quindi, basta creare una configurazione di gioco Facebook in Impostazioni-> pagina di base (vedrai il pulsante aggiungi in fondo a questa pagina) e la tua API inizierà a inviare notifiche.