G+ si propone con sempre maggior prepotenza come sistema per la gestione di una nostra unica identità online.
L'integrazione che G+ ha e avrà sempre più nelle nostre vite è qualcosa di grandioso. Basta pensare a cosa dobbiamo fare quando cambiamo numero di cellulare se abbiamo G+ o se non lo abbiamo. Nel secondo caso dobbiamo cercare di farlo sapere a tutti i nostri contatti e tenere il primo numero attivo nel caso a qualcuno sia sfuggita la novità. Nel primo caso invece non dobbiamo far nulla ...
Almeno nel mio caso non devo fare nulla se non cambiare il mio numero nel mio profilo di G+ e tutti i miei contatti (fortunatamente sono riuscito a far si che tutti i miei contatti importanti abbiano Android) si troveranno con il numero aggiornato nella rubrica.
Comodo, indubbiamente molto comodo ...
Però dobbiamo anche stare attenti alle persone con cui condividiamo i nostri dati su G+ e qui entrano in gioco le cerchie.
Le cerchie sono una delle funzionalità presenti in G+ sin dal principio (erano già presenti in Google Buzz ma senza il nome fiko e la grafica scintillante) e hanno lo scopo principale di permetterci di controllare con chi condividere qualcosa.
Quando dico "qualcosa" non mi riferisco solo ai post, le cerchie infatti sono utilissime anche per controllare la condivisione delle nostre informazioni.
G+ ci permette infatti di decidere, con elevatissima granularità, con chi vogliamo condividere ogni informazione del nostro profilo. Possiamo decidere di condividere il nostro numero di telefono con la cerchia Famiglia e la cerchia Amici, tenere riservati i miei precedenti datori di lavoro e via dicendo.
Questa metodologia appare funzionante ma in realtà è una semplificazione che, presto o tardi, mostrerà la sua rigidità ... Potremmo conoscere online una persona che vorremmo mettere nella cerchia degli amici ma non la conosciamo ancora così bene da volerle far avere il nostro numero di telefono ... oppure vorremmo far avere il nostro numero di telefono a una persona che non consideriamo amico (es. un professionista).
Per aver maggior elasticità la soluzione è semplice.
Basta creare una cerchia specifica per ogni informazione del nostro profilo che vogliamo condividere e personalizzare nel nostro profilo la visibilità di quell'informazione solo verso la sua specifica cerchia.
Facciamo un esempio: voglio condividere i miei contatti di lavoro (telefono e mail) solo con alcune persone con cui ritengo di poter avere rapporti professionali.
In tal caso creerò una cerchia con un nome specifico (a me piace usare il prefisso ACL ma il nome ci aiuterà solo a ricordarci il significato di quella cerchia) come "ACL Lavoro" poi andremo a modificare il nostro profilo modificando la sezione desiderata e personalizzando la visione delle informazioni verso la cerchia appena creata. A questo punto ogni qualvolta vorremo condividere con qualcuno i nostri recapiti professionali ci basterà aggiungerlo a tale cerchia e il gioco è fatto. Tutte le modifiche saranno riportate in tempo reale nella sua rubrica di Google.
Personalmente consiglio anche di:
10/11/13
08/10/13
Eventi e Trigger per gli Apps Script
In questo nuovo articolo sui Google Apps Script volevo approfondire un argomento che ho già accennato negli episodi precedenti: i trigger ovvero gli strumenti che ci consentono di automatizzare l'esecuzione dei nostri script
Ho già avuto modo di farvi creare dei trigger e di mostrarvi del codice che li gestisce in maniera programmatica ma quello era giusto per incuriosirvi e darvi subito del materiale interessante. Le possibilità a nostra disposizione sono molte di più ;)
Uno dei punti di forza dei GAS è il fatto che non dobbiamo per forza eseguirli manualmente ma abbiamo la possibilità di associare l'esecuzione a determinati eventi oppure in determinati momenti (come abbiamo già sperimentato). I trigger ci danno la possibilità di eseguire una determinata funzione al verificarsi di una determinata condizione.
In questo modo possiamo, ad esempio:
I trigger si dividono in due gruppi: quelli semplici e quelli installabili. Tra i due tipi ci sono molte similitudini ma diverse differenze sostanziali.
I trigger semplici possono esistere solo in script creati all'interno di altri documenti (torneremo in seguito a esaminare i vari tipi di script) e sono funzioni con nomi speciali. Per fare un esempio posso creare una funzione onEdit (attenzione a maiuscole e minuscole, javascript ci tiene molto) in uno script creato in un foglio di calcolo e questa funzione verrà automaticamente eseguita quando si modificherà un valore. Una funzionalità simile si può ottenere anche con uno trigger installabile dando un qualsiasi altro nome (mi raccomando un nome diverso da onEdit o la funzione verrà eseguita due volte) e creare un trigger sull'evento che la richiami.
Qual'è la differenza tra questi due tipi di trigger se all'apparenza sono così simili?
Le differenze sostanziali stanno nelle limitazioni dei trigger semplici:
Ho già avuto modo di farvi creare dei trigger e di mostrarvi del codice che li gestisce in maniera programmatica ma quello era giusto per incuriosirvi e darvi subito del materiale interessante. Le possibilità a nostra disposizione sono molte di più ;)
Uno dei punti di forza dei GAS è il fatto che non dobbiamo per forza eseguirli manualmente ma abbiamo la possibilità di associare l'esecuzione a determinati eventi oppure in determinati momenti (come abbiamo già sperimentato). I trigger ci danno la possibilità di eseguire una determinata funzione al verificarsi di una determinata condizione.
In questo modo possiamo, ad esempio:
- creare un menù all'apertura di un documento
- controllare i dati inviati da un form
- controllare ogni giorno che non siano rimaste mail importanti senza risposta
- allo scoccare di un'ora
- installazione di uno script
- apertura di un foglio di calcolo
- cambiamento nel foglio di calcolo
- modifica nel foglio di calcolo (simile a quello di prima ma diverso)
- invio dei dati da un form a un foglio di calcolo
- apertura dell'editor dei form
- invio dei dati da un form
- apertura di un documento
I trigger si dividono in due gruppi: quelli semplici e quelli installabili. Tra i due tipi ci sono molte similitudini ma diverse differenze sostanziali.
I trigger semplici possono esistere solo in script creati all'interno di altri documenti (torneremo in seguito a esaminare i vari tipi di script) e sono funzioni con nomi speciali. Per fare un esempio posso creare una funzione onEdit (attenzione a maiuscole e minuscole, javascript ci tiene molto) in uno script creato in un foglio di calcolo e questa funzione verrà automaticamente eseguita quando si modificherà un valore. Una funzionalità simile si può ottenere anche con uno trigger installabile dando un qualsiasi altro nome (mi raccomando un nome diverso da onEdit o la funzione verrà eseguita due volte) e creare un trigger sull'evento che la richiami.
Qual'è la differenza tra questi due tipi di trigger se all'apparenza sono così simili?
Le differenze sostanziali stanno nelle limitazioni dei trigger semplici:
- non possono essere eseguiti se il documento che li contiene è in sola lettura
- non possono determinare quale sia l'utente corrente
- non possono accedere a servizi che richiedono autenticazione (es. gmail o calendar)
- non possono accedere ad altri documenti
I trigger installabili (manualmente o programmaticamente) hanno la possibilità di essere scatenati da molti più eventi e sono molto meno limitati. Tenete sempre conto che i trigger installabili vengono eseguiti con i permessi dell'utente che ha installato il trigger stesso, non con quelli dell'utente che lo ha scatenato. Questo significa quindi che una funzione che invii una mail in base ad una modifica di un documento (nel caso di trigger installato) invierà sempre per conto dell'utente che ha installato il trigger, non per conto di chi ha effettivamente fatto la modifica. Analizzeremo più avanti la gestione dei permessi e delle autorizzazioni.
Rimane da parlare solo degli eventuali errori. Ebbene si, a volte gli errori capitano, anche ai programmatori. Gli Apps Script di default inviano una mail a mezzanotte con il riepilogo di tutti gli errori ma si può configurare il sistema per inviare le notifiche di fallimento in maniera istantanea. In questo modo appena un problema dovesse verificarsi la mail di notifica sarà prontamente inviata.
Ovviamente nessuno vieta a un programmatore di sfruttare il classico try ... catch per gestire eventuali errori.
Nel prossimo articolo spiegherò dettagliatamente come implementare uno script che crei un gruppo di contatti a partire dalle mail presenti in una specifica etichetta. Rimanete sintonizzati.
Nel caso vogliate approfondire gli argomenti trattati consiglio le seguenti pagine di documentazione ufficiale;
Nel caso vogliate approfondire gli argomenti trattati consiglio le seguenti pagine di documentazione ufficiale;
06/10/13
La mia avventura al #tcsummit2013
Come molti di voi già avranno avuto modo di sapere nella settimana che si conclude ho avuto la possibilità di partecipare al #tcsummit2013
Evento indetto da Google a cui erano invitati a partecipare tutti i TC del mondo (poco più di 500) a spese di BigG.
Certo il fatto che fosse gratuito (viaggio, vitto e alloggio) non è certo stato un deterrente ma personalmente la cosa che più mi gratifica in ogni summit (ho già partecipato a due summit in Italia e questo era il mio primo in California) è che Google ritenga importante ascoltare la mia opinione, le mie idee e i miei suggerimenti.
Purtroppo quasi tutto quello che ci hanno mostrato o di cui abbiamo parlato è coperto da NDA (in italiano "accordo di non divulgazione") quindi se dovessi dirvi troppo verrei estromesso dal programma TC quindi dovrò mordermi la lingua ;)
Posso comunque dirvi qualcosa: è stata un'esperienza impegnativa ma fantastica.
Ok, ho avuto modo di comprare due Nexus 4 (uno per me e uno per +Emanuele Granata ) a prezzi vantaggiosi, ho ricevuto un Chromebook Samsung in regalo da Google (il modello con il supporto per le sim), ho provato i Google Glass, ho fatto acquisti al Google Store (speravo in prezzi più bassi) ma ripeto: la cosa migliore per me è stato avere la possibilità di discutere con googler ansiosi di sentire la nostra voce.
Vediamo cosa posso riepilogare senza rischiare di farmi buttare fuori dal programma per violazione del NDA (accordo di non divulgazione).
+Matt Cutts ha ribadito per l'ennesima volta che attualmente i +1 non influenzano la SERP.
La mia personale considerazione è che il fatto che non siano uno dei fattori che Google utilizza per decidere il ranking non significa che i +1 non abbiano un loro valore. Ogni +1 ricevuto infatti contribuisce a renderci più "credibili" o "affidabili" per l'utente che vede una nostra pagina e questo è indubbiamente un fattore che può spingere l'utente a leggere il nostro post (e una volta letto è più facile che venga dato un +1 o venga ricondiviso aumentando ulteriormente la visibilità). Qualora i +1 dovessero venir presi in considerazione in futuro, noi che abbiamo iniziato ad accumularli subito, saremo ovviamente avvantaggiati. [ribadisco che questa è la mia opinione]
Helpouts sarà una figata pazzesca ma come ha avuto modo di scoprire chi ha già ricevuto l'invito al momento non è disponibile dall'Italia (fortunatamente io ero in California a seguire una sessione del #tcsummit2013 proprio su Helpouts quando mi è arrivato l'invito quindi doppia fortuna). Si tratta di un sistema in cui Google metterà in contatto chi può aiutare gli altri (gratuitamente o a pagamento) con chi ha bisogno di essere aiutato.
Il Chromebook che ci hanno regalato è proprio un bel giocattolino. Gmail, Drive e altre web applicazioni possono funzionare (ovviamente in parte) anche offline quindi persino in Italia ha un suo perché ... Tasto dolente è la tastiera, tastiera americana ovviamente e anche se vengono forniti degli adesivi con i tasti del layout italiano questi non sono tutti applicabili visto che il tasto per il < e > non è presente (si ottengono con alt + shift + z o x ) quindi si rimane un po' in un limbo. Personalmente io scrivo senza guardare la tastiera quindi tengo il layout italiano e digito senza curarmi che i tasti non corrispondano a quanto mi aspetto mentre per programmare cambio il layout in americano così da avere le parentesi più comodamente raggiungibili.
Il summit comprendeva anche una gitarella per il Googleplex giusto per farci rodere per le loro condizioni di lavoro (a confronto Willy Wonka sembra uno schiavista)
Ovviamente non potevo esimermi dal provare i Google Glass. Carini, molto carini ma per il momento le cose per cui sono più utili sono fare foto e video ai propri figli senza dover perdere tempo a tirar fuori l'attrezzatura. Per il resto immagino che al posto di vedere gente camminare fissando il proprio cellulare vedremo gente camminare con lo sguardo assorto ma la differenza sostanziale sarà che alcuni menù sono attivabili inclinando la testa in alto e in basso quindi vedremo anche qualcuno camminare con il passo del piccione :D Scherzi a parte conto di vedere delle applicazioni decisamente interessanti per questo device.
Per il resto, sarò insaziabile, avrei preferito avere ancora più anteprime :)
Spero di riuscire a trovare ancora il tempo per mantenere il mio stato di TC per partecipare al prossimo Summit :)
20/09/13
Rimandare la lettura di una mail/2
Continuiamo la serie di articoli, per tutti, incentrati sugli Apps Script. Nel caso arriviate solo adesso vi consiglio di dare almeno un'occhiata all'introduzione all'argomento.
Oggi andremo ad implementare un'ottimizzazione per il meccanismo proposto nell'articolo precedente. Come avevo fatto notare infatti la soluzione proposta aveva il difetto che tutti i post filtrati venivano recuperati solo una volta al giorno. Questo faceva si che anche se avessimo impostato il trigger tra le 21 e le 22 tutti i messaggi ricevuti dalle 22 in avanti sarebbero rimasti nascosti fino al giorno successivo, a prescindere dalla nostra disponibilità a leggerli subito.
Per ovviare a questo servirebbe che lo script venisse periodicamente eseguito durante tutto il periodo di disponibilità. Purtroppo non è possibile abilitare/disabilitare un filtro di Gmail tramite Apps Script quindi la soluzione più semplice che mi è venuta in mente mi aiuterà a mostrare come poter impostare programmaticamente un trigger.
In maniera abbastanza banale rimuoveremo il trigger creato precedentemente, creeremo due nuove funzioni che si occuperanno di create e rimuove un trigger che verrà eseguito ogni minuto il quale lancerà effettivamente la funzione originaria per il recupero delle mail. Non ci occuperemo solo di definire l'orario di esecuzione delle sue nuove funzioni che saranno l'inizio e la fine del nostro periodo di disponibilità.
Il codice aggiornato sarà questo
Il codice aggiornato sarà questo
Si nota l'aggiunta delle due funzioni startAvailability e stopAvailability che si occupano reciprocamente di creare un trigger per eseguire (ogni 5 minuti) la funzione che recupera le mail e per rimuovere questo trigger.
Di fatto la funzione di rimozione potrebbe essere snellita se alla creazione del trigger venisse salvato il riferimento in modo da aver modo di puntare al trigger corretto da rimuovere. Personalmente preferisco questa versione perchè gestisce anche eventuali duplicazioni date da errori.
L'unica cosa che rimane da fare è modificare i trigger
in modo che appaiano così
Ovviamente dovrete avere l'accortezza di impostare i vostri orari di disponibilità, non i miei.
Inoltre potete impostare più fasce definendo altre coppie di trigger ...
Da notare che anche se il trigger riporta una fascia di un'ora la funzione verrà richiamata una volta sola. Google specifica che i trigger non sono da considerarsi puntuali ma hanno un certo margine di tolleranza. In realtà mi è capitato raramente di sperimentare dei ritardi nell'esecuzione ma per sicurezza non usateli per pianificare l'assunzione delle vostre medicine ;)
Il filtro rimane quello definito nel precedente articolo (ovviamente potete espanderlo quando volete) quindi in poco tempo siamo riusciti a ottimizzare ulteriormente questa funzionalità aggiuntiva.
Come sempre sono disponibile a rispondere alle vostre domande e desideroso di ricevere il vostro feedback. Vi sembro troppo tecnico o poco interessante ? Dite pure la vostra ;)
Di fatto la funzione di rimozione potrebbe essere snellita se alla creazione del trigger venisse salvato il riferimento in modo da aver modo di puntare al trigger corretto da rimuovere. Personalmente preferisco questa versione perchè gestisce anche eventuali duplicazioni date da errori.
L'unica cosa che rimane da fare è modificare i trigger
in modo che appaiano così
Ovviamente dovrete avere l'accortezza di impostare i vostri orari di disponibilità, non i miei.
Inoltre potete impostare più fasce definendo altre coppie di trigger ...
Da notare che anche se il trigger riporta una fascia di un'ora la funzione verrà richiamata una volta sola. Google specifica che i trigger non sono da considerarsi puntuali ma hanno un certo margine di tolleranza. In realtà mi è capitato raramente di sperimentare dei ritardi nell'esecuzione ma per sicurezza non usateli per pianificare l'assunzione delle vostre medicine ;)
Il filtro rimane quello definito nel precedente articolo (ovviamente potete espanderlo quando volete) quindi in poco tempo siamo riusciti a ottimizzare ulteriormente questa funzionalità aggiuntiva.
Come sempre sono disponibile a rispondere alle vostre domande e desideroso di ricevere il vostro feedback. Vi sembro troppo tecnico o poco interessante ? Dite pure la vostra ;)
19/09/13
Rimandare la lettura di una mail
La fine arte della procrastinazione può affinarsi anche grazie ai Google Apps Script.
Io adoro essere sempre raggiungibile ma essere in controllo su chi mi possa raggiungere e quando e i questo trovo un valido aiuto in una versione leggermente modificata di uno script rilasciato da Google diverso tempo fa.
Io adoro essere sempre raggiungibile ma essere in controllo su chi mi possa raggiungere e quando e i questo trovo un valido aiuto in una versione leggermente modificata di uno script rilasciato da Google diverso tempo fa.
Facciamo un esempio concreto della problematica che andremo a affrontare in questo articolo della serie #GAS.
Poniamo che siamo iscritti ad alcune newsletter commerciali (non tutto il commerciale è spam) o riceviamo notifiche di forum. Si tratta di informazioni che noi vogliamo ricevere ma magari non vogliamo che ci disturbino durante il lavoro o lo studio.
In linea di massima la priority Inbox fa un ottimo lavoro consentendoci di ricevere notifiche solo le le mail che riteniamo importanti ma tutte le altre rimarranno, archiviate o nella posta in arrivo, non lette, in attesa di ricevere le nostre attenzioni. Questo però rischia di diventare uno stimolo a interrompere la nostra attività per andare a leggere quelle mail che distolgono la nostra attenzione. Con questo metodo invece le mail verranno archiviate e segnate come lette. In questo modo non ci sarà nulla a distrarci.
Successivamente, all'orario che avremo stabilito (una volta usciti dall'ufficio, dopo cena o rientrando a casa da scuola) le mail verranno riesumate raggiungendoci con tanto di eventuale notifica.
In questo modo non dovremo rinunciare alle informazioni che ci interessano e non correremo il rischio di venir distratti.
Vediamo subito come implementare questa utilissima funzionalità in pochi semplici passi.
Andiamo al solito indirizzo script.google.com e creiamo uno script vuoto in cui incolleremo questo codice
Andiamo al solito indirizzo script.google.com e creiamo uno script vuoto in cui incolleremo questo codice
I commenti nel codice sono abbastanza chiari. La funzione setup è quasi superflua visto che si farebbe prima a creare l'etichetta direttamente in Gmail ma in questo modo vediamo una funzione che verrà chiamata solo una volta per preparare l'ambiente e vediamo correttamente tutto il flusso delle autorizzazioni. Adesso però diamo il via alle danze.
Lanciamo la funzione setup
alla prima richiesta di autorizzazione continuiamo
e CONTROLLIAMO SEMPRE quali autorizzazioni ci vengono richieste prima di accettare
In questo caso lo script noi vogliamo che lo script possa accedere alle nostre email e gestirle modificando etichette e stato quindi l'autorizzazione richiesta coincide con quanto vogliamo.
A questo punto andiamo a configurarlo affinché venga eseguito ogni giorno quando torniamo ad essere meno impegnati
Io ho impostato l'esecuzione tra le 21 e le 22 ma ovviamente voi ovviamente potete impostare l'esecuzione quando più vi aggrada.
Adesso lo script è pronto e autorizzato e ha impostato quanto gli serviva.
Ricordiamoci sempre che in qualsiasi momento possiamo revocare qualsiasi autorizzazione a siti/applicazioni da qui.
A questo punto tutto è pronto per recuperare le mail e non rimane altro da fare che creare un filtro per posticiparla. I criteri ovviamente li scegliete voi, l'importante è che le azioni da eseguire siano:
Da notare che tutte le mail che verranno filtrate dopo l'esecuzione giornaliera dello script finiranno posticipate al giorno dopo (ho in programma una versione più evoluta che tratterò in seguito).
Se vi interessa l'articolo di google con lo script originale è qui
Come sempre resto in attesa dei vostri feedback ;)
Lanciamo la funzione setup
alla prima richiesta di autorizzazione continuiamo
e CONTROLLIAMO SEMPRE quali autorizzazioni ci vengono richieste prima di accettare
In questo caso lo script noi vogliamo che lo script possa accedere alle nostre email e gestirle modificando etichette e stato quindi l'autorizzazione richiesta coincide con quanto vogliamo.
A questo punto andiamo a configurarlo affinché venga eseguito ogni giorno quando torniamo ad essere meno impegnati
Io ho impostato l'esecuzione tra le 21 e le 22 ma ovviamente voi ovviamente potete impostare l'esecuzione quando più vi aggrada.
Adesso lo script è pronto e autorizzato e ha impostato quanto gli serviva.
Ricordiamoci sempre che in qualsiasi momento possiamo revocare qualsiasi autorizzazione a siti/applicazioni da qui.
A questo punto tutto è pronto per recuperare le mail e non rimane altro da fare che creare un filtro per posticiparla. I criteri ovviamente li scegliete voi, l'importante è che le azioni da eseguire siano:
- saltare la posta in arrivo (archiviare)
- applicare l'etichetta "Snooze"
- segnare come letta
Fatto!
Adesso potete godervi i frutti del vostro lavoro.
Da notare che tutte le mail che verranno filtrate dopo l'esecuzione giornaliera dello script finiranno posticipate al giorno dopo (ho in programma una versione più evoluta che tratterò in seguito).
Se vi interessa l'articolo di google con lo script originale è qui
Come sempre resto in attesa dei vostri feedback ;)
18/09/13
Google Apps Script
Con questo post voglio inaugurare una nuova serie di post un po' più
tecnici del solito su un argomento che mi sta decisamente a cuore. Non
preoccupatevi però, la mia intenzione non è solo di fornire sterile
nozionismo ma voglio guidare per mano coloro che sono interessati a
conoscere l'argomento e fornire comunque un prodotto finito per l'utente
finale che potrà saltare le spiegazioni e godersi il risultato finale.
Una serie di post per tutti per poter ottenere il meglio dai prodotti Google.
Iniziamo un attimo a capire cosa di cosa sto parlando: Google Apps Script è un sistema cloud per l'esecuzione di codice JavaScript per estendere le funzionalità delle Google Apps. Detto così sembra Arabo ma un mio collega egiziano mi conferma che non lo è. In pratica Google fornisce la possibilità di scrivere di semplici programmi che vengono eseguiti direttamente sui suoi server collegati ai suoi prodotti. Si può creare uno script che salva gli allegati di mail con una certa etichetta in una cartella su Drive. Si può controllare il calendario e mandare delle mail in base a determinati eventi. Si può creare un template per delle mail in Drive e automatizzare la personalizzazione e l'invio a un gruppo di contatti. Si può fare anche molto di più andando a creare interfacce web per l'interazione umana e elaborare i dati fornendo un feed rss o un json per renderli accessibili a terze parti (o ad applicazioni Android). Si può fare ancora molto di più e sempre in maniera molto semplice e veloce.
Ovviamente ci sono anche delle restrizioni. I nostri script avranno a disposizione delle risorse limitate: una singola esecuzione non può protrarsi oltre i 6 minuti (che è già un bel tempo) quindi dovremo elaborare grosse quantità di dati in più scaglioni. Ci sono anche limitazioni sulle 24 ore, sul traffico generato e su altre cose ma in linea di massima impareremo a convivere con questi limiti creando comunque delle piccole meraviglie (lo stato di funzionamento dei vari servizi e il riepilogo delle quote è consultabile qui).
Ovviamente per raggiungere i massimi livelli di competenza i requisiti sono la conoscenza della lingua Inglese, una mentalità da programmatore e la conoscenza di JavaScript. Il mio obiettivo però è ampliare il più possibile il bacino d'utenza includendo anche chi non abbia alcuno di questi requisiti.
Il modo migliore per iniziare è puntare direttamente su script.google.com
Come si può vedere di default abbiamo una schermata con 3 sezioni:
Vi consiglio di provare a selezionare Gmail dalla colonna di sinistra, di dare un'occhiata al codice che viene mostrato e all'ambiente con cui cercherò di farvi familiarizzare nell'arco dei prossimi post.
Questo esempio non vi darà problemi se avete la inbox quasi vuota altrimenti girerà molto a lungo ...
Il mio consiglio è di modificare la riga numero 9 da
Il passo successivo è salvare questo nuovo semplice progetto in modo da poterlo testare. Una volta datogli un nome (io l'ho chiamato "test gmail") possiamo aprire il menù "Esegui", cliccare su "processInbox" e ammirare la prima finestra di sicurezza "Autorizzazione richiesta". Uno script per accedere ai dati richiede delle autorizzazioni da parte dell'utente, approfondiremo in seguito. Per ora iniziamo a cliccare su "Continua" e controlliamo nella nuova finestra il dettaglio delle autorizzazioni richieste che in questo caso si limitano a "Visualizza e gestisci la tua posta" (considerando che la funzione in questione andrà a scorrere i messaggi nella inbox e loggare gli oggetti direi che è sensato). Una volta terminata l'esecuzione dal menù "Visualizza" si può accedere al "Log" e troveremo una lista degli oggetti dei messaggi delle discussioni presenti nella nostra inbox (al massimo delle prime 3).
Una volta finiti i vostri test potete rimuovere l'autorizzazione concessa andando qui e cercando il nome del progetto (nel mio caso "test gmail") e cliccando sul pulsante a fianco.
Il prossimo articolo sarà su un mio piccolo adattamento di uno script pubblicato da Google diverso tempo fa incentrato sull'ottimizzazione delle mail ricevute per non essere distratti durante il lavoro ma essere sicuri di non perdere nemmeno una delle mail che vogliamo ricevere.
Spero con questo di aver iniziato a incuriosirvi e di invogliarvi a seguire questa serie di articoli taggati #GAS.
Nel frattempo potete iniziare a dare un'occhiata alla sezione ufficiale sul portale per gli sviluppatori di Google https://developers.google.com/apps-script (in Inglese)
P.S. si, so che alcuni di voi se ne saranno accorti: sto cercando di guadagnarmi il titolo di GDE per Apps Script quindi il vostro apprezzamento, i vostri consigli e le vostre critiche sono ben più che graditi. SONO RICHIESTI !!!
Una serie di post per tutti per poter ottenere il meglio dai prodotti Google.
Iniziamo un attimo a capire cosa di cosa sto parlando: Google Apps Script è un sistema cloud per l'esecuzione di codice JavaScript per estendere le funzionalità delle Google Apps. Detto così sembra Arabo ma un mio collega egiziano mi conferma che non lo è. In pratica Google fornisce la possibilità di scrivere di semplici programmi che vengono eseguiti direttamente sui suoi server collegati ai suoi prodotti. Si può creare uno script che salva gli allegati di mail con una certa etichetta in una cartella su Drive. Si può controllare il calendario e mandare delle mail in base a determinati eventi. Si può creare un template per delle mail in Drive e automatizzare la personalizzazione e l'invio a un gruppo di contatti. Si può fare anche molto di più andando a creare interfacce web per l'interazione umana e elaborare i dati fornendo un feed rss o un json per renderli accessibili a terze parti (o ad applicazioni Android). Si può fare ancora molto di più e sempre in maniera molto semplice e veloce.
Ovviamente ci sono anche delle restrizioni. I nostri script avranno a disposizione delle risorse limitate: una singola esecuzione non può protrarsi oltre i 6 minuti (che è già un bel tempo) quindi dovremo elaborare grosse quantità di dati in più scaglioni. Ci sono anche limitazioni sulle 24 ore, sul traffico generato e su altre cose ma in linea di massima impareremo a convivere con questi limiti creando comunque delle piccole meraviglie (lo stato di funzionamento dei vari servizi e il riepilogo delle quote è consultabile qui).
Ovviamente per raggiungere i massimi livelli di competenza i requisiti sono la conoscenza della lingua Inglese, una mentalità da programmatore e la conoscenza di JavaScript. Il mio obiettivo però è ampliare il più possibile il bacino d'utenza includendo anche chi non abbia alcuno di questi requisiti.
Il modo migliore per iniziare è puntare direttamente su script.google.com
Come si può vedere di default abbiamo una schermata con 3 sezioni:
- a sinistra abbiamo la possibilità di sfruttare dei semplici template per utilizzare, velocemente ed in modo guidato, i vari servizi
- a destra nella metà superiore abbiamo link ad alcuni tutorial
- a destra in basso abbiamo gli script più recenti che abbiamo aperto
Vi consiglio di provare a selezionare Gmail dalla colonna di sinistra, di dare un'occhiata al codice che viene mostrato e all'ambiente con cui cercherò di farvi familiarizzare nell'arco dei prossimi post.
Questo esempio non vi darà problemi se avete la inbox quasi vuota altrimenti girerà molto a lungo ...
Il mio consiglio è di modificare la riga numero 9 da
for (var i = 0; i < threads.length; i++) {in
for (var i = 0; i < threads.length && i < 3; i++) {in questo modo (oltre ad aver fatto la vostra prima modifica a uno script) vi assicurerete che lo script sia eseguito al massimo sulle prime 3 discussioni della vostra inbox.
Il passo successivo è salvare questo nuovo semplice progetto in modo da poterlo testare. Una volta datogli un nome (io l'ho chiamato "test gmail") possiamo aprire il menù "Esegui", cliccare su "processInbox" e ammirare la prima finestra di sicurezza "Autorizzazione richiesta". Uno script per accedere ai dati richiede delle autorizzazioni da parte dell'utente, approfondiremo in seguito. Per ora iniziamo a cliccare su "Continua" e controlliamo nella nuova finestra il dettaglio delle autorizzazioni richieste che in questo caso si limitano a "Visualizza e gestisci la tua posta" (considerando che la funzione in questione andrà a scorrere i messaggi nella inbox e loggare gli oggetti direi che è sensato). Una volta terminata l'esecuzione dal menù "Visualizza" si può accedere al "Log" e troveremo una lista degli oggetti dei messaggi delle discussioni presenti nella nostra inbox (al massimo delle prime 3).
Una volta finiti i vostri test potete rimuovere l'autorizzazione concessa andando qui e cercando il nome del progetto (nel mio caso "test gmail") e cliccando sul pulsante a fianco.
Il prossimo articolo sarà su un mio piccolo adattamento di uno script pubblicato da Google diverso tempo fa incentrato sull'ottimizzazione delle mail ricevute per non essere distratti durante il lavoro ma essere sicuri di non perdere nemmeno una delle mail che vogliamo ricevere.
Spero con questo di aver iniziato a incuriosirvi e di invogliarvi a seguire questa serie di articoli taggati #GAS.
Nel frattempo potete iniziare a dare un'occhiata alla sezione ufficiale sul portale per gli sviluppatori di Google https://developers.google.com/apps-script (in Inglese)
P.S. si, so che alcuni di voi se ne saranno accorti: sto cercando di guadagnarmi il titolo di GDE per Apps Script quindi il vostro apprezzamento, i vostri consigli e le vostre critiche sono ben più che graditi. SONO RICHIESTI !!!
10/09/13
Google Plus e i post embedded
Basta una semplice infarinatura di html (ma penso che il più delle volte se ne possa anche fare a meno) per includere un post (pubblico) di G+ in una qualsiasi pagina esattamente come questo ...
La potenza di questa funzionalità è incredibile. Da G+ basta selezionare la voce dal menù a discesa
In italiano la voce da selezionare è "Incorpora post" e poi incollare il codice ottenuto nel sorgente della pagina ed ecco che il gioco è fatto.
Il requisito fondamentale è che il post in questione sia pubblico, bisogna poi notare che non tutti i tipi di post sono ancora supportati.
I seguenti tipi di post, infatti, non possono essere incorporati:
La potenza di questa funzionalità è incredibile. Da G+ basta selezionare la voce dal menù a discesa
In italiano la voce da selezionare è "Incorpora post" e poi incollare il codice ottenuto nel sorgente della pagina ed ecco che il gioco è fatto.
Il requisito fondamentale è che il post in questione sia pubblico, bisogna poi notare che non tutti i tipi di post sono ancora supportati.
I seguenti tipi di post, infatti, non possono essere incorporati:
- post di una community
- post di Eventi
- post di Hangout on Air
Mi raccomando di inserire la mia pagina G+ in una cerchia con notifiche per non rischiare di perdervi i futuri aggiornamenti.
Iscriviti a:
Post (Atom)













