Riferimento API per iOS/tvOS SDK iostvos-sdk-api-reference
Introduzione intro
Questa pagina descrive i metodi e le funzioni di callback esposti dal client nativo iOS/tvOS per l’autenticazione di Adobe Pass. I metodi e le funzioni di callback qui descritti sono definiti nei file di intestazione AccessEnabler.h
e EntitlementDelegate.h
. Sono disponibili nell'SDK di iOS AccessEnabler qui: [SDK directory]/AccessEnabler/headers/api/
Documentazione associata:
- Per una descrizione del flusso di adesione all'autenticazione di base di Adobe Pass, vedere Flusso di adesione.
- Per una descrizione dettagliata di come implementare Adobe Pass
flusso di autenticazione dei diritti tramite questa API, consulta il Manuale dell'integrazione di iOS. - Per la versione più recente dell'SDK di iOS AccessEnabler, vedi Libreria iOS Native Access Enabler.
- Le API pubbliche sono disponibili e completamente testate su tutti i tipi di client supportati. Per qualsiasi funzione pubblica, ci assicuriamo che ogni tipo di client abbia una versione corrispondente dei metodi associati.
- Le API pubbliche devono essere il più stabili possibile, per supportare la compatibilità con le versioni precedenti e garantire che le integrazioni dei partner non si interrompano. Tuttavia, per le API non pubbliche, ci riserviamo il diritto di modificare la loro firma in qualsiasi momento futuro. Se incontri un flusso particolare che non può essere supportato tramite una combinazione delle chiamate API di autenticazione di Adobe Pass pubbliche correnti, l’approccio migliore è quello di farcelo sapere. Tenendo conto delle tue esigenze, possiamo modificare le API pubbliche e fornire una soluzione stabile.
Riferimento API apis
-
init:softwareStatement - Crea un'istanza dell'oggetto AccessEnabler.
-
[OBSOLETO] init - Crea un'istanza dell'oggetto AccessEnabler.
-
setOptions:options:
- Configura le opzioni SDK globali come profile o visitorID. -
setRequestor:
requestorID
,setRequestor:requestorID:serviceProviders:
- Stabilisce l'identità del programmatore. -
[OBSOLETO]
setRequestor:signedRequestorId:
,setRequestor:signedRequestorId:serviceProviders:
- Stabilisce l'identità del programmatore. -
[OBSOLETO]
setRequestor:signedRequestorId:secret:publicKey
,setRequestor:signedRequestorId:serviceProviders:secret:publicKey
-Stabilisce l'identità del programmatore. -
setRequestorComplete:
- Informa l'applicazione che la fase di configurazione è stata completata. -
checkAuthentication
- Controlla lo stato di autenticazione dell'utente corrente. -
getAuthentication
,getAuthentication:withData:
- Avvia il flusso di lavoro di autenticazione completo. -
getAuthentication:filter
,getAuthentication:withData:
andFilter - Avvia il flusso di lavoro di autenticazione completo. -
displayProviderDialog:
- Informa l'applicazione per creare un'istanza degli elementi dell'interfaccia utente appropriati affinché l'utente selezioni un MVPD. -
setSelectedProvider:
- Informa AccessEnabler della selezione MVPD dell'utente. -
navigateToUrl:
- Informa l'applicazione che all'utente deve essere presentata la pagina di accesso MVPD. -
navigateToUrl:useSVC:
- Informa l'applicazione che all'utente deve essere presentata la pagina di accesso MVPD, utilizzando SFSafariViewController -
handleExternalURL:url
- Completa il flusso di autenticazione/disconnessione. -
[OBSOLETO]
getAuthenticationToken
- Richiede il token di autenticazione al server back-end. -
setAuthenticationStatus:errorCode:
- Informa l'applicazione dello stato del flusso di autenticazione. -
checkPreauthorizedResources:
- Determina se l'utente è già autorizzato a visualizzare risorse protette specifiche. -
checkPreauthorizedResources:cache:
- Determina se l'utente è già autorizzato a visualizzare risorse protette specifiche. -
preauthorizedResources:
- Fornisce un elenco di risorse che l'utente è già autorizzato a visualizzare. -
checkAuthorization:
,checkAuthorization:withData:
- Controlla lo stato di autorizzazione dell'utente corrente. -
getAuthorization:
,getAuthorization:withData:
- Avvia il flusso di autorizzazione. -
setToken:forResource:
- Informa l'applicazione che il flusso di autorizzazione è stato completato. -
tokenRequestFailed:errorCode:errorDescription:
- Informa l'applicazione che il flusso di autorizzazione non è riuscito. -
logout
- Avvia il flusso di disconnessione. -
getSelectedProvider
- Determina il provider attualmente selezionato. -
selectedProvider:
- Fornisce informazioni sull'MVPD attualmente selezionato all'applicazione. -
getMetadata:
- Recupera le informazioni esposte come metadati dalla libreria AccessEnabler. -
presentTvProviderDialog:
- Informa l'applicazione per visualizzare la finestra di dialogo SSO di Apple. -
dismissTvProviderDialog:
- Informa l'applicazione per nascondere la finestra di dialogo SSO di Apple. -
setMetadataStatus:encrypted:forKey:andArguments:
- Consegna i metadati richiesti da una chiamatagetMetadata:
. -
sendTrackingData:forEventType:
- Fornisce informazioni sui dati di tracciamento. -
MVPD
- Classe MVPD. [Contiene informazioni su MVPD]
init:softwareStatement initWithSoftwareStatement
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: crea istanze dell'oggetto AccessEnabler. Deve essere presente una singola istanza di AccessEnabler per ogni istanza dell'applicazione.
- (id) init:
(NSString *)softwareStatement;
Disponibilità: v3.0+
Parametri:
- softwareStatement: Stringa che identifica l'applicazione nel sistema di Adobe. Controllare come ottenere un rendiconto software.
init - [OBSOLETO] init
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: crea istanze dell'oggetto AccessEnabler. Deve essere presente una singola istanza di AccessEnabler per ogni istanza dell'applicazione.
- (id) init;
Disponibilità: v1.0+ Fino a: v3.0
Parametri: Nessuno
setOptions:opzioni setOptions
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: configura le opzioni SDK globali. Accetta un NSDictionary come argomento. I valori del dizionario vengono passati al server insieme a ogni chiamata di rete effettuata dall'SDK.
Nota: i valori verranno passati al server indipendentemente dal flusso corrente (autenticazione/autorizzazione). Se desideri modificare i valori, puoi chiamare questo metodo in qualsiasi momento.
- (void) setOptions:(NSDictionary *)options;
Disponibilità: v2.3.0+
Parametri:
-
options: NSDictionary contenente le opzioni SDK globali. Attualmente, sono disponibili le seguenti opzioni:
-
applicationProfile - Può essere utilizzato per creare configurazioni server basate su questo valore.
-
visitorID - Servizio ID Experience Cloud. Questo valore può essere utilizzato in seguito per i rapporti di analisi avanzata.
-
handleSVC - Valore booleano che indica se il programmatore gestirà i controller SFSafariView. Per ulteriori dettagli, consulta il supporto di SFSafariViewController nell'SDK iOS 3.2+.
- Se è impostato su false, l'SDK presenterà automaticamente all'utente finale un oggetto SFSafariViewController. L’SDK passerà ulteriormente all’URL della pagina di accesso MVPDs.
- Se è impostato su true, l'SDK NOT presenterà automaticamente all'utente finale un oggetto SFSafariViewController. L'SDK attiverà ulteriormente navigate(toUrl:{url}, useSVC:YES).
-
-
dispositivo_info - Informazioni client come descritto in Trasmissione delle informazioni client.
setRequestor:requestorID
, setRequestor:requestorID:serviceProviders:
setReqV3
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: stabilisce l'identità del programmatore. A ciascun programmatore viene assegnato un ID univoco al momento della registrazione all’Adobe per il sistema di autenticazione di Adobe Pass. Quando si tratta di token SSO e remoti, lo stato di autenticazione può cambiare quando l'applicazione è in background, setRequestor può essere richiamato nuovamente quando l'applicazione viene portata in primo piano per sincronizzarsi con lo stato del sistema (recuperare un token remoto se SSO è abilitato o eliminare il token locale se nel frattempo si è verificato un logout).
La risposta del server contiene un elenco di MVPD insieme ad alcune informazioni di configurazione collegate all'identità del programmatore. La risposta del server viene utilizzata internamente dal codice AccessEnabler. Solo lo stato dell'operazione (ovvero OPERAZIONE RIUSCITA/NON RIUSCITA) viene presentato all'applicazione tramite il callback setRequestorComplete:
.
Se il parametro urls
non viene utilizzato, la chiamata di rete risultante esegue il targeting dell'URL predefinito del provider di servizi: l'ambiente Adobe RELEASE/production.
Se viene fornito un valore per il parametro urls
, la chiamata di rete risultante eseguirà il targeting di tutti gli URL forniti nel parametro urls
. Tutte le richieste di configurazione vengono attivate contemporaneamente in thread separati. Il primo responder ha la precedenza quando si compila l’elenco degli MVPD. Per ogni MVPD nell'elenco, AccessEnabler ricorda l'URL del provider di servizi associato. Tutte le richieste di adesione successive vengono indirizzate all’URL associato al provider di servizi che è stato associato all’MVPD di destinazione durante la fase di configurazione.
- (void) setRequestor:(NSString *)requestorID
Disponibilità: v3.0+
- (void) setRequestor:(NSString *)requestorID serviceProviders:(NSArray *)urls;
Disponibilità: v3.0+
Parametri:
- requestorID: ID univoco associato al programmatore. La prima volta che ti registri al servizio di autenticazione di Adobe Pass, passa l’ID univoco assegnato dall’Adobe al tuo sito.
- url: parametro facoltativo; per impostazione predefinita, viene utilizzato il provider di servizi Adobe (http://sp.auth.adobe.com/). Questo array consente di specificare gli endpoint per i servizi di autenticazione e autorizzazione forniti da Adobe (a scopo di debug possono essere utilizzate istanze diverse). È possibile utilizzare questa opzione per specificare più istanze del provider di servizi di autenticazione di Adobe Pass. In tal caso, l'elenco MVPD è composto dagli endpoint di tutti i fornitori di servizi. Ogni MVPD è associato al provider di servizi più veloce, ovvero il provider che ha risposto per primo e che supporta tale MVPD.
serviceProviders
, la libreria recupererà la configurazione dal provider di servizi predefinito (ovvero https://sp.auth.adobe.com
per il profilo di produzione o https://sp.auth-staging.adobe.com
per il profilo di staging). Se viene fornito il parametro serviceProviders
, deve essere una matrice di URL. Le informazioni di configurazione vengono recuperate da tutti gli endpoint specificati e unite. Se esistono informazioni duplicate in risposte diverse del provider di servizi, il conflitto viene risolto a favore del server con la risposta più rapida, ovvero il server con il tempo di risposta più breve ha la precedenza.Callback attivati: setRequestorComplete:
setRequestor:setSignedRequestorId:
, setRequestor:setSignedRequestorId:serviceProviders:
- [OBSOLETO] setReq
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: stabilisce l'identità del programmatore. A ciascun programmatore viene assegnato un ID univoco al momento della registrazione all’Adobe per il sistema di autenticazione di Adobe Pass. Quando si tratta di token SSO e remoti, lo stato di autenticazione può cambiare quando l'applicazione è in background, setRequestor può essere richiamato nuovamente quando l'applicazione viene portata in primo piano per sincronizzarsi con lo stato del sistema (recuperare un token remoto se SSO è abilitato o eliminare il token locale se nel frattempo si è verificato un logout).
La risposta del server contiene un elenco di MVPD insieme ad alcune informazioni di configurazione collegate all'identità del programmatore. La risposta del server viene utilizzata internamente dal codice AccessEnabler. Solo lo stato dell'operazione (ovvero OPERAZIONE RIUSCITA/NON RIUSCITA) viene presentato all'applicazione tramite il callback setRequestorComplete:
.
Se il parametro urls
non viene utilizzato, la chiamata di rete risultante esegue il targeting dell'URL predefinito del provider di servizi: l'ambiente Adobe RELEASE/production.
Se viene fornito un valore per il parametro urls
, la chiamata di rete risultante eseguirà il targeting di tutti gli URL forniti nel parametro urls
. Tutte le richieste di configurazione vengono attivate contemporaneamente in thread separati. Il primo responder ha la precedenza quando si compila l’elenco degli MVPD. Per ogni MVPD nell'elenco, AccessEnabler ricorda l'URL del provider di servizi associato. Tutte le richieste di adesione successive vengono indirizzate all’URL associato al provider di servizi che è stato associato all’MVPD di destinazione durante la fase di configurazione.
- (void) setRequestor:(NSString *)requestorID
signedRequestorID:(NSString *)signedRequestorID;
Disponibilità: v1.0+ Fino a: v3.0
- (void) setRequestor:(NSString *)requestorID
signedRequestorID:(NSString *)signedRequestorID
serviceProviders:(NSArray *)urls;
Disponibilità: v1.0+ Fino a: v3.0
Parametri:
- requestorID: ID univoco associato al programmatore. Trasmetti l’ID univoco assegnato da Adobe al sito quando ti sei registrato per la prima volta con il servizio di autenticazione di Adobe Pass.
- signedRequestorID: Questo parametro esiste in iOS AccessEnabler versioni 1.2 e successive. Copia dell'ID richiedente con firma digitale della chiave privata. .
- url: parametro facoltativo; per impostazione predefinita, viene utilizzato il provider di servizi Adobe (http://sp.auth.adobe.com/). Questo array consente di specificare gli endpoint per i servizi di autenticazione e autorizzazione forniti da Adobe (a scopo di debug possono essere utilizzate istanze diverse). È possibile utilizzare questa opzione per specificare più istanze del provider di servizi di autenticazione di Adobe Pass. In tal caso, l'elenco MVPD è composto dagli endpoint di tutti i fornitori di servizi. Ogni MVPD è associato al provider di servizi più veloce, ovvero il provider che ha risposto per primo e che supporta tale MVPD.
Note: Se chiamata senza il parametro serviceProviders
, la libreria recupererà la configurazione dal provider di servizi predefinito, ovvero https://sp.auth.adobe.com
per il profilo di produzione o https://sp.auth-staging.adobe.com
per il profilo di gestione temporanea. Se viene fornito il parametro serviceProviders
, deve essere una matrice di URL. Le informazioni di configurazione vengono recuperate da tutti gli endpoint specificati e unite. Se esistono informazioni duplicate in risposte diverse del provider di servizi, il conflitto viene risolto a favore del server con la risposta più rapida (ovvero, il server con il tempo di risposta più breve ha la precedenza).
Callback attivati: setRequestorComplete:
setRequestor:setSignedRequestorId:secret:publicKey
, setRequestor:setSignedRequestorId:serviceProviders:secret:publicKey
- [OBSOLETO] setReq_tvos
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: stabilisce l'identità del programmatore. A ciascun programmatore viene assegnato un ID univoco al momento della registrazione all’Adobe per il sistema di autenticazione di Adobe Pass. Questa impostazione deve essere eseguita una sola volta durante il ciclo di vita dell'applicazione.
La risposta del server contiene un elenco di MVPD insieme ad alcune informazioni di configurazione collegate all'identità del programmatore. La risposta del server viene utilizzata internamente dal codice AccessEnabler. Solo lo stato dell'operazione (ovvero OPERAZIONE RIUSCITA/NON RIUSCITA) viene presentato all'applicazione tramite il callback setRequestorComplete:
.
Se il parametro urls
non viene utilizzato, la chiamata di rete risultante esegue il targeting dell'URL predefinito del provider di servizi: l'ambiente Adobe RELEASE/production.
Se viene fornito un valore per il parametro urls
, la chiamata di rete risultante eseguirà il targeting di tutti gli URL forniti nel parametro urls
. Tutte le richieste di configurazione vengono attivate contemporaneamente in thread separati. Il primo responder ha la precedenza quando si compila l’elenco degli MVPD. Per ogni MVPD nell'elenco, AccessEnabler ricorda l'URL del provider di servizi associato. Tutte le richieste di adesione successive vengono indirizzate all’URL associato al provider di servizi che è stato associato all’MVPD di destinazione durante la fase di configurazione.
code language-none |
---|
|
Disponibilità: v2.0+ Fino a: v3.0
code language-none |
---|
|
secret:(NSString *)secret
publicKey:(NSString *)publicKey;
Disponibilità: v2.0+ Fino a: v3.0
Parametri:
- requestorID: ID univoco associato al programmatore. La prima volta che trasmetti l'ID univoco assegnato dall'Adobe al tuo sito registrati con il servizio di autenticazione di Adobe Pass.
- signedRequestorID: Questo parametro esiste in iOS AccessEnabler versioni 1.2 e successive. Copia dell'ID richiedente con firma digitale della chiave privata. .
- url: parametro facoltativo; per impostazione predefinita, il provider di servizi Adobe (http://sp.auth.adobe.com/). Questo array consente di specificare gli endpoint per i servizi di autenticazione e autorizzazione forniti da Adobe (a scopo di debug possono essere utilizzate istanze diverse). È possibile utilizzare questa opzione per specificare più istanze del provider di servizi di autenticazione di Adobe Pass. In tal caso, l'elenco MVPD è composto dagli endpoint di tutti i fornitori di servizi. Ogni MVPD è associato al provider di servizi più veloce, ovvero il provider che ha risposto per primo e che supporta tale MVPD.
- secret and publicKey: il segreto e la chiave pubblica utilizzati per firmare le chiamate della seconda schermata. Per ulteriori informazioni, consulta la documentazione senza client.
Se chiamata senza il parametro serviceProviders
, la libreria recupererà la configurazione dal provider di servizi predefinito (ovvero https://sp.auth.adobe.com
per il profilo di produzione o https://sp.auth-staging.adobe.com per il profilo di staging). Se viene fornito il parametro serviceProviders
, deve essere una matrice di URL. Le informazioni di configurazione vengono recuperate da tutti gli endpoint specificati e unite. Se esistono informazioni duplicate in risposte diverse del provider di servizi, il conflitto viene risolto a favore del server con la risposta più rapida (ovvero, il server con il tempo di risposta più breve ha la precedenza).
Callback attivati: setRequestorComplete:
setRequestorComplete: setReqComplete
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato da AccessEnabler che informa l'applicazione del completamento della fase di configurazione. Questo è un segnale che l’app può iniziare a emettere richieste di adesione. L’applicazione non può inviare richieste di adesione fino al completamento della fase di configurazione.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
-
status: può assumere uno dei seguenti valori:
ACCESS_ENABLER_STATUS_SUCCESS
- fase di configurazione completataACCESS_ENABLER_STATUS_ERROR
- fase di configurazione non riuscita
Attivato da:
setRequestor:setSignedRequestorId:,
setRequestor:setSignedRequestorId:serviceProviders:
checkAuthentication checkAuthN
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: verifica lo stato di autenticazione dell'utente corrente.
A tale scopo, cerca un token di autenticazione valido nella directory locale
spazio di archiviazione dei token. Questo metodo non esegue chiamate di rete e si consiglia di chiamarlo sul thread principale.
Viene utilizzato dall’applicazione per eseguire una query sullo stato di autenticazione dell’utente e
aggiorna di conseguenza l’interfaccia utente (ad esempio, aggiorna l’interfaccia utente di accesso/disconnessione). Il
lo stato di autenticazione viene comunicato all’applicazione tramite
il callback setAuthenticationStatus:errorCode:
.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri: Nessuno
Callback attivati:setAuthenticationStatus:errorCode:
getAuthentication
, getAuthentication:withData:
getAuthN
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: avvia il flusso di lavoro di autenticazione completo. Viene avviato controllando lo stato di autenticazione. Se non è già autenticato, viene avviato il computer dello stato del flusso di autenticazione:
- se l'ultimo tentativo di autenticazione ha avuto esito positivo, MVPD la fase di selezione viene saltata e il callback
navigateToUrl:
è attivato. Il L'applicazione utilizza questo callback per creare un'istanza del controllo WebView che presenta all'utente la pagina di accesso di MVPD. [NOTA: a partire da Access Enabler 1.5, questa funzionalità non è disponibile a causa di una limitazione nell'SDK]. - se l'ultimo tentativo di autenticazione non è riuscito o se l'utente si è disconnesso in modo esplicito, il callback
displayProviderDialog:
è attivato. L'applicazione utilizza questo callback per visualizzare l'interfaccia utente di selezione MVPD. Anche l'app deve riprendere il flusso di autenticazione informando la libreria AccessEnabler della selezione MVPD dell'utente tramite il metodosetSelectedProvider:
.
Poiché le credenziali dell'utente vengono verificate nella pagina di accesso MVPD, l'applicazione deve monitorare le operazioni di reindirizzamento multiple che si verificano mentre l'utente si autentica nella pagina di accesso di MVPD. Quando vengono immesse le credenziali corrette, il controllo WebView viene reindirizzato a un URL personalizzato definito dalla costante ADOBEPASS_REDIRECT_URL
. Questo URL non deve essere caricato da WebView. L’applicazione deve intercettare questo URL e interpretare questo evento come un segnale del completamento della fase di accesso. Deve quindi passare il controllo ad AccessEnabler per completare il flusso di autenticazione chiamando il metodo handleExternalURL.
Infine, lo stato di autenticazione viene comunicato all'applicazione tramite il callback setAuthenticationStatus:errorCode:
.
code language-none |
---|
|
Disponibilità: v1.0+
code language-none |
---|
|
Disponibilità: v1.9+
Parametri:
- forceAuthn: flag che specifica se avviare il flusso di autenticazione, indipendentemente dal fatto che l'utente sia già autenticato o meno.
- dati: dizionario costituito da coppie chiave-valore da inviare al servizio di pass Pay-TV. Adobe può utilizzare questi dati per abilitare funzionalità future senza modificare l’SDK.
Callback attivati: setAuthenticationStatus:errorCode:
, displayProviderDialog:
, sendTrackingData:forEventType:
getAuthentication:filter
, getAuthentication:withData:andFilter
getAuthN_filter
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: avvia il flusso di lavoro di autenticazione completo. Viene avviato controllando lo stato di autenticazione. Se non è già autenticato, viene avviato il computer dello stato del flusso di autenticazione:
- presentTvProviderDialog() verrà chiamato se il richiedente corrente dispone di almeno un MVPD che supporta l'SSO. Se MVPD non supporta l'SSO, verrà avviato il flusso di autenticazione classico e il parametro di filtro verrà ignorato.
- Dopo il completamento del flusso SSO di Apple
dismissTvProviderDialog()
verrà attivato e il processo di autenticazione verrà completato.
Infine, lo stato di autenticazione viene comunicato all'applicazione tramite il callback setAuthenticationStatus:errorCode:
.
Disponibilità: v2.4+
code language-none |
---|
|
code language-none |
---|
|
Parametri:
-
forceAuthn: flag che specifica se avviare il flusso di autenticazione, indipendentemente dal fatto che l'utente sia già autenticato o meno.
-
dati: dizionario costituito da coppie chiave-valore da inviare al servizio di pass Pay-TV. Adobe può utilizzare questi dati per abilitare funzionalità future senza modificare l’SDK.
-
filter (filtro): dizionario con due elenchi di ID MVPD che devono essere visualizzati nella finestra di dialogo SSO di Apple. Qualsiasi MVPD che non supporta SSO verrà ignorato, ma l'ordine verrà rispettato. Il dizionario deve avere due chiavi:
- TV_PROVIDERS: elenco con tutti i MVPD da visualizzare nel selettore
- IN PRIMO PIANO_TV_PROVIDERS: Un elenco con tutti gli MVPD che devono essere contrassegnati come presenti nel selettore. Gli MVPD in questo elenco devono essere specificati anche nell'elenco TV_PROVIDERS.
Disponibilità: v2.0 - v2.3.1
code language-none |
---|
|
code language-none |
---|
|
Parametri:
- forceAuthn: flag che specifica se avviare il flusso di autenticazione, indipendentemente dal fatto che l'utente sia già autenticato o meno.
- dati: dizionario costituito da coppie chiave-valore da inviare al servizio di pass Pay-TV. Adobe può utilizzare questi dati per abilitare funzionalità future senza modificare l’SDK.
- filter (Filtro): elenco di ID MVPD da visualizzare nella finestra di dialogo SSO di Apple. Qualsiasi MVPD che non supporta SSO verrà ignorato, ma l'ordine verrà rispettato.
Callback attivati: setAuthenticationStatus:errorCode:, presentTvProviderDialog, dismissTvProviderDialog
displayProviderDialog: dispProvDialog
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione Il callback è stato attivato da AccessEnabler per informare l'applicazione che è necessario creare un'istanza degli elementi dell'interfaccia utente appropriati per consentire all'utente di selezionare il MVPD desiderato. Il callback fornisce un elenco di oggetti MVPD con informazioni aggiuntive che possono aiutare a creare correttamente il pannello dell'interfaccia utente di selezione (come l'URL che punta al logo MVPD, il nome visualizzato intuitivo, ecc.)
Dopo che l'utente ha selezionato l'MVPD desiderato, l'applicazione di livello superiore deve riprendere il flusso di autenticazione chiamando setSelectedProvider:
e trasmettendogli l'ID dell'MVPD corrispondente alla selezione dell'utente.
Interruzione del flusso di autenticazione - Questo è un punto in cui l'utente può premere il pulsante "Indietro", che equivale all'interruzione del flusso di autenticazione. In questo scenario, è necessario che l'applicazione chiami il metodo setSelectedProvider:, passando null come parametro, per consentire ad AccessEnabler di reimpostare il computer dello stato di autenticazione.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
- mvpds: elenco di oggetti MVPD contenenti informazioni relative a MVPD che l'applicazione può utilizzare per creare gli elementi dell'interfaccia utente di selezione MVPD.
Attivato da: getAuthentication
, getAuthentication:withData:
,getAuthorization:
, getAuthorization:withData:
setSelectedProvider: setSelProv
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: questo metodo viene chiamato dall'applicazione per informare Access Enabler della selezione MVPD dell'utente. È possibile utilizzare questo metodo per selezionare o modificare il provider di servizi utilizzato per l'autenticazione.
Se l’MVPD selezionato è un MVPD TempPass, si autenticherà automaticamente con tale MVPD senza dover chiamare in seguito getAuthentication().
Tieni presente che questo non è possibile per il Passaggio temporaneo promozionale in cui vengono forniti parametri aggiuntivi sul metodo getAuthentication().
Quando si passa null come parametro, Access Enabler presume che l'utente abbia annullato il flusso di autenticazione (ovvero ha premuto il pulsante "Indietro") e risponde reimpostando lo stato-computer di autenticazione e richiamando il callback setAuthenticationStatus:errorCode:
con il codice di errore AccessEnabler.PROVIDER_NOT_SELECTED_ERROR
.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri: Nessuno
Callback attivati: setAuthenticationStatus:errorCode:
,sendTrackingData:forEventType:
, navigateToUrl:
navigateToUrl: nav2url
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione: callback attivato da AccessEnabler per richiedere all'applicazione di creare un'istanza di un controller UIWebView/WKWebView e di caricare l'URL fornito nel parametro url
del callback. Il callback passa il parametro url
che rappresenta l'URL dell'endpoint di autenticazione o l'URL dell'endpoint di disconnessione.
Poiché il controller UIWebView/WKWebView
viene sottoposto a diversi reindirizzamenti, l'applicazione deve monitorare l'attività del controller e rilevare il momento in cui carica un URL personalizzato specifico definito dalla costante ADOBEPASS_REDIRECT_URL
(ovvero adobepass://ios.app
). Questo URL personalizzato specifico non è valido e non è destinato al controller per caricarlo effettivamente. Deve essere interpretato solo dall'applicazione come un segnale che il flusso di autenticazione o disconnessione è stato completato e che è sicuro chiudere il controller. Quando il controller carica questo URL personalizzato specifico, l'applicazione deve chiudere UIWebView/WKWebView e chiamare il metodo API handleExternalURL:url
di AccessEnabler.
Nota: Tieni presente che nel caso del flusso di autenticazione si tratta di un punto in cui l'utente può premere il pulsante "Indietro", che equivale all'interruzione del flusso di autenticazione. In questo caso, è necessario che l'applicazione chiami il metodo setSelectedProvider: passando nil
come parametro e dando la possibilità ad AccessEnabler di reimpostare il computer dello stato di autenticazione.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
- url: URL che punta alla pagina di accesso di MVPD
Attivato da: setSelectedProvider:
navigateToUrl:useSVC:
nav2urlSVC
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione: callback attivato da AccessEnabler anziché dal callback navigateToUrl:
nel caso in cui l'applicazione abbia precedentemente abilitato la gestione manuale di Safari View Controller (SVC) tramite la chiamata setOptions(["handleSVC":true"]) e solo nel caso di MVPD che richiedono Safari View Controller (SVC). Per tutti gli altri MVPD verrà chiamato il callback navigateToUrl:
. Per informazioni dettagliate sulla gestione di Safari View Controller (SVC), vedere il supporto di SFSafariViewController nell'SDK iOS 3.2+.
Simile al callback navigateToUrl:
, il navigateToUrl:useSVC:
viene attivato da AccessEnabler per richiedere all'applicazione di creare un'istanza di un controller SFSafariViewController
e caricare l'URL fornito nel parametro url
del callback. Il callback passa il parametro url
che rappresenta l'URL dell'endpoint di autenticazione o l'URL dell'endpoint di disconnessione e il parametro useSVC
che specifica che l'applicazione deve utilizzare un SFSafariViewController
.
Poiché il controller SFSafariViewController
viene sottoposto a diversi reindirizzamenti, l'applicazione deve monitorare l'attività del controller e rilevare il momento in cui carica un URL personalizzato specifico definito dal application's custom scheme
(ad esempio ** **adbe.u-XFXJeTSDuJiIQs0HVRAg://adobe.com
). Questo URL personalizzato specifico non è valido e non è destinato al controller per caricarlo effettivamente. Deve essere interpretato solo dall'applicazione come un segnale che il flusso di autenticazione o disconnessione è stato completato e che è sicuro chiudere il controller. Quando il controller carica questo URL personalizzato specifico, l'applicazione deve chiudere SFSafariViewController
e chiamare il metodo API handleExternalURL:url
di AccessEnabler.
Nota: Tieni presente che nel caso del flusso di autenticazione si tratta di un punto in cui l'utente può premere il pulsante "Indietro", che equivale all'interruzione del flusso di autenticazione. In questo caso, è necessario che l'applicazione chiami il metodo setSelectedProvider: passando nil
come parametro e dando la possibilità ad AccessEnabler di reimpostare il computer dello stato di autenticazione.
code language-none |
---|
|
Disponibilità: v 3.2+
Parametri:
- url: URL che punta alla pagina di accesso di MVPD
- useSVC: se l'URL deve essere caricato in SFSafariViewController.
Attivato da: setOptions: prima di setSelectedProvider:
handleExternalURL:url handleExternalURL
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Questo metodo viene chiamato dall'applicazione per completare il flusso di autenticazione o disconnessione. Questo metodo deve essere chiamato subito dopo che l'applicazione rileva il momento in cui il controller UIWebView/WKWebView or SFSafariViewController
viene reindirizzato a un URL personalizzato specifico. Nel caso in cui l'applicazione debba utilizzare un controller SFSafariViewController
, l'URL personalizzato specifico è definito da application's custom scheme
(ad esempio adbe.u-XFXJeTSDuJiIQs0HVRAg://adobe.com
), altrimenti questo URL personalizzato specifico è definito dalla costante ADOBEPASS_REDIRECT_URL
(ad esempio adobepass://ios.app
).
Nel caso del flusso di autenticazione, AccessEnabler completa il flusso recuperando il token di autenticazione dal server back-end e archiviandolo localmente nell'archivio dei token. AccessEnabler informerà l'applicazione che il flusso di autenticazione è stato completato chiamando il callback setAuthenticationStatus()
con il codice di stato 1, che indica l'esito positivo. Se si verifica un errore durante l'esecuzione di questi passaggi, il callback setAuthenticationStatus()
viene attivato con il codice di stato 0, che indica un errore di autenticazione, nonché un codice di errore corrispondente.
code language-none |
---|
|
Disponibilità: v3.0+
Parametri:
- url: l'URL intercettato dal controllo
UIWebView/WKWebView or SFSafariViewController
come stringa.
Callback attivati: setAuthenticationStatus:errorCode, sendTrackingData:forEventType:
getAuthenticationToken - [OBSOLETO] getAuthNToken
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: completa il flusso di autenticazione richiedendo il token di autenticazione al server back-end. Questo metodo deve essere chiamato dall'applicazione solo in risposta all'evento in cui il controllo WebView che ospita la pagina di accesso MVPD viene reindirizzato all'URL personalizzato definito dalla costante ADOBEPASS_REDIRECT_URL
.
code language-none |
---|
|
Disponibilità: v1.0+ Fino a: v3.0
Parametri: Nessuno
Callback attivati: setAuthenticationStatus:errorCode,sendTrackingData:forEventType:
</br
setAuthenticationStatus:errorCode:
setAuthNStatus
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato da AccessEnabler che informa l'applicazione dello stato del flusso di autenticazione. In molti casi questo flusso può non riuscire, a causa dell’interazione dell’utente o di altri scenari imprevisti (ad esempio, problemi di connettività di rete, ecc.). Questo callback informa l’applicazione dello stato di esito positivo/negativo del flusso di autenticazione, fornendo al contempo informazioni aggiuntive sul motivo dell’errore, quando necessario.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
-
status: può assumere uno dei seguenti valori:
ACCESS_ENABLER_STATUS_SUCCESS
- flusso di autenticazione completatoACCESS_ENABLER_STATUS_ERROR
- flusso di autenticazione non riuscito
-
codice: motivo errore. Se status è
ACCESS_ENABLER_STATUS_SUCCESS
, code è una stringa vuota, ovvero definita dalla costanteUSER_AUTHENTICATED
. In caso di errore, questo parametro può assumere uno dei seguenti valori:USER_NOT_AUTHENTICATED_ERROR
- Utente non autenticato. In risposta alla chiamata al metodo checkAuthentication: quando non è presente alcun token di autenticazione valido nella cache dei token locale.PROVIDER_NOT_SELECTED_ERROR
- AccessEnabler ha reimpostato macchina dello stato di autenticazione dopo l'applicazione di livello superiore ha passato null asetSelectedProvider:
per interrompere il flusso di autenticazione. Presumibilmente l’utente ha annullato il flusso di autenticazione (ovvero ha premuto il pulsante "Indietro").GENERIC_AUTHENTICATION_ERROR
- Flusso di autenticazione non riuscito per motivi quali la non disponibilità della rete o l'annullamento esplicito del flusso di autenticazione da parte dell'utente.
Attivato da: checkAuthentication
, getAuthentication
, getAuthentication:withData:
, checkAuthorization:
, checkAuthorization:withData:
checkPreauthorizedResources: checkPreauth
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Questo metodo viene utilizzato dall'applicazione per determinare se l'utente è già autorizzato a visualizzare risorse protette specifiche. Lo scopo principale di questo metodo consiste nel recuperare informazioni da utilizzare per decorare l'interfaccia utente (ad esempio, per indicare lo stato di accesso con le icone di blocco e sblocco).
code language-none |
---|
|
Disponibilità: v1.3+
Parametri:
- risorse: array di risorse per cui controllare l'autorizzazione. Ogni elemento dell’elenco deve essere una stringa che rappresenta l’ID della risorsa. Il l’ID della risorsa è soggetto alle stesse limitazioni dell’ID della risorsa nella chiamata, ovvero deve essere un valore concordato tra il Programmatore e l’MVPD o un frammento RSS del contenuto multimediale.
Callback attivato: preauthorizedResources:
checkPreauthorizedResources:cache:
checkPreauthCache
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Questo metodo viene utilizzato dall'applicazione per determinare se l'utente è già autorizzato a visualizzare risorse protette specifiche. Lo scopo principale di questo metodo è quello di recuperare informazioni da utilizzare per decorare l’interfaccia utente (ad esempio, per indicare lo stato di accesso con le icone di blocco e sblocco). Il parametro cache controlla se la cache interna viene utilizzata per la risoluzione delle risorse.
code language-none |
---|
|
Disponibilità: v3.1+
Parametri:
- risorse: array di risorse per cui controllare l'autorizzazione. Ogni elemento dell’elenco deve essere una stringa che rappresenta l’ID della risorsa. L'ID risorsa è soggetto alle stesse limitazioni dell'ID risorsa nella chiamata
getAuthorization:
, ovvero deve essere un valore concordato tra il Programmatore e l'MVPD o un frammento RSS del supporto. - cache: Valore booleano che specifica se utilizzare la cache interna per la risoluzione delle risorse. Se false, la cache verrà bypassata, dando luogo a chiamate al server ogni volta che questa API viene chiamata.
Callback attivato: preauthorizedResources:
risorse preautorizzate: preauthResources
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione: richiamata attivata da checkPreauthorizedResources:
. Fornisce un elenco delle risorse che l’utente è già autorizzato a visualizzare.
code language-none |
---|
|
Disponibilità: v1.3+
Parametri:
resources
: array di risorse per le quali l'utente è già autorizzato a visualizzare.
Attivato da: checkPreauthorizedResources:
checkAuthorization:
, checkAuthorization:withData:
checkAuthZ
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Questo metodo viene utilizzato dall'applicazione per verificare lo stato dell'autorizzazione. Viene innanzitutto verificato lo stato di autenticazione. Se non è autenticato, il callback tokenRequestFailed:errorCode:errorDescription:
viene attivato e il metodo viene chiuso. Se l’utente è autenticato, attiva anche il flusso di autorizzazione. Visualizzare i dettagli sul metodo getAuthorization:
.
code language-none |
---|
|
Disponibilità: v1.0+
code language-none |
---|
|
Disponibilità: v1.9+
Parametri:
- resource: l'ID della risorsa per cui l'utente richiede l'autorizzazione.
- dati: dizionario costituito da coppie chiave-valore da inviare al servizio di pass Pay-TV. Adobe può utilizzare questi dati per abilitare funzionalità future senza modificare l’SDK.
Callback attivati:
tokenRequestFailed:errorCode:errorDescription:
,setToken:forResource:
, sendTrackingData:forEventType:
, setAuthenticationStatus:errorCode:
getAuthorization:
, getAuthorization:withData:
getAuthZ
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Questo metodo viene utilizzato dall'applicazione per avviare il flusso di autorizzazione. Se l’utente non è già autenticato, avvia anche il flusso di autenticazione. Se l'utente viene autenticato, AccessEnabler procede con il rilascio di richieste per il token di autorizzazione (se non è presente alcun token di autorizzazione valido nella cache dei token locale) e per il token multimediale di breve durata. Una volta ottenuto il token multimediale breve, il flusso di autorizzazione viene considerato completo. Il callback setToken:forResource:
viene attivato e il token multimediale breve viene distribuito come parametro all'applicazione. Se per qualsiasi motivo l'autorizzazione non riesce, viene attivato il callback tokenRequestFailed:forEventType:
e vengono forniti il codice di errore o i dettagli.
code language-none |
---|
|
Disponibilità: v1.0+
code language-none |
---|
|
Disponibilità: v1.9+
Parametri:
- resource: l'ID della risorsa per cui l'utente richiede l'autorizzazione.
- dati: dizionario costituito da coppie chiave-valore da inviare al servizio di pass Pay-TV. Adobe può utilizzare questi dati per abilitare funzionalità future senza modificare l’SDK.
Callback attivati: tokenRequestFailed:errorCode:errorDescription:, setToken:forResource:,sendTrackingData:forEventType:
Callback aggiuntivi attivati:
Questo metodo può anche attivare i seguenti callback (se viene avviato anche il flusso di autenticazione): setAuthenticationStatus:errorCode:
, displayProviderDialog:
checkAuthorization:
/ checkAuthorization:withData:
invece di getAuthorization:
/ getAuthorization:withData:
. Il metodo getAuthorization:
/ getAuthorization:withData:
avvierà un flusso di autenticazione completo (se l'utente non è autenticato) e ciò potrebbe comportare una complicata implementazione da parte del programmatore.setToken:forResource:
setToken
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato da AccessEnabler che informa l'applicazione che il flusso di autorizzazione è stato completato correttamente. Anche il token multimediale di breve durata viene distribuito come parametro.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
- token: token multimediale di breve durata
- resource: la risorsa per la quale è stata ottenuta l'autorizzazione
Attivato da: checkAuthorization:
, checkAuthorization:withData:
, getAuthorization:
, getAuthorization:withData:
tokenRequestFailed:errorCode:errorDescription:
tokenReqFailed
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione Callback attivato da AccessEnabler che informa l'applicazione di livello superiore che il flusso di autorizzazione non è riuscito.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
- resource: la risorsa per la quale è stata ottenuta l'autorizzazione.
- code: codice di errore associato allo scenario di errore. Valori possibili:
USER_NOT_AUTHORIZED_ERROR
- l'utente non è riuscito ad autorizzare
per la risorsa specificata
- descrizione: ulteriori dettagli sullo scenario di errore. Se questa stringa descrittiva non è disponibile per alcun motivo, Adobe Pass Authentication invia una stringa vuota (").
Questa stringa può essere utilizzata da un MVPD per trasmettere messaggi di errore personalizzati o messaggi relativi alle vendite. Ad esempio, se a un abbonato viene negata l’autorizzazione per una risorsa, l’MVPD potrebbe inviare un messaggio del tipo: "Attualmente non hai accesso a questo canale nel pacchetto. Se desideri aggiornare il pacchetto, fai clic qui." Il messaggio viene passato dall’autenticazione di Adobe Pass tramite questo callback al programmatore, che ha la possibilità di visualizzarlo o ignorarlo. L’autenticazione di Adobe Pass può inoltre utilizzare questo parametro per fornire una notifica della condizione che potrebbe aver causato un errore. Ad esempio, "Si è verificato un errore di rete durante la comunicazione con il servizio di autorizzazione del provider".
Attivato da: checkAuthorization:
, checkAuthorization:withData:
, getAuthorization:
, getAuthorization:withData:
logout logout
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Questo metodo viene chiamato dall'applicazione per avviare il flusso di disconnessione. La disconnessione è il risultato di una serie di operazioni di reindirizzamento HTTP dovute al fatto che l’utente deve essere disconnesso sia dai server di autenticazione di Adobe Pass che dai server MVPD. Poiché non è possibile completare il flusso con una semplice richiesta HTTP emessa dalla libreria AccessEnabler, è necessario creare un'istanza di un controller UIWebView/WKWebView or SFSafariViewController
per poter seguire le operazioni di reindirizzamento HTTP.
Il flusso di disconnessione è diverso dal flusso di autenticazione in quanto l'utente non è tenuto a interagire in alcun modo con il controller UIWebView/WKWebView or SFSafariViewController
. Pertanto, Adobe consiglia di rendere il controllo invisibile (ovvero nascosto) durante la procedura di disconnessione.
Viene utilizzato un modello simile al flusso di autenticazione. IOS AccessEnabler attiva il callback navigateToUrl:
o navigateToUrl:useSVC:
per creare un controller UIWebView/WKWebView or SFSafariViewController
e caricare l'URL fornito nel parametro url
del callback. Questo è l'URL dell'endpoint di disconnessione sul server back-end. Per tvOS AccessEnabler non viene chiamato né il callback navigateToUrl:
né quello navigateToUrl:useSVC:
.
Durante l'esecuzione di diversi reindirizzamenti, l'applicazione deve monitorare l'attività del controller UIWebView/WKWebView or SFSafariViewController
e rilevare il momento in cui carica un URL personalizzato specifico. Questo URL personalizzato specifico non è valido e non è destinato al controller per caricarlo effettivamente. Deve essere interpretato solo dall'applicazione come un segnale che il flusso di logout è stato completato e che è sicuro chiudere il controller. Quando il controller carica questo URL personalizzato specifico, l'applicazione deve chiudere il controller e chiamare il metodo API handleExternalURL:url
di AccessEnabler. Nel caso in cui l'applicazione debba utilizzare un controller SFSafariViewController
, l'URL personalizzato specifico è definito da application's custom scheme
(ad esempio adbe.u-XFXJeTSDuJiIQs0HVRAg://adobe.com
), altrimenti questo URL personalizzato specifico è definito dalla costante ADOBEPASS_REDIRECT_URL
(ad esempio adobepass://ios.app
).
Alla fine AccessEnabler chiamerà il callback setAuthenticationStatus()
con il codice di stato 0, che indica il completamento del flusso di logout.
Nota: se l'utente ha eseguito l'accesso con Apple SSO, verrà attivato lo stato di VSA203. In questo caso, l'utente deve essere informato di disconnettersi anche dalle impostazioni di sistema. In caso contrario, verrà eseguita una nuova autenticazione al riavvio dell'applicazione.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri: Nessuno
Callback attivati: navigateToUrl:
, setAuthenticationStatus:errorCode:
getSelectedProvider getSelProv
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Utilizzare questo metodo per determinare il provider attualmente selezionato.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri: Nessuno
Callback attivati: selectedProvider:
selectedProvider selProv
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato dall'AccessEnabler che consegna all'applicazione le informazioni sull'MVPD attualmente selezionato.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
- mvpd: oggetto contenente informazioni sull'MVPD attualmente selezionato
Attivato da: getSelectedProvider
getMetadata: getMeta
File: AccessEnabler/headers/AccessEnabler.h
Descrizione: Utilizzare questo metodo per recuperare informazioni esposte come metadati dalla libreria AccessEnabler. L'applicazione può accedere a questi dati fornendo un parametro di input key basato su dizionario.
Esistono due tipi di metadati disponibili per i programmatori:
- Metadati statici (TTL del token di autenticazione, TTL del token di autorizzazione e ID dispositivo)
- Metadati utente (informazioni specifiche dell’utente, come ID utente e codice postale; possono essere trasmesse da un MVPD al dispositivo di un utente durante i flussi di autenticazione e autorizzazione)
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
-
keyDictionary: una struttura dati del dizionario con le seguenti caratteristiche
formato:-
Se la chiave è
METADATA_OPCODE_KEY
e il valore èMETADATA_AUTHENTICATION
, viene eseguita la query per ottenere la data di scadenza del token di autenticazione. -
Se la chiave è
METADATA_OPCODE_KEY
e il valore èMETADATA_AUTHORIZATION
e
la chiave èMETADATA_RESOURCE_ID_KEY
e il valore è un ID risorsa particolare, quindi viene eseguita la query per ottenere la scadenza del token di autorizzazione associato alla risorsa specificata. -
Se la chiave è
METADATA_OPCODE_KEY
e il valore èMETADATA_DEVICE_ID
, viene eseguita la query per ottenere l'ID dispositivo corrente. Tieni presente che questa funzione è disabilitata per impostazione predefinita e i programmatori devono contattare l’Adobe per informazioni sull’abilitazione e sulle tariffe. -
Se la chiave è
METADATA_OPCODE_KEY
e il valore èMETADATA_USER_META
e la chiave èMETADATA_USER_META_KEY
e il valore è il nome dei metadati, la query viene eseguita per i metadati utente. Elenco dei tipi di metadati utente disponibili:zip
- Elenco codici postalihouseholdID
- Identificatore famiglia. Nel caso in cui un MVPD non supporti account secondari, questo sarà identico auserID
.maxRating
- Una raccolta di valutazioni parentali massime per l'utenteuserID
- Identificatore utente. Se un MVPD supporta gli account secondari e l'utente non è l'account principale,userID
sarà diverso dahouseholdID.
channelID
- Elenco di canali che un utente può visualizzare.
note note NOTE I metadati utente effettivi disponibili per un programmatore dipendono da ciò che viene reso disponibile da un MVPD. L’elenco verrà espanso man mano che nuovi metadati saranno disponibili e aggiunti al sistema di autenticazione di Adobe Pass. -
Callback attivati: setMetadataStatus:encrypted:forKey:andArguments:
Ulteriori informazioni: Metadati utente
presentTVProviderDialog presentTvDialog
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione Callback attivato da AccessEnabler dopo la chiamatagetAuthentication() se il richiedente corrente supporta almeno un MVPD con supporto SSO.
code language-none |
---|
|
Disponibilità: v2.0+
Parametri:
- viewController: rappresenta la finestra di dialogo SSO di Apple. Questo viewController deve essere visualizzato sullo schermo.
Attivato da: getAuthentication
Ulteriori informazioni: Single Sign-On iOS/tvOS
dismissTVProviderDialog dismissTvDialog
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato da AccessEnabler dopo la chiusura della finestra di dialogo SSO di Apple.
code language-none |
---|
|
Disponibilità: v2.0+
Parametri:
- viewController: rappresenta la finestra di dialogo SSO di Apple. Questo viewController deve essere rimosso dallo schermo.
Attivazione da parte di: azione utente
Ulteriori informazioni: Single Sign-On iOS/tvOS
setMetadataStatus:encrypted:forKey:andArguments:
setMetaStatus
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato da AccessEnabler che distribuisce i metadati richiesti tramite una chiamata getMetadata:
.
code language-none |
---|
|
Disponibilità: v1.0+
Parametri:
- metadati: i metadati richiesti. Questo valore è
NSString
nel caso di metadati statici (TTL autenticazione, TTL autorizzazione, ID dispositivo). Si tratta di un oggetto complesso quando si richiedono metadati specifici dell’utente. Questo oggetto complesso è in genere la rappresentazione Objective-C di un payload JSON (ad esempio, "{"street": "Main Avenue", "building": ["150", "320"]}" è tradotto in Objective-C come NSDictionary("street" -> "Main Avenue", "building" -> NSArray("150", "320")). Oggetto JSON metadati di esempio:
{
updated: 1334243471,
encrypted: ["encryptedProp"],
data: {
zip: ["12345", "34567"],
maxRating: {
"MPAA": "PG-13",
"VCHIP": "TV-Y",
"URL": "http://exam.pl/e/manage/ratings"
},
householdID: "3456",
userID: "BgSdasfsdk23/dsaf3+saASesadgfsShggssd=",
channelID: ["channel-1", "channel-2"]
}
-
crittografato: valore booleano che specifica se i metadati recuperati sono crittografati o meno. Questo parametro è significativo solo per le richieste di metadati utente, non ha significato per i metadati statici (ad esempio, TTL di autenticazione) che vengono sempre ricevuti non crittografati. Se questo parametro è impostato su true, spetta al programmatore ottenere il valore dei metadati utente non crittografati eseguendo una decrittografia RSA utilizzando la chiave privata della whitelist (la stessa chiave privata utilizzata per la firma dell'ID richiedente nelle chiamate
setRequestor:setSignedRequestorId:
esetRequestor:setSignedRequestorId:serviceProviders:
). -
chiave: chiave utilizzata per formulare la richiesta di recupero dei metadati.
-
argomenti: lo stesso dizionario passato alla chiamata
getMetadata:
. Fornito per consentire all’applicazione di far corrispondere le richieste con le risposte.
Attivato da: getMetadata:
Ulteriori informazioni: Metadati utente
MVPD mvpd
File: AccessEnabler/headers/model/MVPD.h
Descrizione Descrive l'oggetto MVPD. Può essere utilizzato per ottenere informazioni sulle proprietà dell'MVPD.
Disponibilità: v1.0+ [la proprietà boardingStatus è disponibile dalla v2.2]
Proprietà:
-
(NSString) ID: l'ID MVPD.
-
(NSString) displayName: il nome MVPD. [Da utilizzare per la visualizzazione nel selettore]
-
(NSString) logoURL: l’indirizzo del logo MVPD.
-
(BOOL) enablePlatformServices - Se true, MVPD supporta i servizi SSO come Apple SSO.
-
(NSString) boardingStatus - Può avere 3 valori:
- nil: MVPD non supporta Apple SSO.
- SELETTORE: il MVPD può essere visualizzato nel selettore di Apple, ma il flusso di autenticazione viene eseguito per Adobe.
- SUPPORTATO: MVPD è completamente supportato da Apple e utilizzerà il token SSO di Apple.
Tracciamento degli eventi tracking
AccessEnabler attiva un callback aggiuntivo non necessariamente correlato ai flussi di adesione. L'implementazione della funzione di callback sendTrackingData()
è facoltativa, ma consente all'applicazione di tenere traccia di eventi specifici e di compilare statistiche quali il numero di tentativi di autenticazione/autorizzazione riusciti/non riusciti.
sendTrackingData sendTracking
File: AccessEnabler/headers/EntitlementDelegate.h
Descrizione callback attivato da AccessEnabler che segnala all'applicazione l'occorrenza di vari eventi, ad esempio il completamento/errore dei flussi di autenticazione/autorizzazione. Con Adobe Pass Authentication 1.6, il tipo di dispositivo, il tipo di client AccessEnabler e il sistema operativo sono segnalati da sendTrackingData()
. Il callback sendTrackingData()
rimane compatibile con le versioni precedenti.
Callback: eventi di tracciamento
(void) sendTrackingData:(NSArray *)data
forEventType:(int)event;
Disponibilità: v1.0+
Nota: il tipo di dispositivo e il sistema operativo sono derivati dall'utilizzo di una libreria Java pubblica (http://java.net/projects/user-agent-utils) e della stringa dell'agente utente. Tieni presente che queste informazioni vengono fornite solo come metodo grezzo per suddividere le metriche operative in categorie di dispositivi, ma che l’Adobe non può assumersi alcuna responsabilità per risultati errati. Utilizza la nuova funzionalità di conseguenza.
-
Valori possibili per il tipo di dispositivo:
computer
tablet
mobile
gameconsole
unknown
-
Valori possibili per il tipo di client AccessEnabler:
flash
html5
ios
android
Parametri:
-
event: codice dell'evento di cui viene eseguito il rilevamento. Esistono tre possibili tipi di eventi di tracciamento:
- authorizationDetection: ogni volta che viene restituita una richiesta del token di autorizzazione (evento:
TRACKING_AUTHORIZATION
) - authenticationDetection: ogni volta che si verifica un controllo di autenticazione (evento:
TRACKING_AUTHENTICATION
) - mvpdSelection: quando l'utente seleziona un MVPD nel modulo di selezione MVPD (evento:
TRACKING_GET_SELECTED_PROVIDER
)
- authorizationDetection: ogni volta che viene restituita una richiesta del token di autorizzazione (evento:
-
dati: dati aggiuntivi associati all'evento segnalato. Questi dati vengono presentati sotto forma di elenco di valori.
Attivato da: checkAuthentication
, getAuthentication
, getAuthentication:withData:
, checkAuthorization:
, checkAuthorization:withData:
, getAuthorization:
, getAuthorization:withData:
, setSelectedProvider:
Istruzioni per l'interpretazione dei valori nell'array data:
-
Per trackingEventType
TRACKING_AUTHENTICATION:
- 0 - Se la richiesta del token è stata completata correttamente (true/false) e in caso di esito positivo:
- 1 - Stringa ID MVPD
- 2 - GUID (hash md5)
- 3 - Token già nella cache (true/false)
- 4 - Tipo di dispositivo
- 5 - Tipo client AccessEnabler
- 6 - Tipo di sistema operativo
-
Per trackingEventType
TRACKING_AUTHORIZATION:
- 0 - Se la richiesta del token è stata completata correttamente (true/false) e in caso di esito positivo:
- 1 - ID MVPD
- 2 - GUID (hash md5)
- 3 - Token già nella cache (true/false)
- 4 - Errore
- 5 - Dettagli
- 6 - Tipo di dispositivo
- 7 - Tipo client AccessEnabler
- 8 - Tipo di sistema operativo
-
Per trackingEventType
TRACKING_GET_SELECTED_PROVIDER:
- 0 - ID del MVPD attualmente selezionato
- 1 - Tipo di dispositivo
- 2 - Tipo client AccessEnabler
- 3 - Tipo di sistema operativo