I made an appdaemon app that does that. Let me tell you, it’s complicated. After creating it, I can tell you that there is no easy way do accomplish your request.
Here’s the appdeamon app, I haven’t added it to hacs yet, but it’s set up pretty much. Just no documentation yet.
and here’s my configuration for it at the moment for appdaemon:
anchors:
roku: &roku
activity: Roku
device: Roku Ultra
xbox: &xbox
activity: Xbox One
device: Microsoft Xbox One
ps4: &ps4
activity: PS4
device: Sony PS4
hac_living_room:
module: harmony_activity_controls
class: ActivityControls
remote: remote.living_room
activities:
- <<: *roku
- <<: *xbox
- <<: *ps4
commands:
- Rewind
- Play
- Pause
- command: FastForward
name: Forward
- DirectionUp
- DirectionLeft
- command: OK
name: Confirm
- DirectionRight
- DirectionDown
- Back
custom_events:
- event: HomeButton
icon: mdi:home
name: Home
activities:
- <<: *roku
command: Home
- <<: *xbox
command: Xbox
- <<: *ps4
command: PS
- event: MenuButton
icon: mdi:menu
name: Menu
activities:
- <<: *roku
command: 'Options*'
- <<: *xbox
command: Menu
icon: mdi:xbox-controller-menu
- <<: *ps4
command: Options
- event: LowerLeft
activities:
- <<: *roku
name: Search
command: Search
- <<: *xbox
name: View
command: View
icon: mdi:xbox-controller-view
- <<: *ps4
name: Info
command: Info
- event: LowerRight
activities:
- <<: *roku
name: Exit
command: Exit
- <<: *xbox
command: OneGuide
name: One Guide
icon: mdi:xbox
- <<: *ps4
name: Share
command: Share
- event: BottomButton
name: Confirm
activities:
- <<: *xbox
entity_picture: /local/images/xbox_a_transparent_2.png
color: rgba(100, 189, 54)
command: A
- <<: *ps4
entity_picture: /local/images/playstation_x.png
color: rgba(107, 139, 200)
command: Cross
- event: RightButton
name: Back
activities:
- <<: *xbox
entity_picture: /local/images/xbox_b_transparent_2.png
color: rgba(255, 24, 43)
command: B
- <<: *ps4
entity_picture: /local/images/playstation_circle.png
color: rgba(246, 69, 75)
command: Circle
- event: TopButton
name: Search
activities:
- <<: *xbox
entity_picture: /local/images/xbox_y_transparent_2.png
color: rgba(255, 185, 49)
command: 'Y'
- <<: *ps4
entity_picture: /local/images/playstation_triangle.png
color: rgba(43, 220, 150)
command: Triangle
- event: LeftButton
name: Backspace
activities:
- <<: *xbox
entity_picture: /local/images/xbox_x_transparent_2.png
color: rgba(0, 61, 142)
command: X
- <<: *ps4
entity_picture: /local/images/playstation_square.png
color: rgba(219, 142, 196)
command: Square
log_level: INFO
make_scripts: True
It creates a script file for you for each command…
remote_living_room_rewind:
sequence:
- event: remote_living_room
event_data: {'command': 'Rewind'}
remote_living_room_play:
sequence:
- event: remote_living_room
event_data: {'command': 'Play'}
remote_living_room_pause:
sequence:
- event: remote_living_room
event_data: {'command': 'Pause'}
remote_living_room_fastforward:
sequence:
- event: remote_living_room
event_data: {'command': 'FastForward'}
remote_living_room_directionup:
sequence:
- event: remote_living_room
event_data: {'command': 'DirectionUp'}
remote_living_room_directionleft:
sequence:
- event: remote_living_room
event_data: {'command': 'DirectionLeft'}
remote_living_room_ok:
sequence:
- event: remote_living_room
event_data: {'command': 'OK'}
remote_living_room_directionright:
sequence:
- event: remote_living_room
event_data: {'command': 'DirectionRight'}
remote_living_room_directiondown:
sequence:
- event: remote_living_room
event_data: {'command': 'DirectionDown'}
remote_living_room_back:
sequence:
- event: remote_living_room
event_data: {'command': 'Back'}
remote_living_room_homebutton:
sequence:
- event: remote_living_room
event_data: {'command': 'HomeButton'}
remote_living_room_menubutton:
sequence:
- event: remote_living_room
event_data: {'command': 'MenuButton'}
remote_living_room_lowerleft:
sequence:
- event: remote_living_room
event_data: {'command': 'LowerLeft'}
remote_living_room_lowerright:
sequence:
- event: remote_living_room
event_data: {'command': 'LowerRight'}
remote_living_room_bottombutton:
sequence:
- event: remote_living_room
event_data: {'command': 'BottomButton'}
remote_living_room_rightbutton:
sequence:
- event: remote_living_room
event_data: {'command': 'RightButton'}
remote_living_room_topbutton:
sequence:
- event: remote_living_room
event_data: {'command': 'TopButton'}
remote_living_room_leftbutton:
sequence:
- event: remote_living_room
event_data: {'command': 'LeftButton'}