A list of changes between each release
- Use networks endpoint rather than homecreen to retrieve arm/disarm status (@md-reddevil)
- Fix incorrect command status endpoint (@md-reddevil)
- Add extra debug logging
- Remove error prior to re-authorization (only log error when re-auth failed)
- Set minimum required version of the requests library to 2.20.0 due to vulnerability in earlier releases.
- When multiple networks detected, changed log level to 'warning' from 'error'
- Fix re-authorization bug (fixes #101)
- Log an error if saving video that doesn't exist
- Moved all API calls to own module for easier maintainability
- Added network ids to sync module and cameras to allow for multi-network use
- Removed dependency on video existance prior to camera setup (fixes #93)
- Camera wifi_strength now reported in wifi "bars" rather than dBm due to API endpoint change
- Use homescreen thumbnail as fallback in case it's not in the camera endpoint
- Removed "armed" and "status" attributes from camera (status of camera only reported by "motion_enabled" now)
- Added serial number attributes to sync module and cameras
- Check network_id from login response and verify that network is onboarded (fixes #90)
- Check if retrieved clip is "None" prior to storing in cache
- Complete code refactoring to enable future multi-sync module support
- Add image and video caching to the cameras
- Add internal throttling of system refresh
- Use session for http requests
Breaking change: - Cameras now accessed through sync module Blink.sync.cameras
- Update requirements_test.txt
- Update linter versions
- Fix pylint warnings - Remove object from class declarations - Remove useless returns from functions
- Fix pylint errors - change if comparison to fix (consider-using-in) - Disabled no else-if-return check
- Fix useless-import-alias
- Disable no-else-return
- Fix motion detection - Use an array of recent video clips to determine if motion has been detected. - Reset the value every system refresh
- Added support for battery voltage level (fixes #64)
- Added motion detection per camera
- Added fully accessible camera configuration dict
- Added celcius property to camera (fixes #60)
- Fixed pip 10 import issue during setup (@fronzbot)
- Fixed style errors for bumped pydocstring and pylint versions
- Changed Blink.cameras dictionary to be case-insensitive (fixes #35)
- Changed api endpoint for video extraction (fixes #35 and #41)
- Removed last_motion() function from Blink class
- Refactored code for better organization
- Moved some request calls out of @property methods (enables future CLI support)
- Renamed get_summary() method to summary and changed to @property
- Added ability to download most recent video clip
- Improved camera arm/disarm handling (@b10m)
- Added authentication to
login()
function and deprecatedsetup_system()
in favor ofstart()
- Added
attributes
dictionary to camera object
- Removed redundent properties that only called hidden variables
- Revised request wrapper function to be more intelligent
- Added tests to ensure exceptions are caught and handled (100% coverage!)
- Added auto-reauthorization (token refresh) when a request fails due to an expired token (@tySwift93)
- Added battery level string to reduce confusion with the way Blink reports battery level as integer from 0 to 3
- Fixed packaging mishap, same as 0.5.0 otherwise
- Fixed region handling problem
- Added rest.piri subdomain as a backup if region can't be found
- Improved the file writing function
- Large test coverage increase
- Fixed bug where region id was not being set in the header
- Changed to bdist_wheel release
- Fixed inability to retrieve motion data due to Key Error
- Fixed refresh bug (0.3.1 did not actually fix the problem)
- Image refresh routine added (per camera)
- Dictionary of thumbnails per camera added
- Improved test coverage
- Fixed refresh bug (Key Error)
- Added device id to camera lookup table
- Added image to file method
- Initial release of blinkpy