Categorie


invita-amici-facebookVediamo come creare la classica form che invia una richiesta di installare l’applicazione selezionado gli amici dell’utente.
Per farlo utilizzeremo il tag fbml fb:multi-friend-selector insieme a fb:request-form.
Per quanto riguada l’invio di messaggi agli utenti utizzeremo le api di facebook. In questo caso il metodo notification.send che ci permette di inviarne sia ad un gruppo di utenti, che ad un singolo utente.

Il codice per mostrare la form è la seguente :

In action va posta la pagina dove l’utente arriverà dopo aver inviatato gli amici (o se ignora il form cliccando il tasto skip/salta)
In content inseriamo il messagio da mostrare agli amici per convincerli ad installare la nostra applicazione ed in actiontext il testo da mostrare nel pulsante per iniziare l’azione di invito.

Per inviare un messaggio diretto all’utente , invece, dobbiamo utilizzare le api di Facebook. In questo caso il metodo notifications_send.
Nella nostra applicazione facebook , inseriamo la seguente riga:

$facebook è il nostro client facebook, vedere l’articolo Come creare un applicazione per FaceBook per riferimento,
Mentre $uid è l’id dell’utente a cui inviare il messaggio e ‘user_to_user è il parametro da passare al metodo notifications_send per inviare un messaggio diretto dall’utente attivo all’utente $uid.

Se invece vogliamo inviare messaggi o notifiche a più utenti da parte dalla nostra applicazione, allora useremo il parametro
app_to_user in questo modo

E’ possibile inviare notifiche e messaggi solo agli amici dell’utente o agli utenti dell’applicazione altrimenti il metodo verrà ignorato

UPDATE : Dal 1 marzo facebook non permette più l’invio delle notifiche. Lascio il codice per riferimento, ma notification_send è una funzione deprecata

 

« « Come condividere al massimo Facebook tramite Widget | Come attivare il nuovo foto uploader per facebook » »

Articoli correlati

Open graph
Timeline : Il nuovo profilo di facebook

Ieri in occasione dell’F8 Zuckerberg ha presentato molte novità riguardanti facebook. Una di queste è la Timeline. Il nuovo profilo di facebook...


Schermata 2011-07-11 a 10.52.21
Facebook Graph Api Explorer

Lo staff di facebook ha messo a disposizione degli sviluppatori uno strumento davvero utile per analizzare e scoprire le graph api della...


applicazioni facebook informazioni
Come creare un applicazione per FaceBook (senza librerie php)

Quattro anni fa sono stato il primo a scrivere un'articolo in italiano che trattasse la creazione di un'applicazione facebook ( "Come creare...


Seguimi su twitter : @ironico

75 commenti

  • woolrich scrive:

    Ovvimanete come ti ho detto nel precedente messaggio

  • fabrizio scrive:

    ciao a tutti, ho installato l’applicazione static fbml con il fine di aggiungere un tasto “invita amici” in modo che tutti gli iscritti alla mia pagina potessero suggerirla ai loro amici. ma non funziona. ho trovato questo codice:

    <fb:request-form method="post" type="Your Fan Page Name Here." invite="true" content="Check out Your Fan Page Name Here on Facebook!”>

    che limita la selezione a tre amici ma oltretutto non funzionare per niente e dice sempre: non puoi più aggiungere amici per oggi.

    qualcuno di voi conosce un altro codice o un altro sistema per consentire ai proprio amici di suggerire i loro senza limiti?
    ho trovato una pagina che funziona bene ma non so come hanno fatto, è questa:

    https://www.facebook.com/taosilenzio

  • Marco scrive:

    Ciao io ho un’applicazione per facebook. Quando una persona si iscrive, vorrei che l’applicazione inviasse un messaggio o un invito a tutti i suoi amici.

    Il massimo sarebbe inviare un invito personalizzato, in modo che quando gli amici cliccano sull’invito, possa arrivare all’applicazione un parametro che indica “sono amico di xyz”.

    Come posso fare?

    Grazie

  • Salvatore scrive:

    ciao vorrei aggiungere alla mia official page facebook l’opzione invita amici ma mi dice che il limite e di 3 persone ovvero se un membro del mio gruppo vuole invitare ad unirsi al gruppo dei suoi amici ne puo solo invitare 3 e spesso mi dice che l’opzione non è funzionante! io ho copiato il tuo codice iniziale dopo aver scaricato FBML STATICO ! cosa posso fare per risolvere la cosa?

  • stanislao scrive:

    Ciao posso farti una domanda? io ho diverse app su facebook… tutte con diversi utenti… esiste un metodo per contattare tutti gli utenti che hanno accettatto l’app una mail o un messaggio?

    grazie infinite

  • Alex scrive:

    Ciao scusami !

    volevo semplicemente sapere come fare ad aumentare il limite delle persone alle quali si possono mandare i suggerimenti per una pagina con FBML , io attualmente col multi-friend-selector impostato da me non ne fa mandare più di 6 al giorno, io vorrei mandare richieste illimitate ma vedo altri admin che hanno il limite impostato a 15 o 25 ecc
    Io ho settato così :

    <fb:request-form method="get" action='http://www.facebook.com/pages/Interisti-Rosiconi/116075188451533&#039; content="Ciao ! Ti Suggerisco questa pagina, Diventa Fan di INTERISTI ROSICONI !
    ” type=”Interisti rosiconi” invite=”true”>

    “ DOVE SBAGLIO ?” PUOI AIUTARMI ?

  • Genny scrive:

    Ciao, ho un piccolo problema, ho creato una nuova pagina php dove ho incollato il tuo codice della form cambiando ovviamente i settaggi, l’ho caricata sul server e quando provo ad invitare gli amici, non viene caricato nulla…ho pensato che il problema fosse dato dal canvas che è abilitato a iFrame, ho provato a settarlo su FBML ma a quel punto la mia applicazione non viene più visualizzata..sbaglio qualcosa?
    Grazie

  • Giuseppe scrive:

    Ciao Gennaro,
    ho ancora un dubbio:
    mi sai dire perchè l’invito arriva come “vai all’applicazione” anzichè “accetta”.
    Nel senso,
    le persone vengono re-indirizzate all’applicazione, tutto funziona ma… è come se non l’avessero mai utilizzata. Non vengono conteggiate nemmeno dal contatore. C’ è qualche passaggio da aggiungere nel codice, o da modificare?

    questa è la situazione:
    Utenti attivi mensilmente 2
    Persone a cui piace 5
    Utenti totali: 1.

  • Giuseppe scrive:

    Ciao Gennaro,
    sto riscontrando dei problemi con questa applicazione.
    il codice che hai trascritto funziona, ma solo se accedo all’applicazione dalla pagina dell’applicazione stessa (es:http://www.facebook.com/apps/application.php?id=1431XXXXXXX) cliccando sul bottone “vai all’applicazione.”
    Quello che non funziona, e vorrei capire se è un problema di settaggio, è L’INVITO. Le persone lo ricevono, ma quando cliccano su “accetta”, viene fuori un messaggio di errore: “La pagina richiesta non è stata trovata”

    Penso sia un problema con l’ URL del Canvas” giusto?
    Ma non riesco a trovare la soluzione.

    devo mettere il link alla pagina dell’applicazione (come sopra) http://www.facebook.com/apps/application.php?id=1431XXXXXXX ? O quello del mio sito http://www.ilmiosito/applicazione/index.php??

    grazie per la collaborazione.

  • ciao gennaro volevo farti una domanda sto creando una applicazione per inviare tramite mms a gli utenti della mia applicazione gli aggiornamenti
    della loro bakeka e i messaggi ma non riesco a trovare documentazione e altro ,la mia idea è simile a questa applicazione http://www.newsfeedemail.com in prattica questo servizio prende la informazione e gli aggiornamenti del utente anche se non è conesso alla applicazione e invia un mail con tutto anche messaggi ,nella finestra popup dei permessi quando mi sono registrato mi chiedeva permesso per leggere la mia home i messaggi della mia inbox ecc ecc e permesso per accedere a questi anche se l’utente non è online ,sai qualcosa su questi permessi?come posso fare e poi come posso accedere a questi tramite la app.
    grazie =D

  • Giuseppe scrive:

    Ciao,
    grazie per l’aiuto innanzi tutto.
    Ho provato a seguire molte altre guide sull’argomento, ma risultavano tutte dispersive e contraddittorie.
    Sono riuscito finalmente a trovare un codice semplice e pulito per sviluppare l’applicazione.

    Avrei solo una richiesta, se e quando ti è possibile:
    potresti dirmi se esiste un codice, inseribile in quello da te indicato, che permette di decidere un “numero minimo” di amici da invitare?

    grazie mille ancora
    G.

    • Un numero minimo no. Facebook per fb:request-form, limita il numero di inviti a secondo dell’applicazione (in genere 16,25,ecc.).
      Puoi impostare invece il valore massimo per fb:multi-friend-selector, con l’attributo max (es. max=”20″)

      • Giuseppe scrive:

        Grazie mille!

        Un’altra domanda,
        per creare una matrice con gli ID degli utenti, cosa mi consigli di usare? (sempre x l’ambiente fb)

  • Tanisha Mills scrive:

    in che ambiente sei? in un sito internet, in un’apps facebook, in una pagina FB?

  • dz scrive:

    tu sei un santo Gennà.

  • walter scrive:

    Ciao,
    scusa il disturbo,
    volevo chiederti una cosa se hai un attimo di tempo.
    Ho scritto un po’ di codice e sono
    riuscito a pubblicare delle informazioni sulla bacheca,
    ma solo dopo aver cliccato su pubblica.
    Io,invece, vorrei avere i permessi per pubblicare direttamente.

    Ecco il codice funzionante, ma con la richiesta di pubblicazione.

    var publish = {
    method: ‘stream.publish’,
    message: ‘Ecco il tuo voto: …’,
    attachment: {
    name: ‘Campionato.’,
    caption: ‘Ecco i voti della settimana!’,
    description: (‘La classifica parla chiaro ed è su Facebook. ‘),
    href: ‘http://www.XXXXXXXX.altervista.org/facebook/’,
    media: [{
    type: 'image',
    href: 'http://www.XXXXXXXX.altervista.org/facebook/',
    src: 'http://www.XXXXXXXX.altervista.org/facebook/galleria/h.png'
    }]
    },

    action_links: [{
    text: 'link app',
    href: 'http://www.XXXXXXXX.altervista.org/facebook/'
    }]
    };

    FB.ui(publish);

  • Francesco scrive:

    Ciao! Mi chiedevo. E’ possibile rendere visibile il box SOLO DOPO ESSER DIVENTATI FAN con la scritta ? Perchè con un LINK mi funziona, invece il box mi appare sempre e comunque. Grazieee

  • Stefano scrive:

    Ciao,

    io sto creando un’applicazione iframe in PHP. Per inserire il form per invitare gli amici come dovrei fare?

    Nelle api di fb di php ci sono vari metodi che riguardano gli amici (o le liste di amici o gli inviti ad eventi) ma non so come usarli. Potresti aiutarmi?

    Poi,se volessi usare il linguaggio FMBL potrei usare il metodo ?fbmlforcemode=FMBL? Se si,come precisamente?

    • ti conviene utilizare il force mode, creando una pagina fbml e chiamadola, con pagina.php?fb_force_mode=fbml

      • Stefano scrive:

        Ci sto provando.

        il link a quella pagina è:

        < a href=”http://apps.facebook.com/MYAPP/invitaamici.php?fbmlforcemode=FMBL” rel=”nofollow” &gt:

        e il codice FBML di quella pagina è:

        <fb:request-form action="invitaamici.php"
        method="POST"
        invite="true"
        type="War of Kingas"
        content="Your text goes here. <?php echo htmlentities("” >

        E’ tutto giusto? non dà errori ma a video non esce niente.

  • Manuel scrive:

    Ciao Gennaro, invece per stabilire e far vedere una classifica delle persone che hanno invitato più amici, stile contest, come si puo’ fare a livello di codice?
    Grazie mille, rispondimi pure via mail così che posso vedere subito appena rispondo dato che non c’è la notifica dei nuovi commenti…

    Grazie mille
    Manuel

    • devi creare una tabella dove aggiungi/aggiorni record ogni volta che gli amici vengono invitati, infine mostri la classifica analizzando la tabella.

      • Manuel scrive:

        Il mio problema Gennaro è che non so come realizzarlo a livello di codice facebook – php…
        Se mi puoi aiutare ti ringrazio moltissimo
        Manuel

        • scusami, ma non ho il tempo di creare codice anche parziale. Faccio il possibile per rispondere ai commenti dando qualche suggerimento

          • Manuel scrive:

            In effetti ti posso capire Gennaro, prima non ci avevo pensato.
            Per caso puoi dirmi dove trovare risorse sull’argomento (così mi arrangio a scrivere il codice io studiando)
            o magari, forse ancora meglio, le api di facebook che servono per fare queste cose…
            In pratica dove indirizzarmi per risolvere il problema,
            grazie ancora e scusami per l’intrusione
            Manuel

          • Non esiste una guida, nè esiste un api per farlo.
            E’ semplice, ma devi conoscere le basi del php e di mysql.
            Devi:
            - Creare una tabella “classifica” con i campi fondamentali (es. uid, inviti,ecc)
            - Ogni volta che un amico invita, intercetti la Request e prendi la lista degli amici.
            - Effettui il conteggio della lista.
            - Aggiungi questo valore all’interno della tabella sommandolo al precedente se presente, inserendolo altrimenti.
            – la classifica la ottienei effettando una query tipo (“select * from classifica order by invite desc”) e li mostri a video.

            Di più non posso fare.

  • Gaia scrive:

    Ciao,
    ok, il 1° Marzo è passato, come faccio a inviare qualche notifica??

  • emilio scrive:

    ciao trovo molto interessante tutto cio ho letto i commenti ma non ho capito bene come devo integrare nella mia pagina il seguente codice?

    • copiando e incollando..

      • emilio scrive:

        ciao ,o copiato e incollato nella pagina ma non esce nulla ,saro ‘ io a sbagliare :-(…. riprovo ma non va ,scusa se chiedo troppo ma no ho capito questi 2 passaggi action=”index.php” type=”Nome della nostra applicazione”

        • figurati. Action è il nome del file php dove hai copiato e incollato. In Type, puoi inserire il nome della tua applicazione.
          Ricordati che questo codice funziona solo se sei in un applicazione di tipo FBML e non IFRAME

          • emilio scrive:

            grazie per il tuo consiglio ottima guida ma non sono riuscito sbaglio in qualcosa , fossi bello vedere una guida in un’altro tuo post che spiega come fare per tutti quelli che sono interessati.cmq complimenti per il tuo sito .

  • Organic scrive:

    Ciao provai già tempo ha dietro i metodi per inviare notifiche e funzionavano entrambi sia quello per utente che a gruppi di utenti, solo non riuscivo mai a completare tutto il processo, per ricavare gli id o persone in automatico senza bisogno di mettere io gli id come posso fare? anche perchè presumo che se io imposto degli id le notifiche arrivano sempre alle solite persone e non agli id amici degli amici degli amici.

    Esempio: io imposto gli id degli amici miei (quindi invierò le notifiche a tutti gli amici miei della lista) se arriva un amico mio a chi le invia? (sempre a loro? ma solo agli iscritti dell’applicazione?) non capisco.

    • Il tuo è un problema di logica. Non devi impostarli via codice, ma prenderli secondo un tuo scopo. Una volta che sai come inviare una notifica , devi solo procurarti gli uid in questione.
      Per esempio, da un tuo database o facendo scegliere all’utente da una lista di amici, ecc..

      • Organic scrive:

        esatto è quello che avevo intuito infatti, avevo optato con “ogni volta che qualcuno visita l’applicazione e a un suo id, lo invia automaticamente a tutti gli altri id, magari tutte quelle persone che sono registrate all’applicazione (il tutto viene con uno script php che si allaccia al mysql (dove ovviamente sono registrati gli id degli altri) ma non sò minimamente da che parte farmi.

        • ma questo sarebbe spam;) Invia le notifiche quando necessario, o in modo da trasmettere un messaggio virale. Per esemepio, dopo che l’utente fa una qualche azione, fai scegliere a quali amici vuole inviare l’informazione o invia a 10 amici a caso.

          • Organic scrive:

            si si ovvio, il mio era inteso come spam, ma non sotto quel gergo, dato che facebook a anche cambiato le regole ovvio. ma non saprei comunque come fare. grazie cmq.

  • pippo scrive:

    ciao,

    un mio amico mi ha creato questa applicazione:

    http://apps.facebook.com/radio-azzurra-player/

    funziona bene ma volevo sapere due cose:

    Come fare per inviare una notifica a tutti gli amici dell’utente (mario rossi) che ha appena istallato l’applicazione tipo: “mario rossi ha appena istallato radioazzurraplayer, se vuoi istallarla anche tu clicca qui”

    Perche non mi fa invitare tutti gli amici ma alcune volte 30 al giorno altre volte 24 o 16???

    Grazie Mille

  • Aldo scrive:

    Ciao, volevo sapere se sai come scrivere sulla bacheca di un amico dell’utente

  • Roberto scrive:

    Ciao,

    scusa se ti disturbo nuovamente ma non riesco a far funzionare la richiesta di installare l’applicazione selezionado gli amici dell’utente.

    Potresti allegare se possibile un esmpio completo, anche una pagina che apre solamente la finestra in cui selezionare gli utenti e invare la richieta di installazione.

    Grazie ancora per avermi risposto tempestivamente.

    RL

    • L’esempio è quello nell’articolo .. se inserisci le 16 righe in un file index.php o index.html e lo richiami tutto funziona.
      Ovvimanete come ti ho detto nel precedente messaggio, l’applicazione deve essere di tipo fbml e non frame (nelle impostazioni dell’applicazione)

      • Roberto scrive:

        Nel caso avessi un frame come dovrei fare?
        Posso richiamare attraverso un link alla pagina index.php contenente le 16 righe (inserita su un serve php con le relative librerie), in cui è presente anche la parte di caricamento api oppure non è una cosa fattibile.
        Il problema è che ho creato un applicazione java e per prendere il nome dell’utente uso le api JavaScript ma non riesco ad “Invitare gli amici ed inviare notifiche e messaggi” con queste api.
        Grazie.

        • Dovresti utilizzare l’xfbml in questo caso. Ricordati di usare nello javascript in fondo pagina una chiamata a FB_RequireFeatures(["XFBML"],function(){ FB.Facebook.init(“YOUR_API_KEY_HERE”, “xd_receiver.htm”); });
          Di inserire il file xd_receiver.htm nella stessa cartella (lo trovi nella documentazione)

  • Va messo in una pagina php, caricata in un’applicazione di tipo fbml.

  • Roberto scrive:

    Ciao,

    scusa il disturbo, volevo chiederti dove andava messo Il codice per mostrare la form e se la form si compilava automaticamente.

    Grazie
    RL

Rispondi

Attenzione : Per inserire codice html/php o caratteri speciali utilizza Postable. Postable converte i caratteri speciali del tuo commento.
XHTML: Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Login with:
Powered by Sociable!