Here is my problem:

Our TV is connected to a SBC running a GNOME/Wayland desktop, where we watch Jellyfin and sometimes Netflix/Hulu through Firefox.

I’d like to be able to trigger pause/play (space button) from Home Assistant, which is running on my home server.

What I am thinking of would be a server/daemon running on the TV computer that my home server would be able to send keys to via a CLI tool (in this case the space key). I am surprised to find that I cannot locate any program like this.

Can anyone provide any suggestions here?

Other ideas:

  • Jellyfin’s HA integration doesn’t let me pause/play from it, and that still doesn’t handle Hulu/Netflix.
  • I was able to get this working through SSH and there are tools like ydotool/wtype here that work, but I found waiting for SSH to be a bit slow to connect.

Update: I got frustrated and coded up a solution: https://gitlab.com/neilsimp1/kbsrv

  • Hailey312
    link
    fedilink
    3
    edit-2
    11 months ago

    Have you tried KDE Connect?

    I have only used it to control my TV computer from my phone, but I can’t see why it wouldn’t work between 2 computers.
    There is a ‘Multimedia control’ feature that allows pause/play/stop and volume control, the ‘Remote Input’ feature has a keyboard (so you should be able to trigger the space button) and if you want to do something more complicated you can set up and run commands.

      • Hailey312
        link
        fedilink
        111 months ago

        Good to hear. I set it up on desktop and the controls work, other than Virtual monitor.

        Have you had any luck getting Virtual monitor to run?
        I think I need to open some ports but if you’ve got it running, any tips you could offer would be great.

  • key
    link
    fedilink
    English
    211 months ago

    Of you’re fine with proprietary there’s Unified Remote.

  • Kalkaline
    link
    fedilink
    English
    111 months ago

    Where is the machine located compared to the viewing room? Could you not use a wireless keyboard?