xbmc icon indicating copy to clipboard operation
xbmc copied to clipboard

PrimeVideo Profiles Empty Name Exception

Open Liqianyu opened this issue 4 years ago • 6 comments

Addon used

  • [X] Amazon VOD (plugin.video.amazon-test)
  • [ ] Browser Launcher (plugin.program.browser.launcher)
  • Addon version: 0.8.9

Account type

  • [X] primevideo.com
  • [ ] amazon.(com/co.uk/de/jp)

System Setup (please provide the following information):

  • Hardware:Nvidia Shield TV Pro (2019)
  • OS version:8.2.1(32.8.435.17)
  • Kodi version number:18.8(18.8.0)

Upload Logs

kodi.log

  DEBUG: ------ Window Init (DialogBusy.xml) ------
  DEBUG: CAddonSettings[plugin.video.amazon-test]: loading setting definitions
  DEBUG: CAddonSettings[plugin.video.amazon-test]: trying to load setting definitions from old format...
  DEBUG: CAddonSettings[plugin.video.amazon-test]: loading setting values
  DEBUG: [Amazon VOD] Requested {}
 NOTICE: [Amazon VOD] Version: 0.8.9
 NOTICE: [Amazon VOD] Unicode filename support: False
 NOTICE: [Amazon VOD] Locale: en-gb / Language: en
  DEBUG: [Amazon VOD] Download Time: 2.05502200127
  ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
            Error Type: <type 'exceptions.KeyError'>
            Error Contents: u'name'
            Traceback (most recent call last):
                File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/default.py", line 5, in <module>
                EntryPoint()
                File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/resources/lib/startup.py", line 74, in EntryPoint
                g.pv.BrowseRoot()
                File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/resources/lib/primevideo.py", line 358, in BrowseRoot
                if not self.BuildRoot():
                File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/resources/lib/primevideo.py", line 370, in BuildRoot
                self._UpdateProfiles(home)
                File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/resources/lib/primevideo.py", line 265, in _UpdateProfiles
                'title': p['name'],
            KeyError: u'name'
            -->End of Python script error report<--
  DEBUG: onExecutionDone(12, /storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/default.py)
  DEBUG: ------ Window Init (DialogNotification.xml) ------
WARNING: CPythonInvoker(12, /storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/default.py): the python script "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.video.amazon-test/default.py" has left several classes in memory that we couldn't clean up. The classes include: N14PythonBindings31XBMCAddon_xbmc_Monitor_DirectorE,N9XBMCAddon7xbmcgui6DialogE,N9XBMCAddon9xbmcaddon5AddonE
   INFO: Python interpreter stopped
  DEBUG: Thread LanguageInvoker 498 terminating
  ERROR: GetDirectory - Error getting plugin://plugin.video.amazon-test/
  DEBUG: Thread waiting 496 terminating
  DEBUG: ------ Window Deinit (DialogBusy.xml) ------

Describe the bug

The name of PrimeVideo profiles is not set, so the default value is "name":"", which causes an exception. Note line 265 and close profiles support can be bypassed.

Liqianyu avatar Oct 20 '20 05:10 Liqianyu

404, log not found. Can you re-attach it in a response here?

Varstahl avatar Oct 20 '20 09:10 Varstahl

@Varstahl I have re-edited and pasted the log :)

Liqianyu avatar Oct 21 '20 01:10 Liqianyu

I need you to log into primevideo and attach in a comment here the .html file. What you're experiencing isn't normal, and it's impossible to have an empty profile name, so either you stumbled in a weird amazon bug, or they are using a different implementation in your country. Also, tell me which country you're accessing it from, so that I can have a reference frame.

Varstahl avatar Oct 21 '20 08:10 Varstahl

The account is for Amazon Australia Prime members. The website language is set to Simplified Chinese. I think the problem is because never set the profiles name and has nothing to do with the login IP address.

Adult account

"name":""

Child account

"name":"孩子"

customerIPAddress have been deleted view-source:https://www.primevideo.com/profiles/list

{
  "props": {
    "step": "manage",
    "canCreate": true,
    "canEdit": true,
    "links": {
      "storefrontHome": "/storefront/ref=atv_pr_ww_home",
      "preEditProfile": "/profiles/ref=atv_pr_nv_mng?step=edit",
      "learnMore": "/profilesLearnMore/ref=atv_pr_ww_lrn_mr",
      "createProfileNav": "/profiles/ref=atv_pr_cr_nv?step=create",
      "createProfile": "/profiles/ref=atv_pr_ww_add?step=create",
      "editProfile": "/profiles/ref=atv_pr_ww_edt?step=editing",
      "manageProfile": "/profiles/ref=atv_pr_nv_mng?step=manage",
      "parentalControls": "/settings/parental-controls/ref=atv_pr_ww_vr"
    },
    "metadata": {
      "availability": {
        "description": "Fatal Count: 0, Error Count: 0, Warning Count: 0",
        "severity": "NoDegradation"
      }
    },
    "profiles": [
      {
        "ageGroup": "ADULT",
        "avatarUrl": "https://m.media-amazon.com/images/G/02/CerberusPrimeVideo-FN38FSBD/adult-1.png",
        "id": "amzn1.actor.person.oid.A2QPTTSBSY2ZS6",
        "isDefault": true,
        "isSelected": true,
        "name": "",
        "switchLink": {
          "partialURL": "/profiles/switch/ref=atv_pr_ww_swtch",
          "query": {
            "pid": "amzn1.actor.person.oid.A2QPTTSBSY2ZS6",
            "csrfToken": "gwZdn4oSB+ATQitVIAc/1oaeYje6bYZEE2P0jCK9b5EDAAAADAAAAABfj/+7cmF3AAAAABVX8CwXqz4nuL9RKX///w==",
            "rurl": "/storefront/ref=atv_pr_ww_swtch"
          }
        }
      },
      {
        "ageGroup": "CHILD",
        "avatarUrl": "https://m.media-amazon.com/images/G/02/CerberusPrimeVideo-FN38FSBD/kid-1.png",
        "id": "amzn1.actor.person.oid.A1AUL73F38UXD1",
        "isDefault": false,
        "isSelected": false,
        "name": "孩子",
        "switchLink": {
          "partialURL": "/profiles/switch/ref=atv_pr_ww_swtch",
          "query": {
            "pid": "amzn1.actor.person.oid.A1AUL73F38UXD1",
            "csrfToken": "g+uopgKAEkihTRTOQuNOGqJrU+2esfoue39IZvLrJUxbAAAADAAAAABfj/+7cmF3AAAAABVX8CwXqz4nuL9RKX///w==",
            "rurl": "/storefront/kids/ref=atv_pr_ww_swtch"
          }
        }
      }
    ],
    "showIntro": false,
  },
  "initArgs": {
    "step": "manage",
    "context": {
      "currentTerritory": "SG",
      "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
      "locale": "zh_CN",
      "identityContext": "72|Cg8KDUEzMVg5TTYwRTlUMUsSIgoNQTMxWDlNNjBFOVQxSxAAGAAiDUEzMVg5TTYwRTlUMUs=",
      "contingencies": null,
      "isTest": "0",
      "domain": "Fogg",
      "marketplaceID": "A15PK738MTQHSO",
      "customerID": "A31X9M60E9T1K",
      "sessionID": "355-2720383-5202749",
      "recordTerritory": "AU",
      "requestID": "V836YHWX432GAZSSK8M0",
      "geoToken": "EAEZrCyaphKvHqBSAlNHYgJBVWoCRkV6BiswODowMIIBAlNHiAEAkgECU0e4AY/2A8oCDkExNVBLNzM4TVRRSFNPpQMAAAAA",
      "trafficPolicies": null,
      "osLocale": "zh-CN,zh;q=0.9",
      "path": "/gp/video/profiles/list",
      "customerIPAddress": "Deleted",
      "originalURI": "/profiles/list",
      "isInternal": "0",
      "weblabOverrides": {},
      "queryParameters": {}
    },
    "realm": "JPAmazon",
  }
}

Liqianyu avatar Oct 21 '20 11:10 Liqianyu

I can guess see what this problem is, although it makes no sense. Maybe I can work around it somehow.

Varstahl avatar Oct 21 '20 14:10 Varstahl

Also had this problem when using Japanese characters for profile name

azumukupoe avatar Dec 16 '20 16:12 azumukupoe