Candidati archivio ContextHub di esempio

ContextHub fornisce diversi esempi di store candidati che puoi utilizzare nelle soluzioni. Per ciascun campione vengono fornite le seguenti informazioni:

  • Dove trovare il codice sorgente in modo da poterlo aprire a scopo di apprendimento.
  • Come configurare i negozi creati dai candidati del negozio.
  • Struttura dei dati di archivio in modo da potervi accedere.
AVVERTENZA

I candidati per l’archivio di esempi vengono forniti come configurazioni di riferimento per aiutarti a creare una configurazione dedicata per il progetto e come tale non devono essere utilizzati direttamente.

Candidato per archivio campioni aem.segmentation

Archivia per segmenti ContextHub risolti e non risolti. Recupera automaticamente i segmenti da ContextHub SegmentManager.

Percorso di origine

/libs/settings/cloudsettings/legacy/contexthub/segmentation

Implementazione di base

Il candidato per l’archivio aem.segmentation estende ContextHub.Store.PersistedJSONPStore.

Configurazione

Quando crei un’ aem.segmentation store, non è necessario fornire una configurazione dettagliata. La configurazione predefinita specifica la posizione delle definizioni dei segmenti ContextHub.

{
   "service":{
      "jsonp":false,
      "timeout":1000,
      "path":"/etc/segmentation/contexthub.segment.js"
   }
}

contexthub.geolocation Sample Store Candidate

Il contexthub.geolocation Il candidato dell'archivio di esempio utilizza Google Maps per ottenere e archiviare informazioni sulla posizione del client.

Percorso di origine

/libs/settings/cloudsettings/legacy/contexthub/geolocation

Implementazione di base

Il contexthub.geolocation memorizza estensioni candidate ContextHub.Store.PersistedJSONPStore.

Configurazione

La configurazione predefinita specifica informazioni sul servizio Google e le coordinate iniziali di latitudine e longitudine.

{
        "service": {
            "jsonp": false,
            "timeout": 1000,
            "ttl": 1800000,
            "secure": false,
            "host": "maps.googleapis.com",
            "port": 80,
            "path": "/maps/api/geocode/json"
        },

        "eventDeferring": 16,

        "html5coordinatesDiscoveryAPI": {
            "timeout": 30000,
            "ttl": 900000,
            "highAccuracy": false
        },

        "initialValues": {
            "latitude": 37.331375,
            "longitude": -121.893992
        }
    }

Elementi dati

L’archivio utilizza una struttura dati simile a quella del seguente esempio:

{
   "latitude":"37.331375",
   "longitude":"-121.893992"
}
NOTA

Un criterio di sicurezza introdotto in Chrome 50.x richiede che tutte le chiamate relative alla geolocalizzazione vengano effettuate tramite una connessione protetta. Pertanto, l’AEM forza l’utilizzo di https per le chiamate API di geolocalizzazione se l’AEM è in esecuzione anche su https. In caso contrario, http viene utilizzato per rispettare il criterio della stessa origine.

Consulta questo post di blog su Google per ulteriori dettagli sulla modifica in Chrome.

contexthub.surferinfo Sample Store Candidate

Memorizza informazioni sull'ambiente client corrente, ad esempio dispositivo, finestra, browser, data e ora.

Percorso di origine

/libs/settings/cloudsettings/legacy/contexthub/surferinfo

Implementazione di base

Il contexthub.surferinfo memorizza estensioni candidate ContextHub.Store.PersistedStore.

Configurazione

La configurazione predefinita viene ereditata da ContextHub.Store.PersistedStore.

Elementi dati

Gli archivi che utilizzano questo candidato hanno una struttura dati simile a quella del seguente esempio:

{
   "display":{
      "resolution":{
         "width":1440,
         "height":900
      },
      "devicePixelRatio":1,
      "colorDepth":24,
      "nrOfColors":16777216,
      "pixelsPerInch":96,
      "orientation":{
         "mode":"landscape",
         "direction":"normal"
      }
   },
   "window":{
      "dimension":{
         "width":1395,
         "height":652
      },
      "percentageUsage":0.7
   },
   "browser":{
      "version":"39.0",
      "family":"Firefox",
      "userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:39.0) Gecko/20100101 Firefox/39.0"
   },
   "device":{
      "category":"Desktop",
      "type":"Desktop",
      "model":"PC",
      "version":""
   },
   "isMobile":true,
   "os":{
      "name":"Mac OS X",
      "version":"10"
   },
   "year":2015,
   "month":7,
   "day":22,
   "hour":14,
   "minutes":1
}

Candidato archivio esempi granite.emulators

Il granite.emulators il candidato dell'archivio di esempio memorizza informazioni sui dispositivi client.

Percorso di origine

/libs/settings/cloudsettings/legacy/contexthub/emulators

Implementazione di base

Il granite.emulators memorizza estensioni candidate ContextHub.Store.PersistedStore.

Configurazione

La configurazione predefinita include un array denominato defaultEmulators che contiene informazioni su dispositivi diversi. Quando crei un archivio, fornisci diversi profili dispositivo nella proprietà Configurazione dettagli, utilizzando il formato illustrato nell’esempio seguente:

{
   "defaultEmulators":[
        {
            "id": "iphone-6",
            "title": "iPhone 6",
            "type": "mobile",
            "platform": "iOS",
            "platformVersion": "8.1.3",
            "width": 750,
            "height": 1334,
            "canRotate": true,
            "orientation": "Portrait",
            "device-pixel-ratio": 2
        },
        {
            "id": "iphone-6-plus",
            "title": "iPhone 6 Plus",
            "type": "mobile",
            "platform": "iOS",
            "platformVersion": "8.1.3",
            "width": 1080,
            "height": 1920,
            "canRotate": true,
            "orientation": "Portrait",
            "device-pixel-ratio": 3
        },
        {
            "id": "galaxy-s4",
            "title": "Samsung Galaxy S4",
            "type": "mobile",
            "platform": "Android",
            "platformVersion": "4.4.2 KitKat",
            "width": 1080,
            "height": 1920,
            "canRotate": true,
            "orientation": "Portrait",
            "device-pixel-ratio": 3
        }
    ]
}

Elementi dati

La struttura dati dell'archivio è simile all'esempio seguente:

{
   "devices":[
      {"id":"native",
      "title":"Native",
      "type":"screen",
      "width":1395,
      "height":374,
      "orientation":"Landscape",
      "platform":"Mac OS X",
      "platformVersion":"10",
      "canRotate":false
      },
      {"id":"ipad-3",
      "title":"iPad 3 / 4 / Air",
      "type":"tablet",
      "platform":"iOS",
      "platformVersion":"8.1.3",
      "width":1536,
      "height":2048,
      "canRotate":true,
      "orientation":"Portrait",
      "device-pixel-ratio":2
      },
      {"id":"iphone-6",
      "title":"iPhone 6",
      "type":"mobile",
      "platform":"iOS",
      "platformVersion":"8.1.3",
      "width":750,
      "height":1334,
      "canRotate":true,
      "orientation":"Portrait",
      "device-pixel-ratio":2
      },
      {"id":"galaxy-s4",
      "title":"Samsung Galaxy S4",
      "type":"mobile",
      "platform":"Android",
      "platformVersion":"4.4.2 KitKat",
      "width":1080,
      "height":1920,
      "canRotate":true,
      "orientation":"Portrait",
      "device-pixel-ratio":3
      }
   ],
   "currentDeviceId":"native",
   "orientations":[
      {"id":"landscape",
      "title":"Landscape"
      },
      {"id":"portrait",
       "title":"Portrait"
      }
   ],
   "currentDevice":{
      "id":"native",
      "title":"Native",
      "type":"screen",
      "width":1395,
      "height":374,
      "orientation":"Landscape",
      "platform":"Mac OS X",
      "platformVersion":"10",
      "canRotate":false
   }
}

Candidato all’archivio di campioni di granite.profile

Memorizza informazioni sull'utente corrente.

Percorso di origine

/libs/settings/cloudsettings/legacy/contexthub/profile

Implementazione di base

Il granite.profile memorizza estensioni candidate ContextHub.Store.PersistedJSONPStore.

Configurazione

Viene utilizzata la seguente configurazione predefinita. Non modificare questa configurazione.

{
   "service":{
      "jsonp":false,
      "timeout":1000,
      "path":"${contexthub:/store/profile/path}.infinity.json"
   },
   "initialValues":{"path":"/home/users/a/anonymous"}
}

Elementi dati

Gli archivi che utilizzano questo candidato hanno una struttura dati simile a quella del seguente esempio:

{
   "displayName":"anonymous",
   "path":"/home/users/6/6zavE_DGre6Ad9Y5E0Ba",
   "avatar":"/etc/designs/default/images/social/avatar.png",
   "authorizableId":"anonymous"
}

In questa pagina