Можно ли моделировать событие клавиатуры / мыши в NodeJS?

Представьте, что модуль NodeJS, при вызове с консоли, выводит некоторые вводные сообщения, а затем ждет ввода пользователя (нажмите enter или esc). Этот модуль уже имеет и делает все, что нам нужно, за исключением того, что – приглашение ожидания для пользователя. Поэтому мы задаемся вопросом (я лично очень новичок в NodeJS), если можно программно запустить консольный модуль и запустить на нем входное событие, чтобы он не дождался и сразу начал работу.

    Вы можете использовать RobotJS для этого.

    Пример кода:

    var robot = require("robotjs"); // Type user's password or something. robot.typeString("abc123"); 

    Поскольку Джейсон упомянул, что вы можете использовать RobotJS для симуляции ключевого слова, но есть несколько шагов, необходимых для правильной сборки robotJS для Windows paltform:

    1. Вам понадобятся инструменты для создания окон, поэтому запустите npm install --global windows-build-tools (потребуется некоторое время, так как это около 120 МБ)
    2. запустить npm install robotjs --save-dev
      Все готово!
      Если это для электронного приложения, то вам также потребуется ниже третьего шага:
    3. run npm rebuild --runtime=electron --target=1.7.9 --disturl=https://atom.io/download/atom-shell --abi=57

      (1.7.9 – моя electron --version а abi для моего соответствующего node --version версия 8.7, вы можете проверить версию abi для версии узла здесь [искать столбец NODE_MODULE_VERSION])

    библиотека узла-ключа-отправителя является альтернативой RobotJs, если вам просто нужно отправлять ключи в свою операционную систему. Это кросс-платформенный и очень маленький lib.

    Установите его с помощью npm install --save-dev node-key-sender .

    И отправьте «enter» на клавиатуру, используя:

     var ks = require('node-key-sender'); ks.sendKey('enter'); 

    Проверьте страницу документации: https://www.npmjs.com/package/node-key-sender .