ContextHub è un framework per la memorizzazione, la manipolazione e la presentazione dei dati contestuali. Per ulteriori informazioni su ContextHub, consultate la panoramica dello sviluppatore ContextHub.
Potete configurare la barra degli strumenti ContextHub per controllare se viene visualizzata in modalità Anteprima, per creare store ContextHub e aggiungere moduli di interfaccia.
Configurate il servizio OSGi Adobe Granite ContextHub per mostrare o nascondere l' interfaccia utente ContextHub sulle pagine. Il PID di questo servizio è com.adobe.granite.contexthub.impl.ContextHubImpl.
Per configurare il servizio è possibile utilizzare la console Web oppure utilizzare un nodo JCR nella directory archivio:
com.adobe.granite.contexthub.show_ui
proprietà booleana su true
. Per nascondere l'interfaccia utente, impostare la proprietà su false
.Quando viene visualizzata l’interfaccia utente ContextHub, questa viene visualizzata solo sulle pagine AEM istanze dell’autore. L’interfaccia utente non viene visualizzata sulle pagine delle istanze pubblicate.
Configurare le modalità e i moduli dell’interfaccia utente visualizzati nella barra degli strumenti ContextHub in modalità Anteprima:
Le modalità di interfaccia utente sono visualizzate come una serie di icone sul lato sinistro della barra degli strumenti. Quando è selezionata questa opzione, i moduli di una modalità di interfaccia vengono visualizzati a destra.
Le icone sono riferimenti dalla libreria delle icone dell'interfaccia utente Coral.
Aggiungere una modalità di interfaccia utente ai moduli ContextHub correlati al gruppo. Quando create la modalità di interfaccia utente, fornite il titolo e l’icona che vengono visualizzati nella barra degli strumenti ContextHub.
Nella barra Experience Manager, fai clic o tocca Strumenti > Siti > Context Hub.
Tocca o fai clic sul contenitore di configurazione predefinito.
Tocca o fai clic su Configurazione Context Hub.
Tocca o fai clic sul pulsante Crea, quindi tocca o fai clic su Modalità interfaccia utente Context Hub.
Immettete i valori per le seguenti proprietà:
coral-Icon--user
Tocca o fai clic su Salva.
Aggiungete un modulo dell’interfaccia utente ContextHub alla modalità dell’interfaccia utente, in modo che venga visualizzato nella barra degli strumenti ContextHub per visualizzare l’anteprima del contenuto della pagina. Quando si aggiunge un modulo dell'interfaccia utente, si sta creando un'istanza di un tipo di modulo registrato con ContextHub. Per aggiungere un modulo dell'interfaccia utente, è necessario conoscere il nome del tipo di modulo associato.
AEM fornisce un tipo di modulo dell'interfaccia utente di base e diversi tipi di moduli dell'interfaccia utente di esempio sui quali è possibile basare un modulo dell'interfaccia utente. Nella tabella seguente è riportata una breve descrizione di ciascuno di essi. Per informazioni sullo sviluppo di un modulo di interfaccia utente personalizzato, consultate Creazione di moduli di interfaccia utente ContextHub.
Le proprietà del modulo dell'interfaccia utente includono una configurazione di dettaglio in cui è possibile specificare i valori per le proprietà specifiche del modulo. Fornite la configurazione dei dettagli in formato JSON. La colonna Tipo di modulo nella tabella contiene collegamenti verso informazioni sul codice JSON richiesto per ciascun tipo di modulo dell’interfaccia utente.
Tipo modulo | Descrizione | Store |
---|---|---|
contexthub.base | Tipo di modulo interfaccia utente generico | Configurate nelle proprietà del modulo dell'interfaccia utente |
contexthub.browserinfo | Visualizza informazioni sul browser | surferinfo |
contexthub.datetime | Visualizza informazioni su data e ora | datetime |
contexthub.location | Visualizza la latitudine e la longitudine del client, nonché la posizione su una mappa. Consente di cambiare la posizione. | geolocation |
contexthub.screen-orientation | Visualizza l'orientamento dello schermo del dispositivo (orizzontale o verticale) | emulators |
contexthub.tagcloud | Visualizza statistiche sui tag pagina | tagcloud |
granite.profile | Visualizza le informazioni sul profilo per l'utente corrente, inclusi authorizableID , displayName e familyName . È possibile modificare il valore di displayName e familyName . |
profile |
Nella barra Experience Manager, fai clic o tocca Strumenti > Siti > ContextHub.
Tocca o fai clic sul Contenitore di configurazione al quale vuoi aggiungere un modulo di interfaccia utente.
Fate clic o digitate la configurazione ContextHub alla quale desiderate aggiungere il modulo dell'interfaccia utente.
Tocca o fai clic sulla modalità dell’interfaccia a cui stai aggiungendo il modulo dell’interfaccia utente.
Tocca o fai clic sul pulsante Crea, quindi tocca o fai clic su Modulo interfaccia utente ContextHub (generico).
Immettete i valori per le seguenti proprietà:
(Facoltativo) Per ignorare la configurazione predefinita dello store, immettete un oggetto JSON per configurare il modulo dell'interfaccia utente.
Tocca o fai clic su Salva.
Create un archivio Context Hub per mantenere i dati utente e accedere ai dati in base alle esigenze. Gli store ContextHub si basano sui candidati store registrati. Quando create lo store, è necessario il valore di storeType con cui è stato registrato il candidato. (Vedere Creazione di candidati store personalizzati.)
Quando configurate uno store, la proprietà Configurazione dettagli consente di fornire valori per proprietà specifiche dello store. Il valore si basa sul parametro config
della funzione init
dello store. Pertanto, la necessità di fornire questo valore e il formato del valore dipende dallo store.
Il valore della proprietà Detail Configuration è un oggetto config
in formato JSON.
AEM fornisce i seguenti esempi di store candidati ai quali potete basare uno store.
Tipo di archivio | Descrizione |
---|---|
aem.segmentation | Memorizzazione per segmenti ContextHub risolti e non risolti. Recupera automaticamente i segmenti da ContextHub SegmentManager |
contexthub.geolocation | Memorizza la latitudine e la longitudine della posizione del browser. |
granite.emulators | Definisce proprietà e funzionalità per un certo numero di dispositivi e rileva il dispositivo client corrente |
granite.profile | Memorizza i dati del profilo per l'utente corrente |
contexthub.surferinfo | Memorizza informazioni sul client, quali informazioni sul dispositivo, tipo di browser e orientamento della finestra |
Nella barra Experience Manager, fai clic o tocca Strumenti > Siti > ContextHub.
Tocca o fai clic sul contenitore di configurazione predefinito.
Tocca o fai clic su Configurazione contestub
Per aggiungere uno store, tocca o fai clic sull'icona Crea, quindi tocca o fai clic su Configurazione ContextHub Store.
Immettete i valori per le proprietà di configurazione di base, quindi fate clic o toccate Avanti:
(Facoltativo) Per ignorare la configurazione predefinita dello store, immettete un oggetto JSON nella casella Configurazione dettagli (JSON).
Tocca o fai clic su Salva.
Questo esempio illustra come configurare uno store e visualizzare i dati in un modulo dell'interfaccia utente. In questo esempio, il servizio MD5 del sito jsontest.com viene utilizzato come origine dati per uno store. Il servizio restituisce il codice hash MD5 di una stringa specificata, in formato JSON.
Un archivio contestexthub.Generic-jsonp è configurato in modo da memorizzare i dati per la chiamata al servizio https://md5.jsontest.com/?text=%22text%20to%20md5%22
. Il servizio restituisce i seguenti dati visualizzati in un modulo dell'interfaccia utente:
{
"md5": "919a56ab62b6d5e1219fe1d95248a2c5",
"original": "\"text to md5\""
}
Il candidato per l'archivio di esempio contexthub.Generic-jsonp consente di recuperare dati da un servizio JSONP o da un servizio Web che restituisce dati JSON. Per questo store candidato, utilizzate la configurazione dello store per fornire dettagli sul servizio JSONP da utilizzare.
La funzione init della classe ContextHub.Store.JSONPStore
Javascript definisce un oggetto config
che inizializza il candidato allo store. L'oggetto config
contiene un oggetto service
che include dettagli sul servizio JSONP. Per configurare lo store, fornite l'oggetto service
in formato JSON come valore per la proprietà Configurazione dettagli.
Per salvare i dati dal servizio MD5 del sito jsontest.com, utilizzate la procedura in Creazione di un archivio ContextHub utilizzando le seguenti proprietà:
Titolo configurazione: md5
Tipo store: contexthub.Generic-jsonp
Obbligatorio: Seleziona
Abilitato: Seleziona
Configurazione dettagli (JSON):
{
"service": {
"jsonp": false,
"timeout": 1000,
"ttl": 1800000,
"secure": false,
"host": "md5.jsontest.com",
"port": 80,
"params":{
"text":"text to md5"
}
}
}
Aggiungete un modulo dell’interfaccia utente alla barra degli strumenti ContextHub per visualizzare i dati memorizzati nell’archivio di esempio di md5. In questo esempio, il modulo contexthub.base viene utilizzato per generare il seguente modulo dell’interfaccia utente:
Utilizzate la procedura in Aggiunta di un modulo dell'interfaccia utente per aggiungere il modulo dell'interfaccia a una modalità dell'interfaccia utente esistente, ad esempio la modalità dell'interfaccia utente personale di esempio. Per il modulo dell'interfaccia utente, utilizzate i seguenti valori delle proprietà:
Titolo modulo interfaccia utente: MD5
Tipo di modulo: contexthub.base
Configurazione dettagli (JSON):
{
"icon": "coral-Icon--data",
"title": "MD5 Conversion",
"storeMapping": { "md5": "md5" },
"template": "<p> {{md5.original}}</p>;
<p>{{md5.md5}}</p>"
}
È possibile abilitare una modalità di debug per ContextHub per consentire la risoluzione dei problemi. La modalità di debug può essere abilitata tramite la configurazione ContextHub o tramite CRXDE.
Modificare la configurazione di ContextHub e selezionare l'opzione Debug
Utilizzare CRXDE Lite per impostare la proprietà debug
su true in:
/conf/global/settings/cloudsettings
o/conf/<site>/settings/cloudsettings
Configurate il servizio Adobe Granite ContextHub OSGi (PID = com.adobe.granite.contexthub.impl.ContextHubImpl
) per registrare i messaggi di debug dettagliati utili durante lo sviluppo.
Per configurare il servizio è possibile utilizzare la console Web oppure utilizzare un nodo JCR nella directory archivio:
com.adobe.granite.contexthub.debug
su true
.La modalità silenziosa sopprime tutte le informazioni di debug. A differenza della normale opzione di debug, che può essere impostata in modo indipendente per ogni configurazione ContextHub, la modalità silenziosa è un'impostazione globale che ha precedenza rispetto a qualsiasi impostazione di debug a livello di configurazione ContextHub.
Questa funzione è utile per l’istanza di pubblicazione, in cui non sono necessarie informazioni di debug. Poiché è un’impostazione globale, è abilitata tramite OSGi.
http://<host>:<port>/system/console/configMgr
ContextHub può essere disattivato per impedire il caricamento di js/css e l'inizializzazione. Esistono due opzioni per disabilitare ContextHub:
Modificare la configurazione di ContextHub e selezionare l'opzione Disattiva ContextHub
o
disabled
su true in /conf/global/settings/cloudsettings/<configName>/contexthub