Skip to content

Make JetKVM controllable by Puppeteer/Playwright/Headless Chrome/Chromium #787

@rgl

Description

@rgl

A note for the community

Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request.

Disclaimer

  • I have read and understood the disclaimer.
  • I plan to implement the feature myself.

Subsystem

Keyboard

Feature description

I have a couple of use-cases, maybe these can be taken into consideration?

I would like to use Puppeteer to drive/test the JetKVM connected device using headless chrome/chromium. I'm trying to use the Puppeteer Keyboard class, more exactly, the Keyboard.type function, but it seems the keyboard layout is at play here, as its not working as expected, e.g., typing/pasting Aa|!"#$%&/()=?«»<>,;.:-_\zZ ends up being mangled/mistyped in the device.

I would like to have some way to call into the JetKVM JavaScript code. That is, Puppeteer allows us to inject JavaScript code into the page, but, how do we call into the JetKVM JavaScript code? E.g. How to call some JavaScript global function like, JetKvm.pasteText("Aa|!"#$%&/()=?«»<>,;.:-_\\zZ")?

I would like to have support for some kind of inline markup like the packer boot_command.

I would like to have an easier way to find elements/data on the JetKVM UI, so I can more reliably find thing like the current state of the USB (e.g. whether its Connected).

I have an initial attempt at controlling a JetKVM device using Puppeteer at https://github.com/rgl/jetkvm-puppeteer-test/tree/wip. I'm currently somewhat stuck at trying to type/paste/inject keyboard keys, and would appreciate any help :-)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions