Perhaps this can be upgraded to media_player - using the following homebridge as an example?
https://github.com/fantasytu/homebridge-xgimi-tv/tree/master
I used their format to send custom command which allowed me to launch apps.
Replace:
self._advance_command = str({"action": 20000, "controlCmd": {"data": "command_holder", "delayTime": 0, "mode": 5, "time": 0, "type": 0}, "msgid": "2"})
with
self._advance_command = str({"action": 20000, "controlCmd": {"data": "command_holder", "delayTime": 0, "mode": 7, "time": 0, "type": 1}, "msgid": "2"})
Example: launch Kodi app using package name
action: remote.send_command
data:
command: org.xbmc.kodi
target:
entity_id: remote.<remote_name>
All app package names can be found using “Package Names” app or via:
http://{{you_projector_ip}}:16741/data/data/com.xgimi.vcontrol/app_appDatas/list