Roku Pandora stopped working

I use the media_player.call_service to select the channel on a particular roku. I have input booleans set up go to pandora, plex, prime, etc. The logic is that:

  1. Toggle the input boolean to turn on pandora on a specific roku
  2. A callback is triggered that listens for the input boolean to go from off to on
  3. The callback calls the service:
   self.call_service("media_player/select_source", entity_id=roku_name, source="Pandora")

After the latest hass.io update to 0.97.2, everything but pandora still works fine (i.e, source=“Netflix”). When I select pandora, the roku goes to the pandora login screen for a few seconds, momentarily freezes, and then the roku returns to the home screen.

This happens on all of my roku’s.

I can start pandora directly from the roku with the roku remote, but not through appdarmon. So I’m thinking something must have changed in the automation portion in the latest upgrade maybe having something to do authorization (I skipped a couple upgrades - but I was current to 0.96.x).

Anyone have any thoughts on what the problem could be? I do get a lengthy error handling request error that I can post once I get to a computer and not my phone, if that would help.

I just returned home, and now am in front of a real computer. Whenever I try to start Pandora, with the call_service command, i get the following in the error log:

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/real_ip.py", line 37, in real_ip_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 69, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 228, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 124, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/api/__init__.py", line 355, in post
    domain, service, data, True, self.context(request)
  File "/usr/src/homeassistant/homeassistant/core.py", line 1235, in async_call
    await asyncio.shield(self._execute_service(handler, service_call))
  File "/usr/src/homeassistant/homeassistant/core.py", line 1260, in _execute_service
    await handler.func(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 210, in handle_service
    self._platforms.values(), func, call, service_name, required_features
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 334, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 356, in _handle_service_platform_call
    await getattr(entity, func)(**data)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/roku/media_player.py", line 220, in select_source
    channel.launch()
AttributeError: 'NoneType' object has no attribute 'launch'
Connection lost. Reconnecting…

Can anyone help me understand the error?

I’ve been scratching my head over this for a while until I stumbled on this thread. I am getting the same behavior, also with Pandora. This appears to have started about at the same time Roku made changes to their athentication system (related to on-device authentication I believe).

After 2 years, any solution to this? I have the same problem on a new Roku Express 4k. It only seems to be a problem with Pandora. Other channels on the Roku start fine from an HA automation. Pandora starts fine from the Roku remote (physical) but fails in both HA automations and on the HA integration.

No log entries I can find. I know where logs are but there are no relevant entries

roku maintainer. does the source selector of media player card work in ui? you might find that the actual app name is getting something appended to it that prevents it from being matched via the service call logic. You can find current app name and ID in the device sensors in recent versions, maybe try direct ID vs name.

The source selector works for everything I’ve tried in the ui except pandora. The behavior is the same in an automation or the ui. Roku goes to pandora and there is a long pause then it drops back to the home screen in roku. For other channels I’ve tried everything works. I’m certain passwords etc are correct.

As a followup, Roku contacted me and sent me a new Roku. It was because the old unit was end of life