Ti trovi qui : Linux » Tips’nTricks: Twitter e Identi.ca da terminale

Tips’nTricks: Twitter e Identi.ca da terminale

Molti di voi avranno un account su Twitter, qualcuno di voi (spero) avra’ un account su Identi.ca (che diversamente da Twitter e’ open source), ma quasi tutti useranno i metodi tradizionali per scrivere i messaggi su questi due microblogging.

TerminaleOssia, andando sul sito, facendo login e scrivendo il messaggio che si vuole. Magari qualcuno usera’ Pidgin (o un altro programma di messaggistica istantanea), che permette molto semplicemente di inviare i messaggi su Identi.ca tramite Jabber. E’ possibile una cosa simile anche con Twitter, ma non tramite Jabber, bensi’ con un apposito plugin di Pidgin. Ma a noi non interessano tutti questi metodi, noi lo vogliamo fare da terminale, possibilmente con uno script.

Prima di tutto ci occorre cURL, quindi se non lo abbiamo lo dobbiamo installare: # apt-get install curl e leggiamoci un po’ il manuale (che non guasta mai): $ man curl

Vediamo Twitter per primo, poi vedremo Identi.ca (che e’ un po’ piu’ complesso).

Twitter-LogoTWITTER – Ora dobbiamo aprire un terminale e scrivere un comando molto semplice: $ curl -u username:password -d status="Il tuo messaggio." http://twitter.com/statuses/update.xml se

avete letto il manuale sapete gia’ cosa fa questo comando. Va alla pagina http://twitter.com/statuses/update.xml e fa login con username e password che gli abbiamo indicato e invia come dati cio’ che e’ contenuto all’interno delle virgolette. Ad esempio: $ curl -u Turiddu:Brabalonga -d status="Ciao al Mondo." http://twitter.com/statuses/update.xml

Possiamo fare anche uno script per semplificare il tutto, lo facciamo in bash [1]:

---8<--- #!/bin/bash messaggio=${1} curl -k --basic --user Turiddu:Brabalonga --data "status=${messaggio}" --output /dev/null http://twitter.com/statuses/update.xml ---8<---

Troppo lungo? Possiamo ridurlo a:

---8<--- #!/bin/bash curl -u Turiddu:Brabalonga -d status=″$1" http://twitter.com/statuses/update.xml ---8<---

Facile facile. Prendete uno di questi due script, copiateli all’interno di un file di testo vuoto, rinominatelo come twitter.sh (o come volete voi). Rendete il file eseguibile: $ chmod 777 twitter.sh

e provatelo subito: $ .twitter.sh "Ciao caro Mondo."

identica_1320x1000_rgbIDENTI.CA – Devo dirvi la verita’, pensavo che con identi.ca fosse uguale il procedimento, pensavo quindi che fosse sufficiente: $ curl -u Turiddu:Brabalonga -d status="Il tuo messaggio." http://identi.ca/api/statuses/update.xml

Invece in questo modo non riesce ad autenticarsi, e quindi (ovviamente) non manda il messaggio.

Cercando la soluzione ho trovato questa possibilita’, dividere il procedimento in due parti, la prima fa il login, la seconda manda il messaggio (non l’ho provata questa soluzione, quindi non garantisco nulla):

In questo caso e’ quasi d’obbligo lo script:

---8<--- #!/bin/bash messaggio=${1} curl --data "nickname=Turiddu" --data "password=Brabalonga" -c ~/.cookies.txt -o /dev/null http://identi.ca/main/login curl --data "status_textarea=${messaggio}" -b ~/.cookies.txt -c ~/.cookies.txt -o /dev/null http://identi.ca/notice/new ---8<---

Anche in questo caso, copiate il testo dello script in un file vuoto, rinominatelo in identica.sh (o come volete), rendetelo eseguibile: $ chmod 777 identica.sh e provatelo subito: $ .identica.sh "Ciao caro Mondo."

Ovviamente potete modificare gli script come piu’ vi piace, ad esempio per rendere variabili anche username e password, cosi’ potete inserirle a piacere (se doveste avere piu’ di un account). O mettere un controllo per verificare la lunghezza del messaggio (non deve superare i 140 caratteri) prima dell’invio.

[1] Ovviamente al posto di Turiddu (username) e Brabalonga (password) dovete mettere i vostri dati. [^]

[^] torna su | post<li>



martedì, ottobre 27 2009
Taggato come Linux, Programmazione, Tips'nTricks, Trucchi, Twitter, bash, gnu/linux, identi.ca, pidgin, shell, terminale

Scritto da idl3







CHI E' L'AUTORE?




Casinò Games Loan Casinò Poker Mutui Prestito Language Identification
Twitter Whois
Tumblr Sitemap
TopOfBlogs TopOfBlogs