Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

node-bacnet

BiancoRoyal4.2kMIT0.2.4

The BACnet protocol library written in pure JavaScript.

bacnet, fieldbus, building, automation, iot

readme

Platform Node Contrib BACnet® NodeJS_Version NPM download Build Status Coverage Status Gitpod Ready-to-Code

node-bacnet

node-bacnetLogo64

The BACnet® protocol library written in pure JavaScript.

BACnet® is a protocol to interact with building automation devices defined by ASHRAE.

Usage

Add node-bacnet to your project by using:

npm install --save node-bacnet

The API documentation is available under GitHub Page of Docs.

Features

The BACnet® standard defines a wide variety of services as part of the specification. While node-bacnet tries to be as complete as possible, following services are already supported at this point in time:

Service Execute Handle
Who Is yes yes
I Am yes¹ yes
Who Has yes¹ yes¹
I Have yes¹ yes¹
Time Sync yes yes
UTC Time Sync yes yes
Read Property yes yes¹
Read Property Multiple yes yes¹
Read Range yes¹ yes¹
Write Property yes yes¹
Write Property Multiple yes yes¹
Add List Element yes¹ yes¹
Remove List Element yes¹ yes¹
Create Object yes¹ yes¹
Delete Object yes¹ yes¹
Subscribe COV yes¹ yes¹
Confirmed COV Notification yes¹ yes¹
Subscribe Property yes¹ yes¹
Atomic Read File yes¹ yes¹
Atomic Write File yes¹ yes¹
Reinitialize Device yes yes¹
Device Communication Control yes yes¹
Get Alarm Summary yes¹ yes¹
Get Event Information yes¹ yes¹
Get Enrollment Summary yes¹ yes¹
Acknowledge Alarm yes¹ yes¹
Confirmed Event Notification yes¹ yes¹
Unconfirmed Event Notification yes¹ yes¹
Unconfirmed Private Transfer yes¹ yes¹
Confirmed Private Transfer yes¹ yes¹
Register Foreign Device no yes¹
Distribute Broadcast to Network no yes¹

¹ Support implemented as Beta (untested, undocumented, breaking interface)

Contributing

This package is based on the work of Fabio Huser and is now community driven. The group is searching for active collaborators to finish that library to become a good piece of Open Source. Implementing and maintaining a protocol stack is a lot of work, therefore any help is appreciated, from creating issues, to contributing documentation, fixing issues, sending pull requests and adding new features.

Please follow the Contribution Guide when submitting any changes. Ask the active NPM publishers if you need some advice to start your contribution!

License

The MIT License

Copyright (c) 2018-2020 Community Driven

Copyright (c) 2017-2019 Fabio Huser

Note: This is not an official product of the BACnet Advocacy Group. BACnet® is a registered trademark of American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE).

changelog

0.2.4 (2020-06-02)

  • chore: changelog (fb4618a)
  • chore(deploy): missing files and pre-publish (f0457c6)
  • chore(release): 0.2.3 (a708b16)
  • chore(release): 0.2.4 (dcb279e)
  • chore(release): changelog (e0fe249)
  • test: example wago test updates (6bb53a3)
  • docs: travis docs update on master tags (7bddd51)

0.2.2 (2020-06-02)

  • chore: release docs just with master (979e265)
  • chore(release): 0.2.2 (caec31b)
  • test: read the most supported properties (12b68f0)
  • test(coverage): hold coverage data from docker (cdefbf9)
  • test(coverage): new traivs instructions (586c284)
  • fix(examples) fix example scipts (2dfe509)
  • docs: only pages on master (4520417)

0.2.1 (2020-06-01)

  • chore: remove feature test files (c0bc963)
  • chore: update CoC (d8e683e)
  • chore(release): 0.2.0-beta.1 (a1164d4)
  • chore(release): 0.2.1 (420f648)
  • test: read on WAGO 750-830 (5d27395)
  • test(asn1): refactor and testing with coveralls (42c9c6b)
  • test(docker): fix codacy problems (570a465)
  • test(lint): lint with eslint instead of jscs #24 (011c3e1), closes #24
  • test(wago): example (3a22498)
  • refactor(enum): #25 no plural in enums (d9aa494), closes #25
  • refactor(test): with codacy (91bff58)
  • fix(enum): reset to standard lib enum names (587fc4e)
  • fix(example): typo enums (c9c51d7)
  • fix(publish): missing run on coverage step (ba121df)

0.1.2-beta.3 (2020-05-31)

  • chore: changelog (3c082f7)
  • chore: next to release a next on npm (70549ab)
  • chore(lint): create eslint from jscs (0ec3735)
  • chore(release): 0.1.2-beta.3 (1c74ff2)
  • feat(tests) Add test for writePropertyMultiple - but bacnet stack is not supporting it :-( (b717d5c)
  • fix(asn1) make sure code do not break when valueLength is 0 ( had such a case while testing writePro (55f9ff4)
  • fix(client) Make sure that arrayIndex === 0 for readProperty is respected and not set to "ALL" (51bb721)
  • fix(general) Address code style comments (7ac9262)
  • fix(general) Fix code style (b7912d5)
  • fix(general) Fix linter error (be492e1)
  • fix(transport) Make sure the reuseAddr flag is also used (101847a)
  • feat(examples): add enhanced example scripts (54bf2c9)
  • fix(client): make sure the header is set to handle segment acks; fixes segmentation (3b5a5cf)
  • fix(transfort): do not print infos to console directly (164a54c)

0.1.2-beta.2 (2020-05-23)

  • chore: badges and Logo (f9adb45)
  • chore: badges and Logo (0242d0f)
  • chore: changelog rewrite and no commit lint anymore (227e2af)
  • chore: readme (e9c632f)
  • chore: Update CONTRIBUTING.md (327f1a9)
  • chore: Update LICENSE.md (59ee1ec)
  • chore(release): 0.1.2-beta.2 (d29b978)
  • chore(release): update changelog (3aba95e)
  • chore(release): update version (abcea03)
  • chore(release): update version (9f83e2a)
  • docs: copy images to docs (7533ce9)
  • docs: readme update (47b2042)
  • test: debug in tests and contribution docs update (b8f7b3f)
  • test: pre release testing (18746d9)
  • test: trace callback (6c6e63c)
  • test: unknown IP for testing integration with TIMEOUT (fc709de)
  • test(ci): just some branches to build (a195f8f)
  • test(compliance): add some more compliance tests (eb137cb)
  • test(compliance): output debug log when running tests (0b6ef0f)
  • test(coverage): fix for coverage (c3364b6)
  • test(debug): travis compliance difference (21a80c5)
  • test(scripts): more debug on test (cecb8ca)
  • test(travis): build with docker for compliance (c2f3171)
  • test(travis): docker is in the script (2e7b308)
  • test(travis): more tracing on ci (7ae680f)
  • fix: node lts in all stages on travis (ce84337)
  • fix: skip localhost requests (54d4b27)
  • fix(build): travis ipv4 with docker (af67446)
  • fix(bvlc): all constants on file level should be written uppercase (54e52f5)
  • fix(client): correct the whoIs parameters (de5f955)
  • fix(client): correctly check for event listeners for incoming service requests and events (c217c34)
  • fix(client): correctly send unicast if an IP is provided as string as receiver, fixes https://github (d25254c)
  • fix(npdu): all constants on file level should be written uppercase (39b1b3a)
  • fix(test): coverage folder (4a2e7ce)
  • fix(transport): all constants on file level should be written uppercase (e39c916)
  • chore:Update CONTRIBUTING.md (dbb8122)
  • Update CONTRIBUTING.md (2cb25be)
  • Update CONTRIBUTING.md (af20c0c)
  • Update LICENSE.md (08c59f4)
  • feat(client): add a client "listening" event which is fired once the UDP server is listening for mes (d860966)
  • feat(client): add some more debug messages (7593d2a)
  • feat(client): also provide information like erroClass, errorCode and abortReason in the returned err (b5a2490)
  • feat(client): structure debug logging into "client", "transport" and "trace" scopes to have more con (18717f6)
  • feat(examples): add first example scripts (7888740)
  • feat(transport): remember last sent messages to detect on broadcast cases if we receive our own mess (0fd4f2b)
  • feat(transport): structure debug logging into "client", "transport" and "trace" scopes to have more (ada712e)
  • deps(package): update package deps (396e538)
  • deps(package): update package deps (d7b78ab)

BREAKING CHANGE

  • Only the new options-object style is supported now to provide lower and upper deviceId Limits!

0.1.1-beta.1 (2020-05-18)

  • chore: docker compliance tests via docker from biancoroyal image (3fa63ce)
  • chore: docker compose calls via npm (107d29b)
  • chore: docker compose update travis (88dca0f)
  • chore: hint for using develop branch instead of master (ca3cc4d)
  • chore: no yarn (94bff0c)
  • chore: nvm link for contribution (44ac65a)
  • chore: set all for new package name release node-bacnet (e5bf557)
  • chore: travis build lts (4c34907)
  • test: docker compliance (9b6ced4)
  • fix: docker compose build (11e7602)
  • refactor: clean code from copy and paste errors, but there is more (0eda794)
  • docs: new site to actual docs because of the dead main repo (e212ae9)

0.0.1-beta.23 (2020-05-17)

  • chore: development info (2d0379f)
  • chore: more development scripts to automate work (4d0c741)
  • chore(deps): bump handlebars from 4.1.0 to 4.5.3 (3d42278)
  • chore(release): 0.0.1-beta.23 (01cbbdd)
  • feat: add cov notification methods (a12bb30)

0.0.1-beta.22 (2019-09-02)

  • fix: package settings for a cleaner deploy (0979b27)
  • fix: whois compliance test with weather server (413698f)
  • fix(apdu): rename wrongly named adpu modules and files to apdu (f4ab0e3)
  • fix(asn1): correct encoding of object-types > 512 (3103ad5), closes #122
  • fix(asn1): correct error object structure (e3647da)
  • fix(client): Address PR feedback (9561259)
  • fix(client): correct deviceCommunicationControl example (955211b)
  • fix(client): Default to a hop count of 255 rather than 0 (f1133b6)
  • fix(client): Make confirmedCOV function use sendBvlc (00557be)
  • fix(client): Respond to message errors as unicast not broadcast (e439f54)
  • fix(service): correct atomicWriteFile service functionality (8a28088)
  • fix(services): correct readRangeAcknowledge implementation (52c6d02)
  • fix(tests): Update property name (b125eae)
  • fix(transport): Correctly handle messages from non-standard BACnet port numbers (7b6c618)
  • chore: bump copyright year to 2018 (46369c4)
  • chore: clean up package deploy (a95c1b0)
  • chore: document client.errorResponse (c8f47f0)
  • chore: pull request changes (488c7d5)
  • chore: README update (7e7c682)
  • chore: update libs (54071e0)
  • chore(github): add GitHub PR and issue templates (7879d94)
  • chore(license): align copyright claim with readme (b3ec4a3)
  • chore(npm): bump all dependencies to latest version (3931831)
  • chore(npm): bump all dependencies to latest version (5983acf)
  • chore(npm): bump all NPM dependencies to latest version (9b5cfaf)
  • chore(nyc): switch from istanbul to nyc for coverage reporting (d4af9ad), closes #129
  • chore(tarvis): split-up build and deployment stages (10ac688)
  • chore(travis): only deploy pages on tag builds (2d0c368)
  • test: fixing integration tests (46593e2)
  • test: start fixing compliance test whoIs (7f3eb0c)
  • test(compliance): add Docker test setup using C++ bacnet-stack (8161410)
  • test(services): implement readPropertyMultiple error test case (088d176)
  • ** Update URL to point at fork (0a82263)
  • Adding sub device addressing for read/write/whois. Segmentation still not supported. (0bd0803)
  • fix for writeProperty fail (29e0e09)
  • Fixing https://github.com/fh1ch/node-bacstack/issues/122 (4647891)
  • Fixing unicast vs broadcast (d66e56e)
  • new version to publish on npm (5880e3b)
  • Update for sadr (643b1ea)
  • Update for snet in whois (bb64e63)
  • Update to force multicast on whois (568d83e)
  • Updating for personal package release (89e57b0)
  • Updating for symmetry (92f0660)
  • Updating package name (df11d36)
  • Updating package version (ef831e1)
  • Version 20 (320a81c)
  • refactor: eliminate PDU_TYPE prefix in PDU_TYPES (657ea2e)
  • refactor: rework whole project to utilize ES6 (9415810)
  • refactor: separate flags from PduTypes enumeration (3aef94f)
  • refactor(asn1): drop unused support functions (3e549d2)
  • refactor(client): Add/edit some messages to assist with debugging (b2048f3)
  • refactor(client): Remove 'broadcast' from naming of iAm and iHave functions (e5a6163)
  • refactor(enum): align enum with ASHRE 135-2016 standard (abdbc8f)
  • refactor(npdu): reduce duplicate src/dest en/decodings (20e3dd4)
  • refactor(services): restructure service function setup (f28952a)
  • refactor(services): split-up services into individual files (707d464)
  • refactor(unit): drop bacnet- unit-test prefix (b539802)
  • refactor(unit): split service unit test into individual files (b568b38)
  • feat(client): add confirmedCOVNotification() for pushing changes to subscribers (11259b4)
  • feat(client): Add helper function for constructing a bit string (3b60b36)
  • feat(client): add support for interfacing with, and acting as, a BBMD device (4e0288c)
  • feat(client): implement missing un/confirmed event handler (070d407)
  • feat(services): implement EventEnrollmentSummary service (fc40313)
  • feature(client): Add helper function to convert enum into string (aeaa690)
  • docs(client): add description to event inline documentation (0e810d5)
  • docs(client): add whoIs, timeSync, timeSyncUTC inline documentation (4ed6d06)
  • docs(client): correct error event inline documentation (cb53da9)
  • docs(client): tag changed to type as it is used in bacappEncodeApplicationData (f72bec6)
  • docs(code-of-conduct): add Code of Conduct (6229a2b)
  • docs(contributing): factor out contribution-guidelines (417b5ce)
  • docs(faq): add frequently asked questions file (ae494fd)
  • docs(readme): add ASHRE copyright disclaimer (7df8cc3)
  • docs(readme): add docs links to feature list (453cd92)
  • docs(readme): bump copyright year to 2019 (bb4749b)
  • docs(readme): drop prototype / early development warning (ca36f19)

BREAKING CHANGE

  • addresses are no longer strings but are now objects, so that they can contain both the target IP and the remote node behind a BBMD
  • The adpuTimeout constructor parameter has been renamed to apduTimeout. See docs.
  • The maxAdpu callback parameter inside the iAm event has been renamed to maxApdu. See docs.
  • The optional input parameter type MaxApdu has been renamed to MaxApduLengthAccepted and has renamed values. See documentation.
  • The optional input parameter type MaxSegments has been renamed to MaxSegmentsAccepted and has renamed values. See documentation.
  • The values of the input parameter type ApplicationTags has changed by dropping it's BACNET_APPLICATION_TAG_* prefix. See documentation.
  • The values of the input parameter type ReinitializedStates has changed by dropping it's BACNET_REINIT_* prefix. See documentation.
  • whoIs and other functions now require a destination address, but it can be null to broadcast as before

0.0.1-beta.13 (2017-12-24)

  • release version 0.0.1-beta.13 (229095c)
  • refactor: omit bacnet- file prefix for source-code (7912339)
  • refactor: rework and align naming of various API parameters (2de1a99)
  • refactor(bacnet-client): implement options parameter to client functions (12f27ef)
  • refactor(bacnet-client): split-up UTC and default time-sync (10a9e24)
  • refactor(bacnet-enum): omit Bacnet prefix for enumerators (298edf1)
  • refactor(client): combine type and instance parameter to obejctId (95eba2a)
  • feat(bacnet-client): implement alarming and eventing (fbf120c)
  • fix(bacnet-client): use decodeCOVNotify for COV handling (967f154), closes #69
  • fix(bacnet-node-type): correct enum according to BACnet spec (3c271fc)
  • chore(travis): implement linting for commit message (6d6ff69)
  • docs(readme): add full BACNET function list (244cbf1)

BREAKING CHANGE

  • Bacnet prefix for all enumerators has been dropped
  • isUTC parameter has been omitted and was replaced by the timeSyncUTC function
  • objectIdentifier renamed to objectId
  • objectIdentifier renamed to objectId
  • objectType and objectInstance parameters for all functions have been replaced by a single obejctId parameter, expecting an object with type and instance attribute.
  • objId renamed to objectId
  • objName renamed to objectName
  • propertyArrayIndex renamed to index
  • propertyIdentifier renamed to propertyId
  • propertyReferences renamed to properties
  • Recipient.adr renamed to recipient.address
  • Recipient.net renamed to recipient.network
  • subscriptionProcessId renamed to subscriptionProcessIdentifier
  • valueList renamed to values
  • drop of len parameter for properties
  • various function parameters changed. Adapt according latest documentation.

0.0.1-beta.12 (2017-12-05)

  • release version 0.0.1-beta.12 (c1d9bcf)
  • test(bacnet-services): cover application tag null cases (2235578)
  • refactor(bacnet-asn1): factor-out and simplify application null tags (fd04487)
  • fix(bacnet-asn1): correct behaviour for releasing priority / writing of null (d6c893b), closes #65

0.0.1-beta.11 (2017-10-08)

  • release version 0.0.1-beta.11 (5bb917d)
  • test(integration): adapt integration tests to latest chai version (a6ffa63)
  • chore(npm): bump all dependency versions to latest ones (5c49491)
  • feat(bacnet-asn1): implement all BACNET string encodings (14699e2)

0.0.1-beta.10 (2017-09-19)

  • release version 0.0.1-beta.10 (304f760)
  • feat: implemented more BACNET functions (2721232)
  • feat(bacnet-client): implement handling of confirmed functions (3e29ab0)
  • feat(bacnet-service): implement decoding functionality for COV and CreateObject (635e419)
  • feat(encoding): add full read/write support for ISO 8859-1 charset (e50b005)
  • refactor(bacnet-asn1): factor out buffer initialization and integer length detection (ccfe925)
  • refactor(bacnet-asn1): rename tag parameter to type (35a46ce)
  • refactor(bacnet-client): correct various code-climate issues (2d4f065)
  • refactor(index): make index function mapping obsolete (9d09c82)
  • refactor(index): rework iAm event to pass single object (596c142)
  • refactor(test): fix codeclimate findings in unit and integration tests (5494edf)
  • chore(codeclimate): add sources to codeclimate rating (c862c09)
  • chore(codeclimate): disable duplication engine due to false-positives (6fc5fa7)
  • chore(npm): bump debug version to 3.0.0 (4d7d4de)
  • chore(npm): enable linting for tests as well (b6d886a)
  • docs(readme): fix codeclimate markdown linter findings (96e99d4)

BREAKING CHANGE

  • rename enum BacnetCharacterStringEncodings value CHARACTER_ISO8859 to CHARACTER_ISO8859_1 which conforms with the BACnet specification.
  • requires renaming the tag parameter for all write commands to type
  • the iAm event no longer passes multiple parameters but a single nested object

0.0.1-beta.9 (2017-07-12)

  • release version 0.0.1-beta.9 (0ce7538)
  • refactor: use correct JS object instantiation (a1df9d7)
  • refactor: use small-case for Tag and Value parameters (ea614da)
  • refactor(bacnet-asn1): drop redundant implementation of decodeTagNumber function (ac363b7)
  • refactor(bacnet-asn1): rework all ASN1 function names to adhere the styleguide (b31bc00)
  • refactor(bacnet-asn1): rework all ASN1 variable names to adhere the styleguide (ef92244)
  • refactor(bacnet-client): rework all BACNET client variable names to adhere the styleguide (b0103f7)
  • refactor(bacnet-npdu): rework all NPDU function names to adhere the styleguide (c1171dd)
  • refactor(bacnet-services): rework all BACNET service function names to adhere the styleguide (435a773)
  • refactor(index): move enum expose from instantiated object to root level (47890ec)
  • docs(index): add enum references to inline code documentation (871ee7f)
  • docs(index): corrected spell mistakes in code documentation (fa4c7fa)
  • docs(index): use correct function call in inline-code example (cc02211)
  • docs(readme): add supported BACNET services to README.md (2d8116a)
  • chore(jscs): drop capital-constructor ruleset (0b751c1)
  • chore(jscs): enforcing camel-case identifier via linter (1bef480)
  • feat: implement device-communication-control (04a38a8)
  • feat: implement reinitialize-device (1283cc3)
  • feat: implement time-sync (9980a4d)
  • feat: implement write-property-multiple (5f9f7a0)
  • feat(bacnet-client): expose BACNET errors and aborts to user (8cda7de)
  • feat(bacnet-client): expose underlying transport errors to user (7d547be)
  • feat(bacnet-client): implement close function for BACstack and underlying UDP socket (4be06bd)
  • feat(bacnet-services): implement missing BACNET service encodings (db6ac7f)
  • feat(bacnet-services): implement writePropertyMultiple service (ea9332c)
  • feat(bacnet-transport): allow reuse of network interface when using bacstack (0fb216c)
  • fix(ba-enums): make sure the exported enums are not overridden (8369cc8)
  • fix(bacnet-client): correct error message format for BACNET aborts and errors (6533e3f)
  • fix(string-decode): add decoding support for ISO 8859-1 (a224928)

BREAKING CHANGE

  • Tag and Value parameters for writeProperty and writePropertyMultiple have to be adapted to small-case
  • enumerations are no longer accessible via BACStack client instance and have been moved to the module level (require("bacstack").enum;).

0.0.1-beta.8 (2017-06-19)

  • release version 0.0.1-beta.8 (8126703)
  • test(bacnet-services): add write-property unit-test coverage (7a8ca7f)
  • feat(bacnet-client): implement additional unsupported services (d82fefe)
  • feat(bacnet-client): rework unconfirmed services to utilize even emitter (b5b8d78)
  • fix(bacnet-client): ensure invokeId range of 0-255 (c195331)

0.0.1-beta.7 (2017-06-11)

  • release version 0.0.1-beta.7 (c53053c)
  • fix(bacnet-services): correct all invalid no-array and no-priority checks (f0cb5bd), closes #20

0.0.1-beta.6 (2017-06-04)

  • refactor(bacnet-client,bacnet-transport): improve code-style and enhance readability (9401006)
  • release version 0.0.1-beta.6 (e6cd8e6)
  • fix(bacnet-asn1): add guard to prevent endless loops (63d7d8f)
  • fix(bacnet-asn1): align error handling to prevent dead-loop (3feaaba)
  • fix(bacnet-asn1): correct ASN1 date and time encodings (486153c)
  • fix(bacnet-asn1): correct bit-string encoding and decoding (14cda6d)
  • fix(bacnet-asn1): correct generic blob decoding context implementation (63eacc6)
  • fix(bacnet-asn1): correct octet-string encoding and decoding (aee51a5)
  • fix(bacnet-asn1): correct variable initialization for datetime decoding (3bc1591)
  • fix(bacnet-client): correctly handle invalid encoding cases (347b0ed)
  • fix(bacnet-client): remove callback from store if already invoked (16e4483)
  • fix(bacnet-services): correct string and tag comparison (0302fe0)
  • feat: add JSDoc inline documentation and gh-page publishing (44f88be)
  • feat(bacnet-asn1): implement additional ASN1 base encoding functions (2d6276e)
  • feat(bacnet-asn1): implement read-access-specification, cov-subscription, calendar decoding function (b015f62)
  • feat(bacnet-services.spec): implement test coverage for cov-subscription and read-access-specificati (6665a7c)
  • feat(bacnet-services): implemented various new BACNET service encodings (d891305)
  • refactor(bacnet-asn1): expose various ASN1 functions (6b8d6c9)
  • refactor(bacnet-enum): align NPDU control names (d483fc5)
  • refactor(bacnet-enum): replace undefined values with real ones (447cc96)
  • refactor(decode_unsigned): simplify decode_unsigned function by consolidating ranges (62b04f9)
  • refactor(encodeSigned): simplify encodeSigned function by consolidating ranges (780dbb3)
  • refactor(encodeUnsigned): simplify encodeUnsigned function by consolidating ranges (2ad10c4)
  • test: add additional unit-test coverage cases (85e9b4f)
  • test(bacnet-services): add initial test coverage for BACNET service encodings (a2c34de)
  • test(read-property-multiple): add missing assertions for bit-string type properties (d5e94ee)
  • chore(jscsrc): allow longer code-lines until refactoring is trough (a3227c3)

0.0.1-beta.5 (2017-05-08)

  • release version 0.0.1-beta.5 (c7eccb1)
  • fix(bacnet-asn1): drop redundant boolean length accumulation (c9622d6)
  • fix(bacnet-asn1): properly handle boolean decoding with length 0 (31b7a28)
  • fix(bacnet-client): start segmentation with correct sequence number 0 (cbc3076)
  • feat(bacnet-asn1): add decode support for context encoded properties (a82fb58)
  • feat(bacnet-client): add support for custom transports (8a6a64e)
  • feat(bacnet-transport): use actual max payload size to prevent segmentation issues (2a1a887)
  • test(read-property-multiple): add integration tests using real recorded data (320366a)
  • refactor(integration): rework integration test utils (571a191)

0.0.1-beta.4 (2017-05-04)

  • release version 0.0.1-beta.4 (f10da21)
  • feat(bacnet-asn1): expose property value type (b6ca82b)
  • fix(bacnet-client): re-enable who-is handler (ae1d710)

BREAKING CHANGE

  • property values changed from single value array ([12]) to array of object [{value: 12, type: 3}]

0.0.1-beta.3 (2017-04-14)

  • release version 0.0.1-beta.3 (2e06b15)
  • chore(jshint): remove latedef rule to prevent false-positive results on tail-recursive functions (afec227)
  • chore(travis): add integration tests to Travis-CI build (5cb3f86)
  • chore(travis): remove Node.js 0.12 Travis-CI build (f92911a)
  • test: create initial unit-test setup including coverage (6123189)
  • test(integration): create basic integration tests setup (5c37ed8)
  • refactor(jscs): fix all JSCS linting errors and adapted JSCS rules (ee9da58)
  • fix: correct various JSHint linter findings (ee1b2a5)
  • fix(bacnet-asn1): implement missing stubbed functions (a49b103), closes #3
  • fix(bacnet-client): prevent redundant increment of invoke counter (a59b023), closes #2

0.0.1-beta.2 (2017-04-02)

  • release version 0.0.1-beta.2 (2010138)
  • fix(bacnet-client): add missing callback next to writeProperty function (a0cfa37)
  • fix(bacnet-client): add missing callback definition to readProperty function (ba16839)
  • fix(bacnet-transport): enable broadcast support in UDP socket (b6c49c7)
  • docs(readme): adapt writeProperty documentation to actual implementation (8d18cf2)

0.0.1-beta.1 (2017-02-26)

  • release version 0.0.1-beta.1 (651992b)
  • docs(readme): add additional badges for npmjs, codeclimate and coverals to readme (58c1683)
  • docs(readme): rework readme usage structure and add readPropertyMultiple function (d99cd9d)
  • refactor(client): rework client interface and adapt to documentation (05294dd)
  • feat: add configuration possibility to bacstack (6d3c15b)
  • feat(asn1): implement octet-string decoding (87348de)
  • feat(client): implement default segmentation handling (58a53e3)

0.0.1-beta.0 (2017-02-23)

  • release version 0.0.1-beta.0 (03b829b)
  • chore: rename NPM package to bacstack (9370d1f)
  • fix: fix various syntax issues (3259856)
  • docs(readme): add Travis-CI and David-DM badges (9baf051)
  • feat: create initial implementation (1c4f139)
  • feat: create initial project structure (4b2c8c0)