Appearance
Introduction
resol-vbus-core
is a set of TypeScript / ECMAScript libraries for processing RESOL VBus data.
Common Features
- Written in TypeScript, compiled down to ECMAScript ES2020 code
- High test coverage
- Open source under MIT license
Libraries
resol-vbus-core
Links: Source Code • NPM
This is the foundational library of the set. It provides the following features:
- Provide classes for the three major VBus version data primitives: Version 1 Packets, Version 2 Datagrams and Version 3 Telegrams
- Support decoding and encoding those data primitives from and to their on-the-wire "live" representation (according to the VBus Protocol Specification)
- Provide a "live" transceiver class that combines a "live" decoder and encoder to issue commands to a VBus device and wait for the response
- Support decoding and encoding VBus data primitives from and to their storable "recorded" representation (according to VBus Recording File Format Specification)
- Support decoding a VBus Specification File (VSF) for accessing the controller-dependent Version 1 Packet payload
- Is runtime-agnostic to work in any ECMAScript ES2020 execution environment (including browsers, Node.js, Deno, etc.)
- Is I/O-agnostic (consumes and emits
Uint8Array
s leaving the actual I/O to implementors) - Has zero runtime dependencies
resol-vbus-core-vsf
Links: Source Code • NPM
This addon library includes the latest version of the VBus Specification File.
Since the VSF is quite large and not needed in every application it is packaged as a seperate library so users can opt-in to use it.
resol-vbus-core-nodejs
Links: Source Code • NPM
This library contains code that requires the Node.js runtime to work. It provides the following features:
- Discover LAN-enabled RESOL devices using the proprietary UDP-based discovery mechanism
- Provides a "live" transceiver implementation that supports the VBus-over-TCP handshake over IPv4/IPv6 sockets
resol-vbus-core-script
Links: Source Code • NPM
This library supports scripting to process RESOL VBus data. It provides the following features:
- Defines interfaces that can be used in custom scripts to process RESOL VBus data
- Provides utility functions to parse scripts written in TypeScript to run in ES2020 environments
Applications
resol-vbus-core-toolbox
Links: Source Code
A script utility connecting to one or more RESOL VBus data sources and running custom scripts to interact with those connections.
Legal Notices
RESOL, VBus, VBus.net and others are trademarks or registered trademarks of RESOL - Elektronische Regelungen GmbH.
All other trademarks are the property of their respective owners.
License
The MIT License (MIT)
Copyright (c) 2013-present, Daniel Wippermann.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.