Koen Kanters
a90ebce677
Change device options. #3181
2020-06-13 23:28:06 +02:00
Koen Kanters
d22e73ebb4
#3271 Allow to randomize network_key by settings 'network_key: GENERATE'
2020-04-21 21:58:43 +02:00
Koen Kanters
3ef7555ca2
Refactor
2020-04-05 00:05:05 +02:00
Koen Kanters
4fe23842cf
Don't allow non existing entities on availability_blacklist or availability_whitelist. #3191
2020-03-25 20:46:20 +01:00
Koen Kanters
a307747d8c
Fix typo.
2020-03-25 20:05:18 +01:00
Koen Kanters
5cd1af569e
Fix crash when removing device from group which has no devices in settings. #3185
2020-03-23 22:24:35 +01:00
Koen Kanters
a3b285d1ac
Don't allow MQTT wildcard (# or +) in friendly_name. #3175
2020-03-23 19:59:49 +01:00
Dustin Sallings
97a4b6b539
Add support for expiring retained messages. ( #3082 )
...
* Add support for expiring retained messages.
For most of my environmental monitoring use cases, I want the readings
retained so I can pick them up from clients at any time, but if the
sensor (or zigbee2mqtt) fails, I want the readings to go away so I can
tell the difference between a stale reading and a missing reading.
This is easily accomplished in MQTTv5 using the "message expiry
interval" property. To add that to zigbee2mqtt, I added a 'version'
option to the mqtt section so I can specify to connect with version 5
and added a 'retention' property to devices allowing me to specify how
long items should be retained.
e.g.
mqtt:
base_topic: site/zigbee2mqtt
server: 'mqtt://myserver'
user: zigbee
version: 5
serial:
port: /dev/ttyACM0
devices:
'0x00358d00022308da':
friendly_name: someroom
retain: true
retention: 900
* Also get from deviceOptions
* Update settings.js
* Update controller.js
Co-authored-by: Koen Kanters <koenkanters94@gmail.com>
2020-03-12 20:25:37 +01:00
Koen Kanters
4d54e5038b
Refuse to start when friendly_name ends with /DIGIT. #2645
2020-03-07 23:06:22 +01:00
Koen Kanters
9cc84feb67
Allow to rename groups through zigbee2mqtt/bridge/config/rename. https://github.com/Koenkk/zigbee2mqtt/issues/2991
2020-02-23 21:51:30 +01:00
Koen Kanters
d17eec5310
Don't allow postfix to be a friendly_name. #2486
2019-12-09 18:27:39 +01:00
Koen Kanters
fdcaaee955
Fix typo.
2019-11-11 17:45:11 +01:00
Koen Kanters
0b0a9bca4d
Update converters.
2019-11-10 19:53:37 +01:00
Koen Kanters
af770acd2d
Make retain a optional option and default it to false.
2019-11-06 20:30:33 +01:00
Jorge Schrauwen
5ad97325be
Fix missing retain on add_group, allow specifying of groupID ( #2266 )
...
* Accept json for add_group so a groupID can be provided, also set retain property on group creation
* Update util/settings tests for groupID and retain
* Update bridgeConfig tests for add_group with json
2019-11-04 17:59:00 +01:00
Koenkk
646cd34715
Support secret for network_key. https://github.com/Koenkk/zigbee2mqtt/issues/2209
2019-10-28 18:05:50 +01:00
Koen Kanters
78531a0878
Finish https://github.com/Koenkk/zigbee2mqtt/issues/2201 .
2019-10-25 19:17:47 +02:00
Koenkk
505be311a4
Allow to store MQTT credentials separate from configuration.yaml. https://github.com/Koenkk/zigbee2mqtt/issues/2201
2019-10-25 18:43:14 +02:00
Koen Kanters
732a97ba0c
Don’t write to configuration.yaml when it didn’t change. https://github.com/Koenkk/zigbee2mqtt/issues/2071
2019-10-03 20:06:31 +02:00
Koen Kanters
c8eb503ae7
Simplify group optimistic mode. https://github.com/Koenkk/zigbee2mqtt/issues/764
2019-09-29 14:35:05 +02:00
Koen Kanters
67f6ccc8a8
Don’t allow duplicate friendly_name. #1876
2019-09-27 22:56:59 +02:00
Koen Kanters
d4011fabc7
Implement group optimistic ‘group_devices’ mode. https://github.com/Koenkk/zigbee2mqtt/issues/764#issuecomment-534146878
2019-09-25 12:51:17 +02:00
Koen Kanters
c09f55873b
Add group optimistic feature. https://github.com/Koenkk/zigbee2mqtt/issues/764
2019-09-17 19:01:57 +02:00
Koen Kanters
e758443190
Fix tests.
2019-09-16 20:03:51 +02:00
Koen Kanters
21dadd631c
Don’t throw error when devices is null. https://github.com/Koenkk/zigbee2mqtt/issues/1973
2019-09-16 19:49:49 +02:00
Koen Kanters
d53e1330f5
Improve error message when reading invalid YAML file.
2019-09-11 21:42:44 +02:00
Koen Kanters
d83085ea7f
Zigbee-herdsman ( #1945 )
...
* Update zigbee-herdsman and zigbee-shepherd-converters.
* Force Aqara S2 Lock endvices (#1764 )
* Start on zigbee-herdsman controller refactor.
* More updates.
* Cleanup zapp.
* updates.
* Propagate adapter disconnected event.
* Updates.
* Initial refactor to zigbee-herdsman.
* Refactor deviceReceive to zigbee-herdsman.
* Rename
* Refactor deviceConfigure.
* Finish bridge config.
* Refactor availability.
* Active homeassistant extension and more refactors.
* Refactor groups.
* Enable soft reset.
* Activate group membership
* Start on tests.
* Enable reporting.
* Add more controller tests.
* Add more tests
* Fix linting error.
* Data en deviceReceive tests.
* Move to zigbee-herdsman-converters.
* More device publish tests.
* Cleanup dependencies.
* Bring device publish coverage to 100.
* Bring home assistant test coverage to 100.
* Device configure tests.
* Attempt to fix tests.
* Another attempt.
* Another one.
* Another one.
* Another.
* Add wait.
* Longer wait.
* Debug.
* Update dependencies.
* Another.
* Begin on availability tests.
* Improve availability tests.
* Complete deviceAvailability tests.
* Device bind tests.
* More tests.
* Begin networkmap refactors.
* start on networkmap tests.
* Network map tests.
* Add utils tests.
* Logger tests.
* Settings and logger tests.
* Ignore some stuff for coverage and add todos.
* Add remaining missing tests.
* Enforce 100% test coverage.
* Start on groups test and refactor entityPublish to resolveEntity
* Remove joinPathStorage, not used anymore as group information is stored into zigbee-herdsman database.
* Fix linting issues.
* Improve tests.
* Add groups.
* fix group membership.
* Group: log names.
* Convert MQTT message to string by default.
* Fix group name.
* Updates.
* Revert configuration.yaml.
* Add new line.
* Fixes.
* Updates.
* Fix tests.
* Ignore soft reset extension.
2019-09-09 19:48:09 +02:00
Koen Kanters
801e97143c
Fix adding groups with duplicate names. #764
2019-06-19 18:35:57 +02:00
Koen Kanters
82dc8437a1
Get rid of logging during test cases.
2019-06-10 00:01:48 +02:00
Koen Kanters
a54e256b40
Group configuration via configuration.yaml and group state ( #1464 )
...
Group configuration via configuration.yaml and group state.
2019-04-29 20:38:40 +02:00
qm3ster
a978b26001
Use toStrictEqual
for objects
...
Not sure why `jest-codemods` didn't do this.
Changed some primitives to use `toBe`.
2019-03-10 13:32:36 +01:00
qm3ster
84a5277d45
Replace sinon
with jest
builtins
2019-03-10 13:32:36 +01:00
qm3ster
acbab01b7e
Apply jest-codemods
...
`chai` ELIMINATED
2019-03-10 13:32:36 +01:00
qm3ster
3b1fae1452
Remove whitespace
2019-03-09 21:09:39 +01:00
qm3ster
cf2f10394a
Mock fs
in settings test
2019-03-09 21:09:39 +01:00
qm3ster
07765093be
Fix all typos of separate
2019-03-09 21:09:39 +01:00
Mihal Malostanidis
bb6c226d55
Test improvements ( #1207 )
...
* Add missing `zcl-id` dependency
* Improve devicePublish test
Now passes in both mocha and jest
Each test now waits for all publishes, such as readbacks,
and asserts their number.
Replaced `calledOnce` and such with numeric assertion,
for a more informative error message.
* Use sinon default sandbox
* Take assert out of chai
Improves clutter, but also `jest-codemods` also makes use of this.
* Replace proxyquire with simple cache delete
* Reduce shared mutable state in settings.test
2019-03-08 16:56:53 +01:00
Koen Kanters
516bd704c6
Allow devices and groups to be specified in separate file. https://github.com/Koenkk/zigbee2mqtt/issues/1148
2019-02-24 15:49:41 +01:00