0.1.1 • Published 5 years ago

hm-simulator v0.1.1

Weekly downloads
57
License
MIT
Repository
github
Last release
5 years ago

hm-simulator

NPM version Dependency Status Build Status XO code style License

Simulates (partly) a Homematic CCU

Installation

Prerequisites: Node.js >= 6.0

npm install -g hm-simulator

What for?

This can be used for automated tests of software connecting to a Homematic CCU

What does it do?

Warning: This is far away from a complete simulation and still work in progress Until now I'm only implementing what I needed for basic tests of hm2mqtt.js.

  • Simulated rfd, binrpc only, interface on port 2001
  • Simulated hmipserver, xmlrpc only, interface on port 2010

RPC methods implemented until now

incoming:

  • init
  • ping
  • system.listMethods
  • getParamsetDescription

outgoing:

  • listDevices
  • newDevices
  • deleteDevices
  • event
  • system.multicall

Scripting

In the behaviors directory are two example scripts:

  • virtual-button-press.js triggers a PRESS_SHORT on BidCoS-RF:1 every 5 seconds.
  • window-open-close.js opens and closes 0000D3C98C9233:1 every 30 seconds.

Todo

  • bugfixes...
  • extend script api
  • more behavior examples
  • more rfd devices
  • correct error responses to invalid methodCalls
  • incoming getParamset
  • MASTER, MAINTENANCE and LINK paramsets
  • service messages, incoming getServiceMessages
  • incoming putParamset
  • rega listener on port 8181, rega script mocking
  • ... many more... ;)

Contributing

Pull Request welcome! :-)

License

MIT Copyright (c) 2017 Sebastian Raff