2013-04-19 6 views
12

È possibile ricevere una notifica in tempo reale (senza ampio polling) per le modifiche apportate a un documento Google (documento/foglio di lavoro/presentazione)? In tal caso, qual è la struttura del modello (se ciò ha senso)? Qualsiasi suggerimento alla documentazione o ai campioni sarebbe d'aiuto!Modifiche in tempo reale a Google Document/Foglio di calcolo/Presentazione

La documentazione su https://developers.google.com/drive/manage-changes fornisce una chiamata API che restituisce istantaneamente e indica se sono state apportate modifiche dall'ultimo. Tuttavia, questo è inutile che tu voglia sapere quasi non appena è stata apportata una modifica - dovresti fare le chiamate all'API back to back ogni secondo o prima e sfornare un sacco di risorse. Il Drive Real-time API offre invece un modo per essere immediatamente avvisati di eventuali modifiche senza polling ampio e frequente. Lo fa con una chiamata HTTP che "si blocca" finché non è pronta una modifica (o un timer scade). Questa è una classica tecnica a lungo sondaggio.

La mia domanda è se esiste una tale funzione per Google Documenti/fogli di lavoro/Presentazioni. Oppure è disponibile solo per file specifici dell'applicazione personalizzati diversi da quelli standard. Se non è disponibile, ci sono piani per renderli disponibili?

Grazie in anticipo!

risposta

1

A mia conoscenza, la risposta è "NO". Ho provato prima e potevo farlo solo con il polling temporizzato. L'API è limitata a dirti solo quando chiedi, non quando succede qualcosa.

Ho pensato a un codice incorporato nel documento e trasmesso automaticamente a un URL specifico oa un listener. I miei esperimenti sono stati con Google App Scripts. L'idea di dettaglio è di creare una funzione personalizzata che viene attivata nell'evento 'Salva'. Ma non potrei andare oltre visto che non c'è nulla di abbastanza nella documentazione secondo me per raggiungere questo obiettivo specifico.

Nelle tempistiche per questa disponibilità, ci sono domande nel forum degli script su questo, ma nessuno ha risposto su queste righe.

+0

Un dipendente di Google nel team dell'API Drive ha confermato che al momento non è possibile. – necromancer

+1

come ora Sembra che usando uno script di Google Apps non puoi fare una richiesta HTTP ('FetchUrlApp') in un evento' onEdit' di un foglio di calcolo. https://code.google.com/p/google-apps-script-issues/issues/detail?id=185#makechanges –

0

La risposta, temo, è no. Al momento non è possibile ricevere una notifica via e-mail quando viene apportata una modifica a un documento di testo di Drive. Questa funzione è disponibile per i fogli di calcolo, ma non per i file di testo. Se il tuo documento è pubblico, puoi iscriverti al suo feed RSS per visualizzare le modifiche o utilizzare la funzione Strumenti -> Cronologia revisioni in Drive. C'è un programma scaricabile, googledocsnotifier --information--, che ti invia una email quando vengono apportate modifiche e ti permette di aprire il documento che è stato modificato, ma sembra che funzioni solo quando sei online. È possibile download it here. Spero che questo aiuti!

+0

in secondo luogo sembra che la domanda potrebbe non essere stata chiara. NON sto cercando una notifica via email. Sto cercando un'API, quasi sicuramente un'API HTTP, che non ritorna fino a quando non è stata apportata una modifica (o è trascorso circa un minuto dal momento in cui è stata effettuata la chiamata). Inoltre, se viene apportata una modifica, dovrebbe tornare entro un paio di secondi dalla modifica o prima! – necromancer

Problemi correlati