Documentation
* docs: fix property documentation ([`c414ae7`](https://github.com/zabuldon/teslajsonpy/commit/c414ae7712053e8a2114b8efe3d7c994bd42a16f))
* docs: streamline debug messages ([`3342d67`](https://github.com/zabuldon/teslajsonpy/commit/3342d67a52a4c0ef88ef22858f58a5e47ee07384))
* docs: add additional websocket logging ([`690af0e`](https://github.com/zabuldon/teslajsonpy/commit/690af0e9fae925d388d2d8fb508a2c784e4c7b68))
* docs: fix typos ([`f38d2e6`](https://github.com/zabuldon/teslajsonpy/commit/f38d2e69b9145b1dcc945fa19215814205a4e0ff))
* docs: update websocket_connect documentation ([`91546aa`](https://github.com/zabuldon/teslajsonpy/commit/91546aab04091cbfcf2f16bc35d938ec79e59178))
Feature
* feat: expose expiration for oauth ([`0e116c3`](https://github.com/zabuldon/teslajsonpy/commit/0e116c366bc3ac4fdd8300f6781e2da8c551cf00))
* feat: expose charge_energy_added ([`249a25c`](https://github.com/zabuldon/teslajsonpy/commit/249a25c1aeb1c4650de0d25a096c9b8292ae946d))
* feat: add wake_if_asleep param to update ([`500968a`](https://github.com/zabuldon/teslajsonpy/commit/500968a04b5773e4c2e63a49192dd4fc5c935a7a))
* feat: add option to enable websockets ([`b2717e8`](https://github.com/zabuldon/teslajsonpy/commit/b2717e8906ec118baa62450ff2c7317b2d9d0028))
* feat: expose charger_phases ([`07c69e3`](https://github.com/zabuldon/teslajsonpy/commit/07c69e3d2ed002ecdd90b794adb0b87277661100))
* feat: change to adaptive algorithm based updates
Instead of polling for a set SCAN_INTERVAL, the new algorithm will
determine if the car has recently parked and update normally for the
IDLE_INTERVAL (600). After the idle period is complete, updates are
throttled to the SLEEP_INTERVAL until the car is asleep. There is now a
regular ONLINE_INTERVAL (60) check which does not query the car and
will immediately detect if a car has become awake to resume updates. ([`d7b1f5c`](https://github.com/zabuldon/teslajsonpy/commit/d7b1f5c9bf83935940cf0d7ef4d2cf0f04d6feda))
* feat: add callback register for websocket ([`a9e33c1`](https://github.com/zabuldon/teslajsonpy/commit/a9e33c1af7109081097a726738c6fdb186f6cc7e))
* feat: add websocket connection
Closes 25 ([`7719abb`](https://github.com/zabuldon/teslajsonpy/commit/7719abb5103fd862707eeab7fada783f8993f07c))
Fix
* fix: enable native_type gps ([`21c919e`](https://github.com/zabuldon/teslajsonpy/commit/21c919eff33cedc5ca8148e51300c5c5f69055cc))
* fix: update websocket subscribe and retry
This is the subscribe command from the latest app ([`d3afe61`](https://github.com/zabuldon/teslajsonpy/commit/d3afe61fea7c216a509fd630dea85dff0728a081))
* fix: force further delay in backoff ([`4d07e07`](https://github.com/zabuldon/teslajsonpy/commit/4d07e07723deb35e1ce9ca4ba4c8ab4052cdae79))
* fix: handle malformed websocket data ([`95badc2`](https://github.com/zabuldon/teslajsonpy/commit/95badc278846bbfede21a63846b77dd16a2fd05f))
* fix: add vehicle_unavailable exception ([`166013c`](https://github.com/zabuldon/teslajsonpy/commit/166013ca75bcb45962113f2a58982af54bacf4dd))
* fix: prevent update for in_service cars ([`606c11e`](https://github.com/zabuldon/teslajsonpy/commit/606c11ee0571e7cdc57b199e6409106a531340d1))
* fix: fix handling of could_not_wake_buses ([`990ee3d`](https://github.com/zabuldon/teslajsonpy/commit/990ee3d497d49110421592e52a3b3551a815eb1e))
* fix: further fine tune adaptive checking ([`5f1e34d`](https://github.com/zabuldon/teslajsonpy/commit/5f1e34d351a5e9268924bfb591730752b7b01b25))
* fix: fix saving of websocket battery level ([`8907238`](https://github.com/zabuldon/teslajsonpy/commit/890723838316c352573c9f7c1ced3dba667696c0))
* fix: export OnlineSensor ([`8483a20`](https://github.com/zabuldon/teslajsonpy/commit/8483a2078b4cb3c8263447eba3c7b06a20793823))
* fix: increase minimum retry delay to 15 seconds ([`fad88bc`](https://github.com/zabuldon/teslajsonpy/commit/fad88bc11337c6517a99db28154a668b2e506caa))
* fix: save raw_online_state on updates ([`5cf5c17`](https://github.com/zabuldon/teslajsonpy/commit/5cf5c178704527c5fd4fcc65f77b3de8c60bbc53))
Refactor
* refactor: change default value to None ([`4ec8d9b`](https://github.com/zabuldon/teslajsonpy/commit/4ec8d9b24a7d1d020372ae20ea5bf86d748a3f01))
* refactor: change wake_if_asleep option for connect ([`d381d53`](https://github.com/zabuldon/teslajsonpy/commit/d381d53e446c481aabfc0384260d3e66e769b04c))
* refactor: change backoff behavior to commands only ([`383ce46`](https://github.com/zabuldon/teslajsonpy/commit/383ce46cc89608054e83cbdf0d840d7e95b88727))
* refactor: convert to wrapt ([`c0907b2`](https://github.com/zabuldon/teslajsonpy/commit/c0907b24640d89930099eab909481aea2ecb6c4d))
* refactor: add handling of upstream_timeout ([`eddfa32`](https://github.com/zabuldon/teslajsonpy/commit/eddfa32440cec00e8097d010d720f2bd99be540e))
* refactor: black ([`a3728e5`](https://github.com/zabuldon/teslajsonpy/commit/a3728e59738778e1edf3b529c42467a7e7d4932c))
* refactor: switch to backoff for retries ([`cbe539e`](https://github.com/zabuldon/teslajsonpy/commit/cbe539e929c330bb6ded74d9392f55d09481dfbf))
* refactor: save car_state from get_vehicles ([`2445d5b`](https://github.com/zabuldon/teslajsonpy/commit/2445d5b6a44a7b93fd11c8b52786c1cabd2af6a2))
* refactor: add attributes to charger connection ([`e0631e1`](https://github.com/zabuldon/teslajsonpy/commit/e0631e10fffba6f3d7180fa9e97fcad305eaa843))
* refactor: move attributes to vehicle class ([`9739117`](https://github.com/zabuldon/teslajsonpy/commit/9739117f9bc1cb0dabd63b7ef8da9609206d9792))
* refactor: sleep only when sentry mode off ([`9d0d6fd`](https://github.com/zabuldon/teslajsonpy/commit/9d0d6fd09032c00160996705dfecb1f471ea1738))
* refactor: migrate to non-legacy update url ([`ac08435`](https://github.com/zabuldon/teslajsonpy/commit/ac084353989330d3e3cdfab775aa04fe4363ce05))
* refactor: only allow updates if car isn&39;t offline ([`2c85b80`](https://github.com/zabuldon/teslajsonpy/commit/2c85b804b7a7f8d73dffc603cadaa00dc8315089))
* refactor: simplify kwargs logic ([`d463420`](https://github.com/zabuldon/teslajsonpy/commit/d463420f9c2ff4c305841f4bcfb5d9b570607858))
Style
* style: black ([`468df5a`](https://github.com/zabuldon/teslajsonpy/commit/468df5a24e97ab0c1901b334b6a9772fabf86f42))
Unknown
* Merge pull request 57 from alandtse/websocket
feat: add websocket support ([`9a13d89`](https://github.com/zabuldon/teslajsonpy/commit/9a13d890cf9c9e17e95929a4471530ea93c48db7))