ContextHub è un framework per la memorizzazione, la manipolazione e la presentazione dei dati contestuali. Per ulteriori informazioni su ContextHub, consultare la documentazione per gli sviluppatori. ContextHub sostituisce Client Context nell'interfaccia utente touch.
Configurate la barra degli strumenti ContextHub per controllare se viene visualizzata in modalità Anteprima, per creare store ContextHub e aggiungere moduli di interfaccia tramite l'interfaccia utente ottimizzata per il tocco.
Per impostazione predefinita, ContextHub è attivato in un'installazione AEM. 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 /libs/settings/cloudsettings
A causa della ristrutturazione del repository in AEM 6.4, la posizione delle configurazioni ContextHub è cambiata /etc/cloudsettings
in:
/libs/settings/cloudsettings
/conf/global/settings/cloudsettings
/conf/<tenant>/settings/cloudsettings
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 nell'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 a una 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.device | Visualizzare il dispositivo client | emulatori |
contexthub.location | Visualizza la latitudine e la longitudine del client, nonché la posizione su una mappa. Consente di cambiare la posizione. | geolocalizzazione |
contexthub.screen-orientation | Visualizza l'orientamento dello schermo del dispositivo (orizzontale o verticale) | emulatori |
contexthub.tagcloud | Visualizza statistiche sui tag pagina | tagcloud |
granite.profile | Visualizza le informazioni del profilo per l’utente corrente, inclusi AuthorizableID, displayName e familyName. È possibile modificare il valore di displayName e familyName. | profilo |
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 |
aem.resolvedsegment | Memorizza i segmenti attualmente risolti. Ascolta il servizio ContextHub SegmentManager per aggiornare automaticamente lo store |
contexthub.geolocation | Memorizza la latitudine e la longitudine della posizione del browser. |
contexthub.datetime | Memorizza la data, l'ora e la stagione correnti per la posizione del browser |
granite.emulators | Definisce proprietà e funzionalità per un certo numero di dispositivi e rileva il dispositivo client corrente |
contexthub.Generic-jsonp | Recupera e memorizza i dati da un servizio JSONP |
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 |
contexthub.tagcloud | Memorizza i tag e i conteggi dei tag delle pagine |
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 store ContexHub.
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 utente a una modalità dell'interfaccia utente esistente, ad esempio la modalità dell'interfaccia utente di Perona. 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 Converstion",
"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/<tenant>/settings/cloudsettings
Per le configurazioni ContextHub ancora presenti nei percorsi legacy, il percorso in cui impostare debug property
è /libs/settings/cloudsettings/legacy/contexthub
.
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 ConextHub, 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
Quando si esegue un aggiornamento a AEM, le configurazioni ContextHub vengono sottoposte a backup e archiviate in una posizione sicura. Durante l'aggiornamento, vengono installate le configurazioni ContextHub predefinite, sostituendo le configurazioni esistenti. Il backup è necessario per mantenere eventuali modifiche o aggiunte apportate.
Le configurazioni ContextHub sono memorizzate in una cartella denominata contexthub
nei nodi seguenti:
/conf/global/settings/cloudsettings
/conf/<tenant>/settings/cloudsettings
Dopo un aggiornamento, il backup viene memorizzato in una cartella denominata contexthub
sotto un nodo denominato:
/conf/global/settings/cloudsettings/default-pre-upgrade_yyyymmdd_xxxxxxx
o
/conf/<tenant>/settings/cloudsettings/default-pre-upgrade_yyyymmdd_xxxxxxx
La parte yyyymmdd
del nome del nodo è la data in cui è stato eseguito l'aggiornamento.
Per ripristinare le configurazioni ContextHub, utilizza il CRXDE Lite per copiare i nodi che rappresentano gli store, le modalità di interfaccia utente e i moduli di interfaccia dall'area sotto il nodo default-pre-upgrade_yyyymmdd_xxxxxx
all'area seguente:
/conf/global/settings/cloudsettings
o/conf/<tenant>/settings/cloudsettings