Skip to content

Simulates (partly) a Homematic CCU

Notifications You must be signed in to change notification settings

hobbyquaker/hm-simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Releases

No releases published

Packages

No packages published