What's Changed
This release is focused on **presence detection**. We can now detect the presence and absence of trackers devices like TILE, NUT, BlueCharm (and other models identified [here](https://decoder.theengs.io/devices/devices.html), the gateway will publish an offline message after tracker_timeout (120s per default) to set your controller to "Away" status.
Additionally, the Apple Watch, iPhone, and iPad can be used for presence detection using their IRK.
And of course numerous other enhancements detailed below, thanks DigiH and koenvervloesem !
New devices
|Devices|Model|Measurements|
|-|:-:|:-:|
| ClearGrass/Qingping |CGP23W|temperature, humidity, atmospheric pressure, battery|
| Aranet4 |CO₂ Monitor|temperature, humidity, pressure, carbon dioxide, battery|
| Switchbot|Curtain model 3|moving, position, light level, battery, calibration state|
New features
* prmac implementation by DigiH in https://github.com/theengs/gateway/pull/187
* Apple devices Identity Address and IRK instructions by DigiH in https://github.com/theengs/gateway/pull/190
* [DISC] HA discovery lock class added by DigiH in https://github.com/theengs/gateway/pull/191
* Add option to disable BLE by koenvervloesem in https://github.com/theengs/gateway/pull/196
* [DISC] device_tracker discovery by DigiH in https://github.com/theengs/gateway/pull/213
* [DISC] device tracker discovery value_template to rssi by DigiH in https://github.com/theengs/gateway/pull/215
* [DISC] Isolate "track" advanced property publishing by DigiH in https://github.com/theengs/gateway/pull/217
* [DISC] Timeout for discovered device trackers by DigiH in https://github.com/theengs/gateway/pull/219
Miscelleanous
* Process undecoded messages from MQTT the same way as from BLE by koenvervloesem in https://github.com/theengs/gateway/pull/192
* Show command-line options alphabetically by koenvervloesem in https://github.com/theengs/gateway/pull/195
* Show version in --help output by koenvervloesem in https://github.com/theengs/gateway/pull/198
* Update Ruff version and use ruff-format instead of black formatter by koenvervloesem in https://github.com/theengs/gateway/pull/199
* Fix undecoded servicedata by DigiH in https://github.com/theengs/gateway/pull/204
* Fix TypeError for None values in diagnostics by koenvervloesem in https://github.com/theengs/gateway/pull/206
* Don't crash when receiving JSON message without id by koenvervloesem in https://github.com/theengs/gateway/pull/223
* Apple devices only unlocked fix by DigiH in https://github.com/theengs/gateway/pull/221
Documentation
* [DOCS] Remove devices page as now generated by the decoder by 1technophile in https://github.com/theengs/gateway/pull/185
* [DOCS] pip upgrade addition by koenvervloesem in https://github.com/theengs/gateway/pull/194
* [DOCS] Passive scanning path clarification by DigiH in https://github.com/theengs/gateway/pull/200
* [DOC]S General documentation fixes, using Vale's Google style guide by koenvervloesem in https://github.com/theengs/gateway/pull/211
* [DOCS] Further documentation fixes by enabling Google style suggestions by koenvervloesem in https://github.com/theengs/gateway/pull/212
* [DOCS] Factorize configuration by 1technophile in https://github.com/theengs/gateway/pull/218
* [DOCS] Add IRK screenshot by 1technophile in https://github.com/theengs/gateway/pull/224
CI
* [CI] Run pre-commit on all files by koenvervloesem in https://github.com/theengs/gateway/pull/214
* [CI] Ignore Ruff rules conflicting with formatter by koenvervloesem in https://github.com/theengs/gateway/pull/209
* [CI] Run Vale in pre-commit to spellcheck documentation by koenvervloesem in https://github.com/theengs/gateway/pull/210
* [CI] Run checks also on Python 3.12 by koenvervloesem in https://github.com/theengs/gateway/pull/197
* [CI] Test build of Python package on all Python versions for every PR by koenvervloesem in https://github.com/theengs/gateway/pull/201
* [CI] Update Vale to 3.0.4 by koenvervloesem in https://github.com/theengs/gateway/pull/220
* [CI] Relax McCabe complexity limit to 15 by koenvervloesem in https://github.com/theengs/gateway/pull/222
**Full Changelog**: https://github.com/theengs/gateway/compare/v1.2.0...v1.3.0