From 10a7a2ff159df4fac551fab5ba0ca9c9df0caf2f Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Tue, 7 Feb 2023 09:08:39 -0800 Subject: [PATCH 1/8] Geolocation that is easier to see in a demo --- examples/heatmap/adapter/heatmap_client.py | 36 +++++++++++++--------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index 2d236b44d..d88ec3467 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -1,10 +1,12 @@ -from turtle import st -from formant.sdk.agent.v1 import Client as AgentClient import os +import datetime import time from random import randint +from formant.sdk.agent.v1 import Client as AgentClient + + class HeatmapClient: def __init__(self) -> None: agent_url = "unix:///var/lib/formant/agent.sock" @@ -20,31 +22,35 @@ def __init__(self) -> None: agent_url=self.agent_url, ignore_throttled=True ) - def _publish_to_heatmap(self, latitude, longitud, weight): + def _publish_to_heatmap(self, latitude, longitude, weight): + print(f"{datetime.datetime.now()}\nGeolocation: {latitude}, {longitude}") + self._agent_client.post_geolocation( - self._geolocation_stream_name, latitude=latitude, longitude=longitud, + self._geolocation_stream_name, latitude=latitude, longitude=longitude, ) - self._agent_client.post_text("test_alert.level.1.condition", "Alert") if weight % 5 == 0: + print(f"Weight: {weight}") self._agent_client.post_numeric(self._numeric_stream_name, weight) - print("numeric") def run(self): try: while True: - latitude = randint(-8678933143615723, -8678791522979736) + # Around California: + # https://www.latlong.net/place/san-francisco-ca-usa-594.html + # https://www.latlong.net/place/los-angeles-ca-usa-1531.html + latitude = randint(34000000, 38000000) + longitude = randint(-122000000, -118000000) latitude = str(latitude) - start_string = latitude[0:3] + "." + latitude[3:] - latitude = float(start_string) - longitud = randint(3614002351236823, 3615648409409885) - longitud = str(longitud) - longitud = longitud[0:2] + "." + longitud[2:] - longitud = float(longitud) + latitude = latitude[0:2] + "." + latitude[2:] + latitude = float(latitude) + longitude = str(longitude) + longitude = longitude[0:4] + "." + longitude[4:] + longitude = float(longitude) + weight = randint(1, 50) time.sleep(1) - print("location") self._publish_to_heatmap( - latitude=longitud, longitud=latitude, weight=weight + latitude=latitude, longitude=longitude, weight=weight ) except KeyboardInterrupt: pass From 539bb7a00c570251b7f66074b273b3dae7ce1984 Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Tue, 7 Feb 2023 09:25:44 -0800 Subject: [PATCH 2/8] Line spacing --- examples/heatmap/adapter/heatmap_client.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index d88ec3467..8ec2c3742 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -3,7 +3,6 @@ import time from random import randint - from formant.sdk.agent.v1 import Client as AgentClient @@ -17,14 +16,12 @@ def __init__(self) -> None: self._numeric_stream_name = os.getenv( "NUMERIC_STREAM_NAME", "heatmap_point_weight" ) - self._agent_client = AgentClient( agent_url=self.agent_url, ignore_throttled=True ) def _publish_to_heatmap(self, latitude, longitude, weight): print(f"{datetime.datetime.now()}\nGeolocation: {latitude}, {longitude}") - self._agent_client.post_geolocation( self._geolocation_stream_name, latitude=latitude, longitude=longitude, ) @@ -46,7 +43,6 @@ def run(self): longitude = str(longitude) longitude = longitude[0:4] + "." + longitude[4:] longitude = float(longitude) - weight = randint(1, 50) time.sleep(1) self._publish_to_heatmap( From 4e84093efa608d392fdcb395f2b0083c0b804775 Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Wed, 8 Feb 2023 11:48:20 -0800 Subject: [PATCH 3/8] Change geolocation to where Walter is --- examples/heatmap/adapter/heatmap_client.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index 8ec2c3742..8b7b30386 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -32,11 +32,10 @@ def _publish_to_heatmap(self, latitude, longitude, weight): def run(self): try: while True: - # Around California: - # https://www.latlong.net/place/san-francisco-ca-usa-594.html - # https://www.latlong.net/place/los-angeles-ca-usa-1531.html - latitude = randint(34000000, 38000000) - longitude = randint(-122000000, -118000000) + # Around Fort Collins, CO, where Walter is: + # ~ 40.72, -104.77 + latitude = randint(40000000, 41000000) + longitude = randint(-105000000, -104000000) latitude = str(latitude) latitude = latitude[0:2] + "." + latitude[2:] latitude = float(latitude) From 1e979e04e3cb782367fc96e0a17f210cbb44b31b Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Wed, 8 Feb 2023 11:53:12 -0800 Subject: [PATCH 4/8] Change Formant stream names --- examples/heatmap/adapter/heatmap_client.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index 8b7b30386..78302c656 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -11,10 +11,10 @@ def __init__(self) -> None: agent_url = "unix:///var/lib/formant/agent.sock" self.agent_url = os.getenv("AGENT_URL", agent_url) self._geolocation_stream_name = os.getenv( - "LOCATION_STREAM_NAME", "heatmap_point_location" + "LOCATION_STREAM_NAME", "heatmap.point.location" ) self._numeric_stream_name = os.getenv( - "NUMERIC_STREAM_NAME", "heatmap_point_weight" + "NUMERIC_STREAM_NAME", "heatmap.point.weight" ) self._agent_client = AgentClient( agent_url=self.agent_url, ignore_throttled=True From 7bbccd1c0719a3b0d62427908549ad4d08c2fc0f Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Wed, 8 Feb 2023 11:58:09 -0800 Subject: [PATCH 5/8] Change Formant stream names part 2 --- examples/heatmap/adapter/config.env | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/heatmap/adapter/config.env b/examples/heatmap/adapter/config.env index eb150842a..841c4ae7e 100644 --- a/examples/heatmap/adapter/config.env +++ b/examples/heatmap/adapter/config.env @@ -1,2 +1,2 @@ -export NUMERIC_STREAM_NAME=heatmap_point_weight -export LOCATION_STREAM_NAME=heatmap_point_location \ No newline at end of file +export NUMERIC_STREAM_NAME=heatmap.point.weight +export LOCATION_STREAM_NAME=heatmap.point.location \ No newline at end of file From c69ed832a03d48c3a5229454965618296289b616 Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Tue, 14 Feb 2023 14:30:48 -0800 Subject: [PATCH 6/8] Clean up and make more generic --- examples/heatmap/adapter/heatmap_client.py | 23 +++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index 78302c656..6a371d4ac 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -6,15 +6,22 @@ from formant.sdk.agent.v1 import Client as AgentClient +AGENT_URL = "unix:///var/lib/formant/agent.sock" +LOCATION_STREAM_NAME = "heatmap.point.location" +NUMERIC_STREAM_NAME = "heatmap.point.weight" +PUBLISH_FREQUENCY = 30 + class HeatmapClient: def __init__(self) -> None: - agent_url = "unix:///var/lib/formant/agent.sock" - self.agent_url = os.getenv("AGENT_URL", agent_url) + self.agent_url = os.getenv("AGENT_URL", AGENT_URL) self._geolocation_stream_name = os.getenv( - "LOCATION_STREAM_NAME", "heatmap.point.location" + "LOCATION_STREAM_NAME", LOCATION_STREAM_NAME ) self._numeric_stream_name = os.getenv( - "NUMERIC_STREAM_NAME", "heatmap.point.weight" + "NUMERIC_STREAM_NAME", NUMERIC_STREAM_NAME + ) + self._publish_frequency = os.getenv( + "PUBLISH_FREQUENCY", PUBLISH_FREQUENCY ) self._agent_client = AgentClient( agent_url=self.agent_url, ignore_throttled=True @@ -34,18 +41,16 @@ def run(self): while True: # Around Fort Collins, CO, where Walter is: # ~ 40.72, -104.77 - latitude = randint(40000000, 41000000) - longitude = randint(-105000000, -104000000) - latitude = str(latitude) + latitude = str(randint(40700000, 40800000)) latitude = latitude[0:2] + "." + latitude[2:] latitude = float(latitude) - longitude = str(longitude) + longitude = str(randint(-104800000, -104700000)) longitude = longitude[0:4] + "." + longitude[4:] longitude = float(longitude) weight = randint(1, 50) - time.sleep(1) self._publish_to_heatmap( latitude=latitude, longitude=longitude, weight=weight ) + time.sleep(self._publish_frequency) except KeyboardInterrupt: pass From 6e3b1a5566f65b02b39093e54c8e6d0f19e386ce Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Tue, 14 Feb 2023 15:36:41 -0800 Subject: [PATCH 7/8] Remove agent URL requirement --- examples/heatmap/adapter/heatmap_client.py | 2 -- examples/heatmap/adapter/requirements.txt | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index 6a371d4ac..cc6ba3e27 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -6,14 +6,12 @@ from formant.sdk.agent.v1 import Client as AgentClient -AGENT_URL = "unix:///var/lib/formant/agent.sock" LOCATION_STREAM_NAME = "heatmap.point.location" NUMERIC_STREAM_NAME = "heatmap.point.weight" PUBLISH_FREQUENCY = 30 class HeatmapClient: def __init__(self) -> None: - self.agent_url = os.getenv("AGENT_URL", AGENT_URL) self._geolocation_stream_name = os.getenv( "LOCATION_STREAM_NAME", LOCATION_STREAM_NAME ) diff --git a/examples/heatmap/adapter/requirements.txt b/examples/heatmap/adapter/requirements.txt index 8f563b310..6bebab6dd 100644 --- a/examples/heatmap/adapter/requirements.txt +++ b/examples/heatmap/adapter/requirements.txt @@ -1 +1 @@ -formant>=1.76.* \ No newline at end of file +formant>=1.111.* \ No newline at end of file From b2e9fcdc475fbf921e4a36beb9cfbc761f3d8f44 Mon Sep 17 00:00:00 2001 From: Nicolas Binford Date: Tue, 14 Feb 2023 15:42:25 -0800 Subject: [PATCH 8/8] Forgot one line --- examples/heatmap/adapter/heatmap_client.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/examples/heatmap/adapter/heatmap_client.py b/examples/heatmap/adapter/heatmap_client.py index cc6ba3e27..c77b6a256 100644 --- a/examples/heatmap/adapter/heatmap_client.py +++ b/examples/heatmap/adapter/heatmap_client.py @@ -21,9 +21,7 @@ def __init__(self) -> None: self._publish_frequency = os.getenv( "PUBLISH_FREQUENCY", PUBLISH_FREQUENCY ) - self._agent_client = AgentClient( - agent_url=self.agent_url, ignore_throttled=True - ) + self._agent_client = AgentClient(ignore_throttled=True) def _publish_to_heatmap(self, latitude, longitude, weight): print(f"{datetime.datetime.now()}\nGeolocation: {latitude}, {longitude}")