What's Changed
- v3.2.0: new mobile API, dynamic sub-sensors, clean data by @claesmathias in #70
Some sensor names/attributes may have been changed with these larger changes. Please check readme for latest overview.
New Contributors
- @claesmathias made their first contribution in #70
Full Changelog: 3.0.0...3.2.0
Summary
- New mobile API — switches from the deprecated
/mobile-service/v3/mobilesubscriptionsendpoint to the same API the Telenet web app uses:/customer-web-billing-mobile-usage/v1/mobile-lines/{msisdn}/usage. Eliminates Cloudflare 429 errors; returns consumed/remaining/total/% directly. isDataOnlyflag — read from the line selector API instead of being inferred from voice data presence. Data-only SIMs correctly show no voice entities.- Voice & SMS — parsed from
breakdown.tiles[](category CALL/SMS);voice_used_minutes,voice_unlimited,voice_max_minutesattributes added. - Dynamic sub-sensors — 5 additional HA entities auto-created per SIM (no
configuration.yamlneeded): days left, max data GB, usage %, voice used, last update. ComponentData._mobile_parsedcache — parsed values stored after each update; sub-sensors read from cache without extra API calls.- Entity names — removed "Telemeter"; product label (Unlimited, Data SIM Unlimited, Turbo) included. Entity IDs unchanged.
- Internet sensor —
peak_usage_gb,offpeak_usage_gb,total_downloaded_gb,last_update_formatted,period_next_startadded. FUP counter usesproductUsage.totalUsage.units(off-peak counts 0% towards limit). - Announcements sensor — surfaces Telenet inbox unread count and messages.
- Bug fixes —
callTelenetUnboundLocalErrorwhen request raises before response is set;response is not Noneguard in all retry methods. - Live tests —
tests/test_live_api.pyandtests/test_usage_report.pycover all endpoints; all tests pass against the live API.