Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retrospect pincode for Videoland is not being stored on Android TV #1791

Closed
1 of 7 tasks
Johpin1 opened this issue May 2, 2024 · 16 comments
Closed
1 of 7 tasks

Retrospect pincode for Videoland is not being stored on Android TV #1791

Johpin1 opened this issue May 2, 2024 · 16 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@Johpin1
Copy link

Johpin1 commented May 2, 2024

Bug report

Describe the bug

On Android TV 11 you have to fill in the Retrospect pincode for Videoland everytime after starting Kodi. During a Kodi session it will be remembered. It seems to be the pincode has not been stored. For Linux and Android 13 tablet it will be stored on disk.

Expected Behavior

After starting Kodi not every time asking for Retrospect pincode on Android TV when you choose Videoland.

Actual Behavior

You have to fill in the Retrospect pincode everytime you use Videoland after starting Kodi.

Possible Fix

Remove Retrospect pincode from Videoland or store the pincode on disk.

To Reproduce

Steps to reproduce the behavior:

Debuglog

The debug retrospect.log can be found here:

Screenshots

Additional context or screenshots (if appropriate)

Your Environment

Used Operating system:

  • Android
  • iOS
  • Linux
  • OSX
  • Raspberry-Pi
  • Windows
  • Windows UWP

Used versions:

  • Kodi version: 20.5
  • Retrospect version: 5.7.10
@Johpin1 Johpin1 added the bug Something isn't working label May 2, 2024
@basrieter
Copy link
Collaborator

basrieter commented May 2, 2024

@Johpin1
Copy link
Author

Johpin1 commented May 2, 2024

The log file can be found in https://paste.kodi.tv/patiwisozi.kodi. After switching Retrospect debug on, I started Videoland, entered the pin. After this a list has been shown.

@basrieter
Copy link
Collaborator

20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - Plugin::Error Processing FolderList
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - | Traceback (most recent call last):
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |   File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.retrospect/resources/lib/actions/folderaction.py", line 55, in execute
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |     media_items = self.__channel.process_folder_list(selected_item)
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |   File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.retrospect/resources/lib/chn_class.py", line 191, in process_folder_list
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |     self.loggedOn = self.log_on()
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |                     ^^^^^^^^^^^^^
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |   File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.retrospect/channels/channel.videoland/videolandnl/chn_videolandnl.py", line 427, in log_on
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |     result = self.__authenticator.log_on(username=username, channel_guid=self.guid,
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |   File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.retrospect/resources/lib/authentication/authenticator.py", line 61, in log_on
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |     v = Vault()
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |         ^^^^^^^
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |   File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.retrospect/resources/lib/vault.py", line 32, in __init__
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |     key = self.__get_application_key()  # type: bytes
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |   File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.retrospect/resources/lib/vault.py", line 264, in __get_application_key
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - |     raise RuntimeError("Incorrect Retrospect PIN specified")
20240502 19:00:23 - [ERROR   ] - folderaction.py      - 134  - + RuntimeError: Incorrect Retrospect PIN specified

You are not specifying the correct Retrospect Vault Pin (which is not your videoload password).

@Johpin1
Copy link
Author

Johpin1 commented May 3, 2024

I removed the previous retrospect.log and made a new one. In the old one at the time stamp 21:55 should have been looked at. I am surprised old information in this file is found.

The new retrospect.log does not contain the word "pin ". I opened Videoland, entered the pin code, saw a list appear and closed it.
https://paste.kodi.tv/yareyelaxa.kodi

@basrieter
Copy link
Collaborator

Can you try clearing the cache and cookies in Retrospect (via the add-on settings of Retrospect)?

@Johpin1
Copy link
Author

Johpin1 commented May 3, 2024

Via the addon settings of Retrospect I have removed its cache and cookies. After entering Videoland with a pin code I closed Kodi. Still I have to reenter the pin code to open Videoland after reopening Kodi.

@basrieter
Copy link
Collaborator

Weird:

Existing but different authenticated user (t*w*c*l*6*@*e*s*a*s*c*m) found. Logging of first.

Seems like the JWT info differs from your actual login e-mail? Could that be?

@Johpin1
Copy link
Author

Johpin1 commented May 3, 2024

Where could I find the JWT info? I assume it isn't in settings.json.

@basrieter
Copy link
Collaborator

During login there is a call to https://gigya-merge.videoland.com/accounts.getAccountInfo, the data it returns contains profile information with a email. This also happens on the site itself. Could you check with your browser and the Developer tools within the browser to see what the content is of your https://gigya-merge.videoland.com/accounts.getAccountInfo and if the email matches the value configured in Retrospect?

@Johpin1
Copy link
Author

Johpin1 commented May 4, 2024

I logged into videoland.com, looked in Developer tools. It is unclear to me what the next step is.
I entered the URL https://gigya-merge.videoland.com/accounts.getAccountInfo and got the message I don't have the required permission to call.

Could you describe the steps in more detail?

My issue does not happen when using Android 13 or Raspberry Pi OS, only for Android TV 11.

@basrieter
Copy link
Collaborator

With the developer tools open, and perserve log enabled, log into videoland.nl. In the list the https://gigya-merge.videoland.com/accounts.getAccountInfo will appear.

image

Click it and check it's response data.

@Johpin1
Copy link
Author

Johpin1 commented May 5, 2024

In the profile of the response date the e-mail address is correct: it is the same as I entered in Retrospect for Videoland.

@basrieter basrieter self-assigned this May 5, 2024
Copy link

Branch bug-1791 was created for issue: "Retrospect pincode for Videoland is not being stored on Android TV"

basrieter added a commit that referenced this issue May 5, 2024
@basrieter
Copy link
Collaborator

Can you please install https://github.com/retrospect-addon/plugin.video.retrospect/archive/refs/heads/bug-1791.zip. Set the logging to TRACE and check Videoland again. It won't be fixed but I added some extra logging.

Logger.trace(f"Account comparison: '{logged_on_user}' vs '{username}'")

Please check the log and see what the line says.

@Johpin1
Copy link
Author

Johpin1 commented May 5, 2024

The line says "name_backname@xxx name_Backname@xxx. The difference is a capital character. I changed the capital character in Retrospect into a small character and now it does not ask anymore for a pin code. The issue has been solved.

My conclusion is that the e-mail address to login to Videoland is not case sensitive, but Retrospects pin code is.

Thanks for solving this issue.

@basrieter
Copy link
Collaborator

Great! So let me fix that by doing a capital-insensitive comparison.

@basrieter basrieter added this to the v5.7.11 milestone May 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants