Objective
How to handle the authentication flow when a non-Apple SSO supported Pay-TV provider (MVPD) is selected from the MVPD Picker?
Environment
iOS/ tvOS
Steps
After the user selects an unsupported TV Provider, programmer’s app receives the following callbacks:
dismissTvProviderDialog - At this point, programmer should hide Apple’s viewController (it contains the picker).
sendTrackingData - This is just an MVPD selection event.
status - This contains a dictionary that looks like:
2018-02-23 13:29:14.228410+0200 APIExplorer-tvos252:11681 { errorId = REGCODE; expires = 1519387154016; level = success; message = 6ANC6PH; //SAMPLE_7_DIGIT_CODE} |
---|
At this point, programmer should present the user with the message contained in this dictionary. In this case, it can be similar to: Please go to network-site/activate and enter the following code: 6ANC6PH.
During this time, the SDK polls Adobe servers for the status of the above mentioned registration code. Once the user uses that registration code to authenticate, the SDK gets a 200 status code from Adobe servers and the next callback is fired.
setAuthenticationStatus - If the status is 1, the authentication was successful.
sendTrackingData - This is just an authentication detection event.
Additional information
More on: http://tve.helpdocsonline.com/ios-integration-cookbook-v2
The tvOS app crashes if the setRequestor is not handled correctly, as for tvOS programmer also provides the public key and the secret. See Clientless documentation for details.