ABCDEFGHIJKLMNOPQRSTUVWXYZAAABAC
1
ScreenScenario and/or server responseResultKey mappingOmnitureReasonVB test statusVB comment12/18/2015
2
1HomeWrong section for deeplinkingShow dialog.
Message: This section is not available.
Buttons: OK
Message: DEEPLINKING_SECTION_UNAVAILABLE
Buttons: BUTTON_OK
action = general.error
general.errortype = Deeplinking
page.category1 = Home
+different titles3passedpassed
3
2HomeWrong country for deeplinkingShow dialog.
Message: This item is not available in your country.
Buttons: OK
Message: DEEPLINKING_INCORRECT_COUNTRY
Buttons: BUTTON_OK
action = general.error
general.errortype = Deeplinking
page.category1 = Home
+different titles3passedpassed
4
3Title CardDeeplinkingShow dialog.
Message: This trailer is (no longer) available.
Buttons: OK
Message: TRAILER_IS_NOT_AVAILABLE
Buttons: BUTTON_OK
No omniture tracking
5
4not defined403 error on GET session response [{
"system": "OESP",
"reason": "Invalid: token is not valid"
}]

400 error on POST session response
[{
"type":"state",
"code":"invalidCredentials",
"reason":"invalid"
}]

[{
"type":"requestBody",
"code":"username",
"reason":"invalid"
}]
Show dialog.
Title: Sign in failed
Message: Please check your username and password and try again.
Buttons:
1. Try again.
Title: SIGN_IN_CHECK_CREDENTIALS_HEADER
Message: SIGN_IN_CHECK_CREDENTIALS_BODY
Buttons:
1. SIGN_IN_BUTTON_TRY_AGAIN.
not defined+different buttons1passed-'No service' error type is reported if users logs in with wrong credential (NL, iPad)
Fixed (10134)
passed
6
5AnyNo connection during session validation or perform any request.Show dialog.
Title: No connection
Message: We are unable to connect to the UPC server. Please check your internet connection settings.
Buttons:
1. Close;
2. Try again.
Title: GENERAL_NO_INTERNET_HEADER
Message: GENERAL_NO_INTERNET_ERROR
Buttons:
1. BUTTON_CLOSE;
2. SIGN_IN_BUTTON_TRY_AGAIN.
action = general.error
general.errortype = No internet
page.category1 = Depends on section
+!!!2not testednot testedVB Comment
7
6AnyService not available during session validation.Show dialog.
Title: Service not available
Message: The service is temporarily not available. Please try again later.
Buttons:
1. Try again.
Title: GENERAL_NO_SERVICE_HEADER
Message: GENERAL_NO_SERVICE_ERROR
Buttons:
1. SIGN_IN_BUTTON_TRY_AGAIN
action = general.error
general.errortype = No service
page.category1 = Depends on section
http.host = [requested host]
http.path = [requested path]
http.status = [response code]
http.response = [response]
+different buttons???passedpassed
8
7not definedLGISessionError.

LGISessionServiceErrorAccountLocked
[{
"type":"any",
"code":"unableLogin",
"reason":"any"
"}]
Show dialog.
Title: No connection
Message: We are unable to connect to the UPC server. Please check your internet connection settings.
Buttons:
1. OK;
2. Try again.
Title: STARTUP_UNABLE_TO_LOGIN_HEADER
Message: STARTUP_UNABLE_TO_LOGIN_ERROR
Buttons:
1. BUTTON_OK;
2. SIGN_IN_BUTTON_TRY_AGAIN.
not defined
9
8not definedLGISessionError.

LGISessionServiceInvalidCountryCode
[{
"type":"any",
"code":"countryCode",
"reason":"any"
}]
Show dialog.
Title: Sign in failed
Message: Sign in is currently not possible. Please try again later.
Buttons:
1. OK;
2. Try again.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_UNKNOWN_BODY
Buttons:
1. BUTTON_OK;
2. SIGN_IN_BUTTON_TRY_AGAIN.
not defined
10
9not definedLGISessionError.

LGISessionServiceNotEntitled
[{
"type":"any",
"code":"noOrionEntitlement",
"reason":"any"
}]
Show dialog.
Title: Please sign up
Message: You are currently not entitled to use Horizon Go. Please sign up for this service on unitymedia.de.
Buttons:
1. SIGN UP;
Title: SIGN_IN_NOTREGISTERED_UM_HEADER
Message: SIGN_IN_NOTREGISTERED_UM_BODY
Buttons:
1. SIGN_IN_NOTREGISTERED_UM_BUTTON;
not defined
11
10not definedLGISessionError.

LGISessionServiceNotEntitled
[{
"type":"any",
"code":"noOrionEntitlement",
"reason":"any"
"}]
Show dialog.
Title: Please sign up
Message: You are currently not entitled to use Horizon Go. Please sign up for this service on unitymedia.de.
Buttons:
1. SIGN UP;
Title: SIGN_IN_NOTREGISTERED_UM_HEADER
Message: SIGN_IN_NOTREGISTERED_UM_BODY
Buttons:
1. SIGN_IN_NOTREGISTERED_UM_BUTTON;
not defined
12
11AnyDifference between server's and client's clock more than 2h. During Session validation
*/time
{
"timestamp": ...,
"offset": "+0200"
}
Show dialog.
Message: The configured time on this device seems to be incorrect. Please note that in order for this app to stream video, you need to have the correct time set in your device-settings.
Buttons:
1. OK
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle]
action = general.error
general.errortype = Time difference
page.category1 = Depends on section
+different titles21passedpassed
{
"timestamp": 1450440547205,
"offset": "+0100"
}
time of device 18:07
13
AnyLGI Session Error

Session POST response [{
"type": "state",
"code": "invalidCredentials",
"reason": "invalid"
}]
Response Code: 400 Bad Request
Show dialog.
Title: Sign in failed
Message: Please check your username and password and try again.
Buttons:
1. Close.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_CHECK_CREDENTIALS_BODY
Buttons:
1. BUTTON_CLOSE.
action = general.error
general.errortype = Invalid credentials
page.category1 = Depends on section
14
12AnySession POST response [{
"type": any,
"code": "accountSuspended",
"reason": any
}]
Show dialog.
Title: Sign in failed
Message: Sign in is not possible - account suspended.
Buttons:
1. OK.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_ACCOUNT_SUSPENDED
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Account suspended
page.category1 = Depends on section
15
13AnySession POST response [{
"type": any,
"code": "isBetaCustomer",
"reason": any
}]
Show dialog.
Title: Sign in failed
Message: Sign in is not possible for Beta Customer.
Buttons:
1. OK.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_BETA_CUSTOMER
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Beta customer
page.category1 = Depends on section
16
14AnyLGI Session Error

Response Code: 400 Bad Request
Session POST response [{
"type": "state",
"code": "accountLocked",
"reason": "invalid"
}]
Show dialog.
Title: Account temporarily locked
Message: Your account has been locked due to multiple unsuccessful login attempts. Please wait %@ minutes and try again.
Buttons:
1. Try again;
2. OK
Title: SIGN_IN_ACCOUNT_LOCKED_HEADER
Message: SIGN_IN_ACCOUNT_LOCKED_BODY
Buttons:
1. SIGN_IN_BUTTON_TRY_AGAIN;
2. BUTTON_OK
action = general.error
general.errortype = Account locked
page.category1 = Login, Settings
+3passedNo service' error type is reported if users logs in with wrong credential 6+ times (NL)
Fixed (10134)
passed
17
15AnyOther error during session validation
'SessionService'
Show dialog.
Title: ...
Message: ...
Buttons:
1. ...
2. ...
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitle].
action = general.error
general.errortype = No service
page.category1 = Depends on section
http.host = [requested host]
http.path = [requested path]
http.status = [response code]
http.response = [response]
+Legacy code - possiblypassedpassed
18
16Continue WatchingError occures during deleting item (all items) from continue watching
Handled as LGI General Network ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle]
action = general.error
general.errortype = Bookmark delete
page.category1 = My Videos
+android doesn't handle result24passedError is not reported (abort request in charles)
Fixed (10134)
passed
Abort
https://ios-api-preprod.horizon.tv/oesp/api/NL/eng/ios/bookmarks
by Charles
19
17Country selection,
Splash screen
Error occures during CQ5 updating after choosing countryHandled as LGI Session ErrorShow dialog.
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitleArray].
action = general.error
general.errortype = CQ5 request
page.category1 = Login
+23passedpassed
20
Application PreferencesError occures during CQ5 updating after choosing countryHandled as LGI Session ErrorShow dialog.
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitleArray].
action = general.error
general.errortype = CQ5 request
page.category1 = Settings
21
18LoginDifference between server's and client's clock more than 2h.
*/time
{
"timestamp": ...,
"offset": "+0200"
}
Show dialog.
Message: The configured time on this device seems to be incorrect. Please note that in order for this app to stream video, you need to have the correct time set in your device-settings.
Buttons:
1. OK
Message: WRONG_TIME
Buttons:
1. BUTTON_OK;
action = general.error
general.errortype = Time difference
page.category1 = Login
+different titles21passedpassed
22
LGI Session Error

Session POST response [{
"type": "state",
"code": "invalidCredentials",
"reason": "invalid"
}]
Response Code: 400 Bad Request
Show dialog.
Title: Sign in failed
Message: Please check your username and password and try again.
Buttons:
1. Close.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_CHECK_CREDENTIALS_BODY
Buttons:
1. BUTTON_CLOSE.
action = general.error
general.errortype = Invalid credentials
page.category1 = Login
23
LGI Session Error

Response Code: 400 Bad Request
Session POST response [{
"type": "state",
"code": "accountLocked",
"reason": "invalid"
}]
Show dialog.
Title: Account temporarily locked
Message: Your account has been locked due to multiple unsuccessful login attempts. Please wait %@ minutes and try again.
Buttons:
1. Try again;
2. OK
Title: SIGN_IN_ACCOUNT_LOCKED_HEADER
Message: SIGN_IN_ACCOUNT_LOCKED_BODY
Buttons:
1. SIGN_IN_BUTTON_TRY_AGAIN;
2. BUTTON_OK
action = general.error
general.errortype = Account locked
page.category1 = Login
24
Session POST response [{
"type": any,
"code": "accountSuspended",
"reason": any
}]
Show dialog.
Title: Sign in failed
Message: Sign in is not possible - account suspended.
Buttons:
1. OK.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_ACCOUNT_SUSPENDED
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Account suspended
page.category1 = Login
25
Session POST response [{
"type": any,
"code": "isBetaCustomer",
"reason": any
}]
Show dialog.
Title: Sign in failed
Message: Sign in is not possible for Beta Customer.
Buttons:
1. OK.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_BETA_CUSTOMER
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Beta customer
page.category1 = Login
26
No connection during login.Show dialog.
Title: No connection
Message: We are unable to connect to the UPC server. Please check your internet connection settings.
Buttons:
1. Close;
2. Try again.
Title: GENERAL_NO_INTERNET_HEADER
Message: GENERAL_NO_INTERNET_ERROR
Buttons:
1. BUTTON_CLOSE;
2. SIGN_IN_BUTTON_TRY_AGAIN.
action = general.error
general.errortype = No internet
page.category1 = Login
27
19Other error during loginHandled as LGI Session ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitleArray].
action = general.error
general.errortype = No service
page.category1 = Login
http.host = [requested host]
http.path = [requested path]
http.status = [response code]
http.response = [response]
+2passedpassed
28
20Medibox list, Settings-Mediabox listError occures during mediabox renaming.
e.g: PUT */profile/stbs Status code = 404
[{
"type": any,
"code":"existingName",
"reason": any
}]
Show dialog.
Title: Box names need to be unique
Buttons: The names of your boxes have to be unique in order for you to properly identify them. Please rename at least one of your boxes.
1. OK.
Title: BOX_SEL_NAMING_DUPLICATE_HEADER
Message: BOX_SEL_NAMING_DUPLICATE_BODY
Buttons:
1. BUTTON_OK;
action = general.error
general.errortype = Mediabox rename
page.category1 = Settings
+no reaction for error on android19, 20passederror is not reported after login screen (before get Home - first install) for iPad
Fixed (10134)
passed
29
21Wrong new name for mediabox.
e.g.: Less than 3 characters.
Show dialog.
Title: Name invalid
Message: The name of your box needs to contain at least 3 characters. No special characters are allowed.
Buttons:
1. OK.
Title: BOX_SEL_NAMING_HEADER
Message: BOX_SEL_NAMING_BODY
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Mediabox rename
page.category1 = Settings
+no message for maximum characters on android (input limit)25passederror is not reported after login screen (before get Home - first install) for iPad
Note:IOS does not allow to input 30+ symbols
Fixed (10134)
passed
30
22Wrong new name for mediabox.
e.g.: Greater than 30 characters.
Show dialog.
Title: Name invalid
Message: The name of your box is too long. Please use a maximum of 30 characters.
Buttons:
1. OK.
Title: BOX_SEL_NAMING_HEADER
Message: BOX_SEL_NAMING_BODY_MAX
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Mediabox rename
page.category1 = Settings
31
23My channelsError occures during request for channels.
e.g.: GET */channels Status Code = 400, 404 etc.
Handled as LGI General Network ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitle].
action = general.error
general.errortype = Parental settings request
page.category1 = Settings
+not testednot tested
32
24Error occures during save operation for channels.
e.g.: PUT */profile/stations Status Code = 400, 403, 404 etc.
Show dialog.
Title: Settings not saved
Message: At the moment we cannot save your settings due to technical reasons. Please try again later.
Buttons:
1. OK.
Title: SETTINGS_NOT_SAVING_HEADER
Message: SETTINGS_NOT_SAVING_BODY
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Channels save
page.category1 = Settings, Home
+No message on android26passedaborting of PUT "https://ios-api.horizon.tv/oesp/api/NL/eng/ios/profile/stations" is reproted as "Parental settings save"
Fixed (10134)
passed
33
25Parental SettingsError occures during "ratinggroups" request.
e.g.: GET */settings/pin/ratinggroups Status Code = 400, 404 or Network Error.
Handled as LGI General Network Error

Buttons:
1. Cancel;
2. Try again.
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. BUTTON_CANCEL;
2. BUTTON_TRY_AGAIN.
action = general.error
general.errortype = Parental settings request
page.category1 = Settings
+7passedpassed
34
26Error occures during save parental settings operation.
e.g.: POST */profile/parental/set Status Code = 400, 404 or Network Error.
Handled as LGI General Network ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitle].
action = general.error
general.errortype = Parental settings save
page.category1 = Settings
+No message on android27passedpassed
35
Parental PasswordWrong password entered
POST */profile/credential/verify
Response Code = 400 Bad Request
[{
"type": "state",
"code": "credential",
"reason": "invalid"
}]

[{
"type": any,
"code": "password",
"reason": any
}]
Show dialog.
Title: Password incorrect
Message: This password is incorrect. Please check your My UPC password and try again.
Buttons:
1. OK
Show dialog.
Title: PARENTAL_CONTROL_PARENTAL_SETTINGS_AGES_INCORRECT_PASSWORD_HEADER
Message: PARENTAL_CONTROL_PARENTAL_SETTINGS_AGES_INCORRECT_PASSWORD_BODY
Buttons:
1. BUTTON_OK
action = general.error
general.errortype = Invalid credentials
page.category1 = Settings
36
Wrong password entered
POST */profile/credential/verify
Response Code = 400 Bad Request
[{
"type": "state",
"code": "any",
"reason": "prohibited"
}]
Show dialog.
Title: Account temporarily locked
Message: Your account has been locked due to multiple unsuccessful login attempts. Please wait %@ minutes and try again.
Buttons:
1. OK
Show dialog.
Title: SIGN_IN_ACCOUNT_LOCKED_HEADER
Message: SIGN_IN_ACCOUNT_LOCKED_BODY
Buttons:
1. BUTTON_OK
action = general.error
general.errortype = Account locked
page.category1 = Settings
37
27Change PINPOST */profile/parental/verifypin Response Code = 400 Bad Request
[{
"type": "state",
"code": "credential",
"reason": "invalid",
"retries": "2",
"allowed": "3"
}]
Show dialog.
Title: PIN incorrect
Message: This PIN is incorrect. Please try again.
Buttons:
1. Try again.
Title: PIN_ERROR_HEADER
Message: PIN_INTRO_CAPTION_LOCKOUT_ATTEMPTS_REMAINING
Buttons:
1. BUTTON_TRY_AGAIN.
action = general.error
general.errortype = PIN change
page.category1 = Settings
+different buttons8passedpassed
38
28POST */profile/parental/verifypin Response Code = 400 Bad Request
[{
"type": "state",
"code": "credential",
"reason": "invalid",
"retries": "1",
"allowed": "3"
}]
Show dialog.
Title: Warning
Message: This PIN is incorrect. Your PIN will be temporarily locked if you enter another incorrect PIN. Please try again or check the online FAQ first.
Buttons:
1. Try again;
2. Cancel.
Title: PIN_INTRO_CAPTION_LOCKOUT_ONE_ATTEMPT_REMAINING_HEADER
Message: PIN_INTRO_CAPTION_LOCKOUT_ONE_ATTEMPT_REMAINING
Buttons:
1. PIN_ERROR_BUTTON;
2. BUTTON_CANCEL."
action = general.error
general.errortype = PIN change
page.category1 = Settings
+9passedpassed
39
29POST */profile/parental/verifypin Response Code = 400 Bad Request
[{
"type": "state",
"code": "parentalPin",
"reason": "prohibited",
"retries": "0",
"allowed": "3"
}]
Show dialog.
Title: PIN locked
Message: Your PIN has been temporarily locked due to too many failed PIN entries. Please wait %@ minutes and try again or check the online FAQ on how to find your PIN.
Buttons:
1. OK.
Show dialog.
Title: PIN_INTRO_CAPTION_LOCKOUT_HEADER
Message: PIN_INTRO_CAPTION_LOCKOUT_BODY
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = PIN change
page.category1 = Settings
+10passedpassed
40
30Other error occures during PIN verification.
e.g.: Network Error.
Show dialog.
Title: ...
Message: ...
Buttons:
1. ...
Show dialog.
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle].
action = general.error
general.errortype = PIN change
page.category1 = Settings
+bug on android13passedWhen user enter invalid pin during video streaming, corresponding alert appears and error is reported as "PIN change". Is it OK?
Was updated by Dev as expected behaviour
passede.g. No connection
41
31Error occures during setting new PIN.
POST */profile/credential/set
e.g.: Network Error, Server Maintenace, etc.
Show dialog.
Title: ...
Message: ...
Buttons:
1. ...
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
action = general.error
general.errortype = PIN change
page.category1 = Settings
+11passedpassede.g. No connection
42
32New Pin doesn't match during confirmation.Show dialog.
Title: PIN does not match
Message: The PIN you have entered does not match. Please create a new PIN again.
Buttons:
1. Try again.
Show dialog.
Title: PIN_CHANGE_PARENTAL_CONTROL_NEW_PIN_NO_MATCH_HEADER
Message: PIN_CHANGE_PARENTAL_CONTROL_NEW_PIN_NO_MATCH_BODY
Buttons:
1. PIN_CHANGE_PARENTAL_CONTROL_NEW_PIN_NO_MATCH_BUTTON.
action = general.error
general.errortype = PIN change
page.category1 = Settings
+12passedpassed
43
33AnyNetwork Error, Server Maintenace, etc during remote booking.
e.g: POST */settopboxes/recordings Failed.
Show dialog.
Title: Request failed
Message: Please make sure your box is on or in standby mode (power usage should be set to 'High' in the settings on your box).
Buttons:
1. OK.
Show dialog.
Title: RECORDING_FAILED_HEADER
Message: RECORDING_PENDING_BODY
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Remote booking
page.category1 = Home, Watch TV
44
34Splash, Login, Mediabox listPUT */profile/activate/replay
Response body:
[{
"type":"state",
"code":"alreadyOptedIn",
"reason":"prohibited"
}]
Show dialog.
Title: REPLAY ACTIVATION FAILED
Message: Replay activation failed, please try again
Buttons:
1. CANCEL;
2. TRY AGAIN.
Show dialog.
Title: REPLAY_ACTIVATION_FAILED_TITLE
Message: REPLAY_ACTIVATION_FAILED_BODY
Buttons:
1. BUTTON_CANCEL_CAPITALS;
2. BUTTON_TRY_AGAIN_CAPITALS.
action = general.error
general.errortype = Replay opt in
page.category1 = Home, Watch TV
+16passedpassed
45
35SplashNo connection during session setup.
LGIGeneralErrorNotConnectedToInternet (see below).
Show dialog.
Title: No connection
Message: We are unable to connect to the UPC server. Please check your internet connection settings.
Buttons:
1. Try again.
Show dialog.
Title: GENERAL_NO_INTERNET_HEADER
Message: GENERAL_NO_INTERNET_ERROR
Buttons:
1. SIGN_IN_BUTTON_TRY_AGAIN.
action = general.error
general.errortype = No internet
page.category1 = Login
+not testednot testedVB Comment
46
36Difference between server's and client's clock more than 2h. LGISessionServiceWrongTime
*/time
{
"timestamp": ...,
"offset": "+0200"
}
Show dialog.
Message: The configured time on this device seems to be incorrect. Please note that in order for this app to stream video, you need to have the correct time set in your device-settings.
Buttons:
1. OK

Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
action = general.error
general.errortype = Time difference
page.category1 = Login
+21not testednot tested
47
37LGI Session Error

Session POST response [{
"type": "state",
"code": "invalidCredentials",
"reason": "invalid"
}]
Response Code: 400 Bad Request
Show dialog.
Title: Sign in failed
Message: Please check your username and password and try again.
Buttons:
1. Close.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_CHECK_CREDENTIALS_BODY
Buttons:
1. BUTTON_CLOSE.
action = general.error
general.errortype = Invalid credentials
page.category1 = Login
+different buttons1passedpassed
48
38Session POST response [{
"type": any,
"code": "accountSuspended",
"reason": any
}]
Show dialog.
Title: Sign in failed
Message: Sign in is not possible - account suspended.
Buttons:
1. OK.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_ACCOUNT_SUSPENDED
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Account suspended
page.category1 = Login
49
39Session POST response [{
"type": any,
"code": "isBetaCustomer",
"reason": any
}]
Show dialog.
Title: Sign in failed
Message: Sign in is not possible for Beta Customer.
Buttons:
1. OK.
Show dialog.
Title: SIGN_IN_UNKNOWN_HEADER
Message: SIGN_IN_BETA_CUSTOMER
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Beta customer
page.category1 = Login
50
40Other error during session setup.Show dialog.
Title: ...
Message: ...
Buttons:
1. Try again.
Show dialog.
Title: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. SIGN_IN_BUTTON_TRY_AGAIN.
action = general.error
general.errortype = No service
page.category1 = Login
http.host = [requested host]
http.path = [requested path]
http.status = [response code]
http.response = [response]
+passedpassed
51
41Remote Control,
Zapper, Titlecard
Unable to set linear pushed content in PS.
POST */settopboxes/play
Response Code: 400 Bad Request
Note: for other error - general error
Show dialog.
Message: Unable to connect to your mediabox.
Buttons:
1. OK.
Message: MEDIABOX_NOT_CONNECTED
Buttons:
1. BUTTON_OK.
action = general.error
general.errortype = Mediabox not connected

page.category1 = Remote Control
or
page.category1 = Home
no dialog on android30passedpassed
52
42Remote Control,
Zapper, Titlecard
Unable to set VOD pushed content in PS.
POST */settopboxes/tune Failed
Response Code: 400 Bad Request
Note: for other error - general error
no dialog on android31passedpassed
53
43Location ViewLocation Check ErrorShow dialog.
Message: Your location could not be determined.
Buttons:
1. CANCEL.
2. Try again
Message: LOCATION_SERVICE_ERROR
Buttons:
1. BUTTON_CANCEL_CAPITALS.
2. BUTTON_TRY_AGAIN
No omniture tracking
54
44AnyLicense Device Unregistered Device Limit Error
Error Code -2017
Show dialog.
Title: Register device
Message: You already have registered the maximum amount of devices with your account. If you want to play video with this device you need to replace one of your registered devices.
Buttons:
1. Cancel
2. Replace device.
Title: MY_DEVICES_REGISTER_HEADER
Message: MY_DEVICES_MAXIMUM_AMOUNT_MESSAGE
Buttons:
1. BUTTON_CANCEL
2. MY_DEVICES_REPLACE_DIALOG_CONFIRM.
No omniture tracking
55
45AnyLicense Device Unregistered Action Limit Error
Error Code -2018
Show dialog.
Title: Register device
Message: You have registered the maximum number of devices and used all device changes for this month. You can use one of the registered devices or register a new device again on {date}.
Buttons:
1. OK
Title: MY_DEVICES_REGISTER_HEADER
Message: MY_DEVICES_REGISTRATION_LIMIT_MESSAGE
Buttons:
1. BUTTON_OK
No omniture tracking
56
46AnyError occures during register a device for the customer in the supplied country
POST */devices
Show dialog.
Title: Device cannot be registered
Message: Your device {name} cannot be registered at the moment. Please try again later.
Buttons:
1. OK
Title: MY_DEVICES_REGISTER_COMPLETE_WITH_ERROR_HEADER
Message: MY_DEVICES_REGISTER_COMPLETE_WITH_ERROR_MESSAGE
Buttons:
1. BUTTON_OK
No omniture tracking
57
47AnyError occures during register a device for the customer in the supplied country
GET */devices/status
Show dialog.
Title: Device cannot be registered
Message: Your device {name} cannot be registered at the moment. Please try again later.
Buttons:
1. OK
Title: MY_DEVICES_REGISTER_COMPLETE_WITH_ERROR_HEADER
Message: MY_DEVICES_REGISTER_COMPLETE_WITH_ERROR_MESSAGE
Buttons:
1. BUTTON_OK
No omniture tracking
58
48AnyError occures during register a device for the customer in the supplied country
PUT */devices/{deviceId}
Show dialog.
Title: Device cannot be registered
Message: Your device {name} cannot be registered at the moment. Please try again later.
Buttons:
1. OK
Title: MY_DEVICES_REGISTER_COMPLETE_WITH_ERROR_HEADER
Message: MY_DEVICES_REGISTER_COMPLETE_WITH_ERROR_MESSAGE
Buttons:
1. BUTTON_OK
No omniture tracking
59
49Terms ConditionsError occures during getting terms
GET */terms/latest.json
Handled as LGI General Network ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitle].
No omniture tracking
60
50Title cardPush content to STB
Response Code = 400 Bad Request
Show dialog.
Message: Unable to connect to your mediabox..
Buttons:
1. OK
Message: MEDIABOX_NOT_CONNECTED
Buttons:
1. BUTTON_OK
No omniture tracking
61
51Push content to STB
Response Code ≠ 400 Bad Request
Handled as LGI General Network ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
No omniture tracking
62
52AnySaves the customer's terms and conditions settings
POST profile/terms/set
Handled as LGI General Network ErrorTitle: [error localizedErrorHeader]
Message: [error localizedErrorDescription]
Buttons:
1. [error localizedErrorCancelButtonTitle];
2. [error localizedErrorOtherButtonTitle].
No omniture tracking
63
64
53not definedLGI License Web Error

"/license/hb"
Unexpected response
Error code: 244
Request failed by timeout
Error code: 243

"/license/info"
Signing key is invalid
Error code: 342

"/license/acquire"
Request failed by timeout
Error code: 145
Title: Service not available
Message: The service is temporarily not available. Please try again later.
Buttons:
1. Close;
Title: GENERAL_NO_SERVICE_HEADER
Message: GENERAL_NO_SERVICE_ERROR
Buttons:
1. GENERAL_NO_SERVICE_BUTTON_CLOSE;
not defined
65
54not definedLGI License Web Error
response [{
"type": any,
"code": "concurrency",
"reason": any
}]
Title: Maximum reached
Message: The maximum number of simultaneous Horizon viewers for your account has been reached. Close one of your Horizon Go players and try again.
Buttons:
1. OK;
Title: PLAYER_CONCURRENT_HEADER
Message: PLAYER_CONCURRENT_BODY
Buttons:
1. BUTTON_OK;
not defined
66
55not definedLGI License Web Error
response [{
"type": "state",
"code": "ipBlocked",
"reason": "prohibited"
}]
Title: Out of UPC WiFi Network
Message: In order to watch this you need to be on your UPC WiFi network.
Buttons:
1. OK;
Title: TITLECARD_OUT_OF_NETWORK_HEADER
Message: TITLECARD_OUT_OF_NETWORK_BODY
Buttons:
1. BUTTON_OK;
not defined
67
56not definedLGI License Web Error
response [{
"type": "state",
"code": "geoLocationBlocked",
"reason": "prohibited"
}]
Title: Not available
Message: Sorry, this video is not available outside your country.
Buttons:
1. OK;
Title: TITLECARD_VIDEO_GEO_BLOCKED_HEADER
Message: TITLECARD_VIDEO_GEO_BLOCKED_BODY
Buttons:
1. BUTTON_OK;
not defined
68
57not definedLGI License Web Error
response [{
"type": "any",
"code": "blackout",
"reason": "any"
}]
Title: Not available
Message: This video unfortunately cannot be played at this time. The channel has blocked the video due to copyright restrictions.
Buttons:
1. OK;
Message: BLACKOUT_MESSAGE
Buttons:
1. BUTTON_OK;
not defined
69
58not definedLGI License Web Error

response [{
"type": "request",
"code": "contentId",
"reason": "prohibited"
}]
response [{
"type": "requestBody",
"code": "signature",
"reason": "invalid"
}]
response [{
"type": "requestBody",
"code": "token",
"reason": "invalid"
}]
response [{
"type": "requestBody",
"code": "contentId",
"reason": "prohibited"
}]
response [{
"type": "state",
"code": "license",
"reason": "invalid"
}]
response [{
"type": "request",
"code": "contentId",
"reason": "invalid"
}]
response [{
"type": "any",
"code": "any",
"reason": "No"
}]
Title: Not available
Message: Sorry, the video cannot be played at this time.
Buttons:
1. OK;
Message: ASSET_NOT_PLAYABLE_BODY
Buttons:
1. BUTTON_OK;
not defined
70
71

(Chromecast)
72
59AnyChromecast manager got the errorShow dialog.
Title: Error
Message: Oops, something went wrong… Please re-connect to your Chromecast and try again.\nError: {error code}
Buttons:
1. OK.
Title: CHROMECAST_ERROR_HEADRER
Message: CHROMECAST_ERROR_OOPS_WITH_CODE
Buttons:
1. BUTTON_OK
No omniture tracking
73
60AnyError occures during playback on chromecast.
response [{
"type": "any",
"code": "parentalCredentialVerification",
"reason": "any"
}]

Show dialog.
Title: Error
Message: Sign in is not possible for Beta Customer.
Buttons:
1. Cancel
2. OK.
Show dialog.
Title: CHROMECAST_ERROR_HEADRER
Message: CHROMECAST_PARENTAL_CREDENTIAL_VERIFICATION
Buttons:
1. BUTTON_CANCEL
2. BUTTON_OK.
No omniture tracking
74
61AnyError occures during playback on chromecast.
response [{
"type": "state",
"code": "adultCredentialVerification",
"reason": "prohibited"
}]

Show dialog.
Title: Error
Message: Enter your adult PIN via the Horizon Go app to continue.
Buttons:
1. Cancel
2. OK.
Show dialog.
Title: CHROMECAST_ERROR_HEADRER
Message: CHROMECAST_ADULT_CREDENTIAL_VERIFICATION
Buttons:
1. BUTTON_CANCEL
2. BUTTON_OK.
No omniture tracking
75
62AnyError occures during playback on chromecast.
response [{
"type": "state",
"code": "deviceUnregistered",
"reason": "prohibited"
}]
Show dialog.
Title: Error
Message: You need to register your mobile device via the Horizon Go app first, before you can stream via Chromecast.
Buttons:
1. Cancel
2. OK.
Show dialog.
Title: CHROMECAST_ERROR_HEADRER
Message: CHROMECAST_DEVICE_UNREGISTERED
Buttons:
1. BUTTON_CANCEL
2. BUTTON_OK.
No omniture tracking
76
63AnyError occures during playback on chromecast.
response [{
"type": "state",
"code": "deviceUnregisteredActionLimitReached",
"reason": "prohibited"
}]
Show dialog.
Title: Error
Message: You have registered the maximum number of devices and used all device changes for this month. You can use one of the registered devices or register a new device again on {date}.
Buttons:
1. Cancel
2. OK.
Show dialog.
Title: CHROMECAST_ERROR_HEADRER
Message: CHROMECAST_DEVICE_UNREGISTERED_ACTIONLIMITREACHED
Buttons:
1. BUTTON_CANCEL
2. BUTTON_OK.
No omniture tracking
77
64AnyError occures during playback on chromecast.
response [{
"type": "state",
"code": "deviceUnregisteredDeviceLimitReached",
"reason": "prohibited"
}]
Show dialog.
Title: Error
Message: You already have registered the maximum amount of devices with your account. If you want to play video with this device you need to replace one of your registered devices.
Buttons:
1. Cancel
2. OK.
Show dialog.
Title: CHROMECAST_ERROR_HEADRER
Message: CHROMECAST_DEVICE_UNREGISTERED_DEVICELIMITREACHED
Buttons:
1. BUTTON_CANCEL
2. BUTTON_OK.
No omniture tracking
78
79
Just text when view has not any content
80
65Watch TVAll live channels are unavailableShow dialog.
Title: Not entitled
Message: You need to have a subscription to watch this.
Show dialog.
Title: TITLECARD_NOT_ENTITLED_HEADER
Message: TITLECARD_NOT_ENTITLED_BODY
No omniture tracking
81
66All live channels are marked as invisibleTitle: No channels available. You can modify your channel line-up in the settings section.Title: NO_CHANNELS_ACTIVATEDNo omniture tracking
82
83
Red - different
84
Green - to review
85
86
87
CasesFlowReason to show:
88
7Session recovery
89
11Session recoveryLegacy code, possibly will never be shown
90
15Session creation
91
29Remote booking
92
34Session creation
93
94
95
96
97
Horizon Go Error Codes
https://projectwiki.piksel.com/pages/viewpage.action?spaceKey=ORIO&title=Horizon+Go+Error+Codes
98
Omniture Implementation Specification
https://projectwiki.piksel.com/pages/viewpage.action?title=Omniture+Implementation+Specification&spaceKey=ORIO#OmnitureImplementationSpecification-GeneralErrors
99
100