Bug fixes:
- [Fix mutex deadlock](https://github.com/starkillerOG/reolink_aio/commit/a217c89320ba961d74270556c71f9a40a27349db)
- [if send enc_type is set to BC, always decode using BC](https://github.com/starkillerOG/reolink_aio/commit/869cd9f36e18419027c541fddc537ed8fad0779b)
- [Check decryption success, if AES fails, try Baichuan and proceed when push callback decrypt error](https://github.com/starkillerOG/reolink_aio/commit/5369b52d79fac8048ef8bcd21362db339b8741ed)
- [Do not attempt to decrypt empty body](https://github.com/starkillerOG/reolink_aio/commit/1a01d0b38439b41a37df518f9fe2a974d0bf5472)
- [Fix baichuan decryption when offset > 255](https://github.com/starkillerOG/reolink_aio/commit/cbfaec53498bd2d80c23e967da4bcef91990eab4)
Optimizations:
- [Improve Baichuan parsing exception logging further](https://github.com/starkillerOG/reolink_aio/commit/9a7837b93ffada4280f15a678558f89c0bd084c3)
- [Check for magic header while parsing multiple messages](https://github.com/starkillerOG/reolink_aio/commit/c409f0cae599f62749c7e487c001775171890a46)
- [Catch HTTP error code 429: Rate limit specifically](https://github.com/starkillerOG/reolink_aio/commit/a1e7664a1460b490f06df99d5e315f9414356b22)
- [Use dict for expected cmd_id and receive_future](https://github.com/starkillerOG/reolink_aio/commit/93faad27e79449468a25cbeddbbaece26223b127)
- [Improve AES decrypt Error logging](https://github.com/starkillerOG/reolink_aio/commit/c36c9c19632b54d62db940d5e58b9430f5f11647)
- [Do not reset _data_chunk](https://github.com/starkillerOG/reolink_aio/commit/fdcc6231204c581a0c22b91eda8e807e26ac5eed)
- [Make decrypt retry more robust](https://github.com/starkillerOG/reolink_aio/commit/eb2b4ff5cfd5e099a647d82514b903846683e416)
- [Bump down push events to debug log level](https://github.com/starkillerOG/reolink_aio/commit/83bd0329687e651e821343ec5d5a3434dd93439f)
**Full Changelog**: https://github.com/starkillerOG/reolink_aio/compare/0.10.4...0.10.5