Skip to content

Commit

Permalink
Merge pull request #6 from tblanarik/tblanarik/add-urls
Browse files Browse the repository at this point in the history
Adds deeplinks to SOTA and POTA sites
  • Loading branch information
tblanarik authored Sep 22, 2024
2 parents 960b274 + ca28ca0 commit c2716b6
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 5 deletions.
16 changes: 14 additions & 2 deletions function_app.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,22 @@ def create_content(req_body):
summitRef = req_body.get('summitRef', '')
wwffRef = req_body.get('wwffRef', '')

content = {"content": f"{fullCallsign} | {source} | freq: {frequency} | mode: {mode} | loc: {summitRef}{wwffRef}"}
spot_deeplink = create_spot_deeplink(source, fullCallsign, wwffRef)

# flags = 4 means it will suppress embeds: https://discord.com/developers/docs/resources/message#message-object-message-flags
content = {"content": f"{fullCallsign} | {source} | freq: {frequency} | mode: {mode} | loc: {summitRef}{wwffRef} | {spot_deeplink}", "flags": 4}
return content

def call_target(content):
target_url = os.getenv('TARGET_URL')
response = requests.post(target_url, json=content)
return func.HttpResponse(response.text, status_code=response.status_code)
return func.HttpResponse(response.text, status_code=response.status_code)

def create_spot_deeplink(source, fullCallsign, wwffRef):
match source:
case "sotawatch":
return f"[See their latest spot](https://sotl.as/activators/{fullCallsign})"
case "pota":
return f"[See their latest spot](https://api.pota.app/spot/comments/{fullCallsign}/{wwffRef})"
case _:
return ""
6 changes: 3 additions & 3 deletions test.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
class TestSpotBot(unittest.TestCase):

def test_function_app_basic(self):
req_body = {"fullCallsign": "KI7HSG", "source": "POTA", "frequency": "14.074", "mode": "FT8", "wwffRef":"US-0052"}
req_body = {"fullCallsign": "KI7HSG", "source": "pota", "frequency": "14.074", "mode": "FT8", "wwffRef":"US-0052"}
content = function_app.create_content(req_body)
expected = {'content': 'KI7HSG | POTA | freq: 14.074 | mode: FT8 | loc: US-0052'}
expected = {'content': 'KI7HSG | pota | freq: 14.074 | mode: FT8 | loc: US-0052 | [See their latest spot](https://api.pota.app/spot/comments/KI7HSG/US-0052)', 'flags': 4}
self.assertDictEqual(content, expected)

def test_function_app(self):
req_body = {"fullCallsign": "KI7HSG", "source": "sotawatch", "frequency": "14.074", "mode": "FT8", "summitRef": "ABCD"}
content = function_app.create_content(req_body)
expected = {'content': 'KI7HSG | sotawatch | freq: 14.074 | mode: FT8 | loc: ABCD'}
expected = {'content': 'KI7HSG | sotawatch | freq: 14.074 | mode: FT8 | loc: ABCD | [See their latest spot](https://sotl.as/activators/KI7HSG)', 'flags': 4}
self.assertDictEqual(content, expected)

if __name__ == '__main__':
Expand Down

0 comments on commit c2716b6

Please sign in to comment.