5 Commits

Author SHA1 Message Date
733ef83127 Shipping v0.8.4 2022-03-20 14:02:00 +01:00
edf209272d Fix missign field 'cardInformation' on some client 2022-03-20 14:01:22 +01:00
b53fdc07f8 Shipping v0.8.3 2022-03-19 21:43:23 +01:00
9c7d2890da Add support of missing fileds on GeoRide Subscription, remove deprectaed class 2022-03-19 21:39:49 +01:00
d93bab0fcf Imporve example 2022-03-06 12:25:50 +01:00
4 changed files with 19 additions and 31 deletions

View File

@@ -28,10 +28,13 @@ def example():
def locked_locked(data):
_LOGGER.info("Lock received")
def refresh_tracker():
_LOGGER.info("Refresh tracker recieved")
def connect_socket(account):
socket = GeoRideSocket()
socket.subscribe_locked(locked_locked)
socket.subscribe_refresh_tracker(refresh_tracker)
socket.init()
socket.connect(account.auth_token)
time.sleep(10)

View File

@@ -882,7 +882,7 @@ class GeoRideTrackerBeacon:
self._power = tracker_beacon.power
class GeoRideSubscription:
class GeoRideSubscription(metaclass=JsonMgtMetaClass):
""" Account object representation """
def __init__(self, subscription_id, subscription_type, initial_date, next_payment_date,
status, paused_since, cancel_requested, price, first_name, last_name, card_information):
@@ -956,21 +956,22 @@ class GeoRideSubscription:
@classmethod
def from_json(cls, json):
"""return new object from_json"""
card_info = GeoRideSubscription_CardInfo.from_json(json['cardInformation']) if cls.json_field_protect(json, 'cardInformation', None) is not None else {}
return GeoRideSubscription(
json['id'],
json['type'],
json['initialDate'],
json['nextPaymentDate'],
json['status'],
json['pausedSince'],
json['cancelRequested'],
json['price'],
json['firstName'],
json['lastName'],
GeoRideSubscription_CardInfo.from_json(json['cardInformation'])
cls.json_field_protect(json, 'initialDate'),
cls.json_field_protect(json, 'nextPaymentDate'),
cls.json_field_protect(json, 'status'),
cls.json_field_protect(json, 'pausedSince'),
cls.json_field_protect(json, 'cancelRequested'),
cls.json_field_protect(json, 'price'),
cls.json_field_protect(json, 'firstName'),
cls.json_field_protect(json, 'lastName'),
card_info
)
class GeoRideSubscription_CardInfo:
class GeoRideSubscription_CardInfo(metaclass=JsonMgtMetaClass):
""" Account object representation """
def __init__(self, last_digits, expiry, brand):
self._last_digits = last_digits
@@ -997,9 +998,9 @@ class GeoRideSubscription_CardInfo:
def from_json(cls, json):
"""return new object from_json"""
return GeoRideSubscription_CardInfo(
json['lastDigits'],
json['expiry'],
json['brand']
cls.json_field_protect(json, 'lastDigits'),
cls.json_field_protect(json, 'expiry'),
cls.json_field_protect(json, 'brand')
)
class GeoRideAccount:

View File

@@ -112,19 +112,3 @@ class GeoRideSocket():
def disconnect(self):
"""disconnect from the georide socket"""
sio.disconnect()
#TODO: remove in v0.8.0
class GeorideSocket(GeoRideSocket):
""" Trip object representation """
def __init_subclass__(cls, **kwargs):
"""Print deprecation warning."""
super().__init_subclass__(**kwargs)
_LOGGER.warning(
"GeorideSocket is deprecated, modify %s to use GeoRideSocket",
cls.__name__,
)
def __init__(self, *argv):
"""Print deprecation warning."""
super().__init__(*argv)
_LOGGER.warning("GeorideSocket is deprecated, modify your code to use GeoRideSocket")

View File

@@ -19,7 +19,7 @@ CURRENT_DIR = os.path.dirname(__file__)
setup(
name='georideapilib',
packages=['georideapilib'], # this must be the same as the name above
version='0.8.2',
version='0.8.4',
description='Lib to control GeoRide tracker devices with theire rest api',
author='Matthieu DUVAL',
author_email='georideapilib@duval-dev.fr',