Skip to content

Commit

Permalink
Working through issues with register names
Browse files Browse the repository at this point in the history
  • Loading branch information
acedrew committed Oct 29, 2024
1 parent cd8c687 commit 4f3cd96
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 9 deletions.
4 changes: 4 additions & 0 deletions services/core/PlatformDriverAgent/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,7 @@ These settings are optional:
Volttron Point Name must exist in the registry. If this setting is missing the driver will not send a heart beat signal
to the device. Heart beats are triggered by the Actuator Agent which must be running to use this feature.
3. group - Group this device belongs to. Defaults to 0


## Changes
- 4.4.1 (2024-10-29) fixes for desigo api issues, retrieve token via bus regardless to allow effective caching.
Original file line number Diff line number Diff line change
Expand Up @@ -590,7 +590,7 @@ def set_default(self, point, value):
"""
self._tracker.set_default(point, value)

def set_point(self, point_name, value):
def set_point(self, point_name, value, **kwargs):
"""
Implementation of :py:meth:`BaseInterface.set_point`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,6 @@ def __init__(self, **kwargs):
self.designation = None
self.designation_map = defaultdict(list)
self.desigo_registers = []
self.points = []
self.scrape_interval = 900
urllib3.disable_warnings(category=InsecureRequestWarning)

Expand All @@ -113,18 +112,17 @@ def configure(self, config_dict, registry_config_str):
register = Register(
register_type="desigo_p2",
read_only=True,
point_name=name,
point_name=prop,
designation=designation,
property_name=prop,
units="",
)
self.insert_register(register)
self.points.append(name)
self.desigo_registers = self.registers[("byte", True)]
for register in self.desigo_registers:
self.designation_map[register.designation].append(register)
_log.info("finished configuration for desigo API interface")
_log.info(f"registered {len(self.points)} points")
_log.info(f"registered {len(self.registers("byte", True))} points")

def _grequests_exception_handler(self, request, exception):
"""
Expand Down Expand Up @@ -157,7 +155,7 @@ def post_to_resource(self, resource=None, post_data=None, parameters=None):
self.auth_token = self.get_token()
req = grequests.get(
f"{self.url}/{resource}",
headers={"authorization": f"Bearer {self.auth_token}"},
headers={"authorization": f"Bearer {self.get_token()}"},
verify=False,
timeout=300,
)
Expand All @@ -176,7 +174,7 @@ def get_resource(self, resource="eventcounters", parameters=None):
try:
req = grequests.get(
f"{self.url}/{resource}",
headers={"authorization": f"Bearer {self.auth_token}"},
headers={"authorization": f"Bearer {self.get_token()}"},
params=parameters,
verify=False,
timeout=300,
Expand All @@ -194,7 +192,7 @@ def get_resource(self, resource="eventcounters", parameters=None):
before_request = datetime.utcnow()
req = grequests.get(
f"{self.url}/{resource}",
headers={"authorization": f"Bearer {self.auth_token}"},
headers={"authorization": f"Bearer {self.get_token()}"},
verify=False,
timeout=800,
)
Expand Down Expand Up @@ -225,7 +223,7 @@ def get_token(self, **kwargs):
"""
_log.debug("trying to get token via RPC")
try:
self.auth_token = self.vip.rpc.call("platform.desigo_credential_handler", "get_token", self.url).get(timeout=300)
self.auth_token = self.vip.rpc.call("platform.desigo_credential_handler", "get_token", self.url).get(timeout=30)
except gevent.timeout.Timeout:
_log.error("timed out getting token")
return None
Expand Down

0 comments on commit 4f3cd96

Please sign in to comment.