Feb 022013
 

In passato ho presentato alcuni client per Twitter che funzionano sul terminale Linux, come ad esempio Twidge e turses , sono davvero utili, non solo per il collegamento ai siti web sociali tramite il terminale, ma anche per fare delle procedure programmate che stamperanno un risultato o un messaggio su questi siti.

Fbcmd è una interfaccia a riga di comando (CLI) per facebook.
E’ open source e funziona su Windows, Mac e Linux.

Vediamo come è possibile utilizzarlo.

Installazione

Fbcmd è un unico file PHP quindi è necessario installare php-cli e l’estensione php curl per usarlo.

Su Debiam, Ubuntu e Mint è possibile installare i requisiti con il comando:

sudo apt-get install php5-cli php5-curl

Questo installerà l’ultimo php disponibile sulla vostra macchina Linux, ora è necessario verificare la configurazione del php, eseguire quindi questi comandi da terminale:

php -r "echo ini_get('allow_url_fopen');"
php -r "echo function_exists('curl_init');"
php -r "echo function_exists('json_decode');"

Ed assicuratevi che ciascuno dia come output “1”, se vedete uno 0 controlla il link risoluzione dei problemi del sito web ufficiale.

Ora scaricare l’ultima versione dello script con il comando:

curl -O https://raw.github.com/dtompkins/fbcmd/master/fbcmd_update.php

o, se questo non funziona , scaricatelo da questo link diretto.

php fbcmd_update.php

Si dovrebbero visualizzare tutte le impostazioni di installazione, incluso anche dove sarà installato, qualcosa di simile a questo:

fbcmd update utility [version 3.0]
http://fbcmd.dtompkins.com/update
 
Preference file:                 [/linuxaria/.fbcmd/prefs.php]
 
Software development branch:     [master]
Software library destination:    [/usr/local/lib/fbcmd/]
Copy script to bin dir?:         [Yes]
Bin dir location:                [/usr/local/bin/]
Script name:                     [fbcmd]
Auto-restart when necessary:     [Yes]
 
Welcome!  This appears to be the first time running fbcmd_update.
 
To change any of the above settings, modify your preferences file
To change your preferences file location, set an FBCMD environment var.
 
Otherwise, The above default settings are fine for most users
 
To finish the installation:
 
   $ sudo php fbcmd_update.php sudo
   $ php fbcmd_update.php

È possibile personalizzare queste impostazioni, modificando il file di preferenze che si trova nella vostra home directory nel file .fbcmd/prefs.php .
Notare che il software verrà installato in un posto (per esempio: /usr/local/lib/fbcmd), e quindi aggiungerà lo script in un’altra posizione (ad esempio: /usr/local/bin) che dovrebbe essere nel vostro percorso .

Per completare l’installazione dare i 2 comandi che sono stati stampati dal programma e ora si può iniziare ad usarlo con fbcmd vedrete un output che vi dice che dovete abilitare l’autenticazione facebook, questo è fatto in 2 fasi :

Passo uno: Dare l’accesso di base

Prima di poter ottenere un codice di autorizzazione, è necessario dare l’accesso di base FBCMD al proprio account Facebook, per questo basta digitare in un terminale:

fbcmd go access

O visitare questo sito per dare i permessi di base.

Fase due: Ottenere ed Inserire il codice di autorizzazione

Dopo aver consentito l’accesso di base, è necessario concedere l’autorizzazione a FBCMD di utilizzare il vostro account Facebook in modalità offline.
Tale autorizzazione viene data una sola volta durante l’installazione: FBCMD memorizza le informazioni di autenticazione nella directory dei dati per un utilizzo futuro.
Digitare nel terminale:

fbcmd go auth

che dovrebbe portarvi su questo sito dove potrete ottenere un codice di AUTENTICAZIONE (chiamiamolo XXXXXX)
Ora diamo il comando:

fbcmd auth XXXXXX

e dovreste ottenere un messaggio di successo
Nota: I codici di AUTENTICAZIONE sono sensibili al fattore tempo e possono essere utilizzati solo una volta. Se si ha un errore, visitare il sito web e generarne un altro.

Fase tre: ottenere ulteriori autorizzazioni

Per eseguire la maggior parte dei comandi in FBCMD, è necessario concedere autorizzazioni aggiuntive, per concedere a FBCMD i permessi di default, scrivere:

fbcmd addperm

Note finali sull’installazione:

È possibile installare fbcmd su un sistema Linux in cui non si dispone del comando sudo, tutto quello che dovete fare è modificare due impostazioni in prefs.php prima di eseguire fbcmd_update.php install_lib_dir può essere una qualsiasi directory a cui si abbia accesso in scrittura
install_bin_dir deve essere nel vostro percorso, quindi $ HOME/bin/ dovrebbe funzionare.

Uso Base di fbcmd

Per vedere tutte le opzioni disponibili, è possibile digitare fbcmd da terminale o visitare la pagina con tutti i comandi del sito web, questi sono alcuni esempi:

Aggiornare il vostro status

fbcmd status "Hello, I'm updating FB from my cool terminal"

Potete aggiungere una foto

fbcmd POST IMG "check out this photo!" "http://example.com/image.jpg" "http://example.com/link.html"

È possibile inviare un’immagine senza un messaggio o un link all’immagine:

fbcmd POST IMG 0 "http://example.com/image.jpg" 0

Se si dispone di una Facebook Page potete aggiungere voci su di essa con:

fbcmd PPOST pagename "is changing the page status with the PPOST command"

Potete anche inserire immagini o altre cose

fbcmd PPOST 1234567 IMG 0 "http://example.com/image.jpg" 0

O semplicemente visualizzare le ultime novità presenti su Facebook:

fbcmd stream

Conclusioni

fbcmd può essere uno strumento molto utile quando si gestisce una pagina di facebook e si desidera pianificare in anticipo la pubblicazione di link o notizie, o semplicemente ci si vuole collegare al proprio account FB dal terminale.

Popular Posts:

Flattr this!

  8 Responses to “fbcmd: Gestire Facebook dal terminale Linux”

  1. Oh, I made something similar recently.

    Demo site is here. (You can try this in your web browser right now)
    http://kissrobber.github.io/facebook_client_terminal/
    Note: Only REPL mode is available in demo

    Please refer to the “Practical command example” section here
    https://github.com/kissrobber/facebook_client_terminal
    Many things are going to be done by using some commands in combination with pipe, grep and awk.
    In fact, this is far more useful than I thought before making this.

  2. very nice utility. I installed it and plaid with. I managed to make posts on my wall, on my pages and on friends walls. I wonder now if this little charm can be installed on my webhosting provider so I can cron some jobs

  3. This little php that uses fbcmd using shell_ecec will also post an article in the wall with image title text and url.
    $postresult = shell_exec(“/usr/local/bin/fbcmd PPOST $fbPageCode IMG 0 $urlimg $url ‘$title’ $url ‘$descr’ \n\r”);

  4. Hi,

    Updating from terminal is awesome …. How can we search something in the search bar and store the results in a file ?

  5. Updating status requires the extended permission status_update (250)

    Event using SUDO 🙁

    Any ideas?

  6. I wrote a new Facebook command line utility – facebook-cli

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)

*