Allow using freedom MQTT servers.

This commit is contained in:
Jason Michalski
2024-07-15 20:12:12 -07:00
parent b7667485b3
commit 4def7c47e9
2 changed files with 6 additions and 5 deletions
+4 -3
View File
@@ -8,8 +8,8 @@ from meshview import web
from meshview import http
async def load_database_from_mqtt(topic):
async for topic, env in mqtt_reader.get_topic_envelopes(topic):
async def load_database_from_mqtt(mqtt_server, topic):
async for topic, env in mqtt_reader.get_topic_envelopes(mqtt_server, topic):
await store.process_envelope(topic, env)
@@ -18,7 +18,7 @@ async def main(args):
await database.create_tables()
async with asyncio.TaskGroup() as tg:
tg.create_task(load_database_from_mqtt(args.topic))
tg.create_task(load_database_from_mqtt(args.mqtt_server, args.topic))
tg.create_task(web.run_server(args.bind, args.port, args.tls_cert))
if args.acme_challenge:
tg.create_task(http.run_server(args.bind, args.acme_challenge))
@@ -31,6 +31,7 @@ if __name__ == '__main__':
parser.add_argument('--port', default=8080, type=int)
parser.add_argument('--tls-cert')
parser.add_argument('--mqtt-server', default='mqtt.meshtastic.org')
parser.add_argument('--topic', nargs='*', default=['msh/US/bayarea/#'])
parser.add_argument('--database', default='sqlite+aiosqlite:///packets.db')
+2 -2
View File
@@ -26,11 +26,11 @@ def decrypt(packet):
pass
async def get_topic_envelopes(topics):
async def get_topic_envelopes(mqtt_server, topics):
while True:
try:
async with aiomqtt.Client(
"mqtt.meshtastic.org", username="meshdev", password="large4cats"
mqtt_server, username="meshdev", password="large4cats"
) as client:
for topic in topics:
await client.subscribe(topic)