Pebble, in arrivo i plug-in: dati e comandi su qualsiasi quadrante
Vedere sul quadrante che si preferisce il meteo, il prezzo di un’azione o la luminosità della luce in cucina, e spegnerla con un tocco dal polso: è l’idea dei plug-in di Pebble. Secondo la pagina per sviluppatori di Pebble, un plug-in è un piccolo script JavaScript che gira sul telefono, fornisce dati a qualsiasi quadrante o app Pebble (e a Index) ed espone azioni che questi possono far partire.
Per chi usa uno smartwatch Pebble, per ora cambia poco: la funzione è sperimentale, disattivata di default e pensata come anteprima per chi sviluppa. Pebble non indica una data di uscita per tutti gli utenti.
A cosa serve, nella vita di tutti i giorni
Pebble parte da un esempio semplice: un quadrante che mostra il meteo non dovrebbe avere una propria API e una propria chiave. L’app Pebble recupera già il meteo dei luoghi salvati dall’utente e, resa disponibile come plug-in, qualunque app può mostrarlo.
Lo stesso vale per fonti di dati particolari. Pebble cita come esempi un monitor della glicemia o gli orari degli autobus: chi li mette a disposizione come plug-in permette agli utenti di vederli sul quadrante che preferiscono, invece che solo su quello disegnato dallo sviluppatore.
I plug-in rendono accessibili anche dati dell’app Pebble che finora gli sviluppatori faticavano a ottenere: musica, notifiche, stato del telefono e altro. Le azioni permettono a un orologio (e a Index) di controllare luci o attività tramite un plug-in, senza che ogni app debba integrarsi con ogni servizio.
Anche Index usa i plug-in. Secondo Pebble, aggiungere un servizio di liste di cose da fare, come nelle demo per Todoist, TickTick e Notion, richiede solo un plug-in e nessuna modifica all’app.
Cosa si può già provare
Pebble mette a disposizione alcuni esempi, con il codice sorgente:
- Plugin Demo: Weather Face: un quadrante costruito interamente su un plug-in meteo a scelta, quello integrato o un altro installato.
- met-weather: meteo per la posizione attuale del telefono, con dati di MET Norway, come alternativa al plug-in integrato.
- Plugin Demo: Dashboard: una watchapp con otto tile, ciascuna impostata su una lettura di un plug-in installato; i tocchi possono far partire azioni.
- stocks: prezzi delle azioni per i ticker scelti nella pagina delle impostazioni.
- hue: controllo delle luci Philips Hue sul bridge locale, da abbinare dalla pagina delle impostazioni.
- notion, ticktick, todoist: esempi di plug-in con accesso tramite OAuth.
Un’azione di esempio è set_on, che accende o spegne una luce e risponde con un testo del tipo «Kitchen off.». Chi lancia un’azione deve indicare il plug-in e il sistema non ripiega su un altro.
C’è poi il plug-in integrato Watch State, che ha solo azioni e richiede il permesso LaunchApps: launch_app apre un’app o un quadrante del locker, launch_previous_app torna all’app precedente. Per l’agente di Index, un plug-in può comparire come destinazione per note, promemoria o messaggi (create_note, create_reminder, send_to_agent). Finché l’utente non ha fatto l’accesso compare un pulsante Connect che apre le impostazioni del plug-in; send_to_agent inoltra il messaggio a un agente esterno ed è offerto all’agente di Index anche come strumento.
Come funziona e quali categorie esistono
Le API sono generiche, pensate per esporre qualsiasi tipo di dato in più formati. Le app non chiedono un plug-in preciso ma una categoria e un elemento, per esempio weather/location: risponde il plug-in installato che lo fornisce. Per questo sostituire un plug-in con un altro funziona solo se usano gli stessi nomi.
| Categoria | Origine secondo Pebble |
|---|---|
| weather, calendar, phone | integrate |
| music, notifications | integrate, solo su Android |
| home (luci) | demo Hue |
| finance (azioni) | demo Stocks |
| notes, reminders | demo Notion, Todoist e TickTick |
Un dato come quello di una luce può avere più istanze, per esempio «Cucina» e «Soggiorno», con proprietà come acceso/spento e luminosità (ad esempio 64%). Se la luce è spenta, la luminosità non c’è.
Come si attiva e quali permessi servono
I plug-in sono supportati, in forma sperimentale, dall’app mobile Pebble a partire dalla v1.14.0. Per attivarli: Impostazioni → Debug → Mostra opzioni di debug, poi «Use experimental plugins». Le app demo si installano da sole e nella schermata App compare una scheda Plugins con l’elenco dei plug-in e delle loro impostazioni.
Con la v1.15 dell’app arriva un sistema di permessi più granulare, attivo solo se i plug-in sono abilitati. Gli sviluppatori dichiarano i permessi nel file package.json (Internet con i domini, LocalNetwork, Location, Notifications, Calendar, Health e altri). Per impostazione predefinita, le app che possono mandare dati fuori dal telefono richiedono l’approvazione dell’utente per ogni permesso; le altre possono leggere senza chiedere. Finché l’utente non risponde, la richiesta fallisce con l’errore PERMISSION_DENIED (una fetch bloccata viene invece rifiutata come un errore di rete). Ogni permesso si può cambiare dalla pagina dell’app, e nelle impostazioni l’utente sceglie quando le app devono chiedere.
Il permesso Health non è ancora applicato: i dati di salute si leggono sull’orologio e servirebbe sincronizzare i permessi con l’orologio, cosa non ancora realizzata.
Stato del progetto: ancora sperimentale
Un plug-in può essere distribuito in un file .pbw insieme a un watchapp o a un quadrante, oppure da solo, senza il codice per l’orologio. Per chi vuole scriverne uno, Pebble indica stocks come l’esempio più semplice da copiare.
Gli sviluppatori, avverte Pebble, non devono ancora pubblicare nello store app che usano o offrono plug-in: l’API è instabile e cambierà prima del rilascio a tutti, e l’azienda chiede feedback. Tra le cose non ancora realizzate c’è l’uso dei «preferiti» dell’utente: un elenco ordinato di letture scelte nell’app (per esempio meteo di casa, batteria del telefono, prezzo di un’azione) che ogni quadrante con slot potrebbe mostrare senza configurazione.


