Implement BLE/BTP (#191)
* Implement BLE/BTP
* formatting
* Address review feedback
* renamings
* Add first BtpSessionHandler tests
* Last rename
* fix changelog
* message re-assembly logic
* message reassembly error handling
* made sequence number corrections
* corrected sequence number logic
* resolved PR review comments - rename variables, update throw msgs
* resolved comments
* message segmentation
* resolved issues in message segmentation
* added logic for sendQueuesBtpFrames
* adding logic for ack handling
* removed server window and unused variables
* adds btp ack timeout
* resolved review comments
* adds timeout for one timer
* refactor timeout logic based on comments
* refactors time out handling
* addressed refactoring changes
* refactored code to add restart timer logic
* resolved comments and refactored code
* refactored segmentation logic
* updated segmentation logic
* added length method in data reader and refactored btpSessionHandler
* resolve comments and also tried updating segmentation logic
* changed printing logic place
* fix unit test cases, remove promise timeout
* Add updates for continuing msg bit and some unit test cases
* Refactorings and updates
* formatting
* fix tests
* Unit Tests for SessionHandler, Refactoring rounding off sequence number logic (#5)
* unit test cases for session handler
* refactor unit tests
* fix unit test case for timeout
* tests 255 and 0 sequence number - edge case
* refactored code logic for window size check
* update check window size method
* Enhance BTPCodec
* Make close async in several places
* Enhance ServerAddress to support types for udp and ble
* Close is now async
* Also return value for named handlers (was missing)
* tsconfig/package.json for BLE
* make sure to not duplicate timers
* Remove dummy NetworkCommissioningHandler
* Generalize BTPSessionHandler and refactorings
* Update/Refactor BLE peripheral classes
* Add BLE Central logic used by Controller
* Export ble also by node package
* remove also network commission handler from exports
* Add BLE support and refactorings for Controller
* Add BLE support and refactorings for Device
* Add BLE to Controller example
* Add BLE to Device example
* Add readme
* update package-lock
* formatting
* adjust testing and make sure all timers are ended
* fix testing
* Work in Review feedback
* make ble wifi details configurable via cli
* Tweaks for testing extensible cluster
* Cluster constant -> inline definitions
* Default storagenames use "." at the beginning (#216)
* Default storagenames use "." at the beginning as is the typical convention for process environment storage and configuration.
* Testing for ClusterFactory and related fixes
Fairly exhaustive testing for ClusterFactory. Fixed one for-sure bug and two
other things that might've been problematic.
* Improve line wrapping
Two small changes that affect a number of files:
First, do not place object entries on a single line if any entry has multiple
lines in it. The formatter does not approve this. Now format will not rewrite
any generated files
Second, more accurately assess line length when wrapping. This includes
measuring line suffix and removing spurious padding we previously added for
wrapping. Prevents past behavior of lines expanding just beyond 120
character-limit.
* Adjust Library to use the new generated Clusters and remove old (#229)
* Delete legacy cluster files
* Adjust to generated clusters
* Conditional types are optional
* Add "init" method also for FixedAttributes to set value before
* Uncomment all clusters we now have for device types
* Adjust to main branch
* finalize
* adjust test
* merge and last adjustments
* merge and last adjustments
* Readme
---------
Co-authored-by: Mahima Mandhana <mahimaxm@amazon.com>
Co-authored-by: Mahima Mandhana <136842984+mahimamandhanaa@users.noreply.github.com>
Co-authored-by: Greg Lauckhart <greg@lauckhart.com>