diff --git a/logo.png b/logo.png new file mode 100644 index 0000000..791b3b2 Binary files /dev/null and b/logo.png differ diff --git a/testserver.py b/testserver.py new file mode 100644 index 0000000..63bfa3a --- /dev/null +++ b/testserver.py @@ -0,0 +1,40 @@ +import argparse +import pathlib + +from aiohttp import web + +file = open(pathlib.Path(__file__).parent.absolute() / 'webserver.html', 'r') +contecnt = file.read() + + +async def handle_index(request): + return web.Response(content_type='text/html', text=contecnt) + + +async def handle_ws(request): + ws = web.WebSocketResponse() + await ws.prepare(request) + request.app.ws_clients.append(ws) + async for _ in ws: # noqa: WPS328 + pass + request.app.ws_clients.remove(ws) + return ws + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--bluetooth-mac', type=str, required=False, help='bluetooth MAC address of radiascan device') + parser.add_argument('--listen-host', type=str, required=False, default='0.0.0.0', help='listen host for webserver') + parser.add_argument('--listen-port', type=int, required=False, default=8080, help='listen port for webserver') + args = parser.parse_args() + + app = web.Application() + + + app.ws_clients = [] + + app.add_routes( + [ + web.get('/', handle_index) + ], + ) + web.run_app(app, host=args.listen_host, port=args.listen_port) \ No newline at end of file diff --git a/webserver.html b/webserver.html index 45f9563..6664b57 100644 --- a/webserver.html +++ b/webserver.html @@ -1,105 +1,218 @@ - - - - Kyiv Radioactive! - - - - - - - + + + + + + + Київ неРадіоактивний! Проект dead.guru + + + + + + + + + + + + + +
+
-

- неРадіоактивна ситуація в Києві. -

-

В реальному часі.

-
- Використовуйте ландшавтну орієнтацію екрану для зручного перегляду. Або планшет чи компьютер. -
+ +
-
+
+ + Використовуйте ландшафтну орієнтацію екрану для зручного перегляду. Ще краще — планшет чи комп'ютер. +
+
- +
- До 0,3 мк3в/г - нормальний радіаційний фон. -

- Швидкість дози в мікрозівертах на годину вказує, скільки мікрозівертів (одиниця виміру еквівалентної дози) радіації поглинається організмом або матеріалом за одну годину. Ця величина може використовуватися для оцінки рівня радіаційного впливу на людей, а також для моніторингу і контролю радіаційної безпеки в радіаційних зонах, ядерних установках або природному середовищі. -

-

- Наприклад, якщо швидкість дози становить 10 μSv/h, це означає, що організм або матеріал отримує дозу 10 мікрозівертів радіації за кожну годину. Це може вказувати на наявність джерела радіації в цьому місці або на необхідність заходів з радіаційного захисту. -

+ До 0,3 мк3в/г — нормальний радіаційний фон. +

+ Швидкість дози в мікрозівертах на годину вказує, скільки мікрозівертів (одиниця виміру еквівалентної дози) + радіації поглинається організмом або матеріалом за одну годину. Ця величина може використовуватися для + оцінки рівня радіаційного впливу на людей, а також для моніторингу і контролю радіаційної безпеки в + радіаційних зонах, ядерних установках або природному середовищі. +

+

+ Наприклад, якщо швидкість дози становить 10 μSv/h, це означає, що організм або матеріал отримує дозу 10 + мікрозівертів радіації за кожну годину. Це може вказувати на наявність джерела радіації в цьому місці або на + необхідність заходів з радіаційного захисту. +

+
+
+ +
+
+ + +
+
+ + + + + +
+
+ + + + +
-
- -
-
- - -
-
- - - - - -
-
- - - - -
-
- -
+ +
-

(Частина проекту dead.guru)

+
+ - + + + \ No newline at end of file diff --git a/webserver.py b/webserver.py index cb47d1e..f21e1e1 100644 --- a/webserver.py +++ b/webserver.py @@ -78,7 +78,7 @@ async def process(app): ) print(f'Rates updated, sending to {len(app.ws_clients)} connected clients') try: - await asyncio.gather(*[ws.send_str(jdata) for ws in app.ws_clients], asyncio.sleep(1.0)) + await asyncio.gather(*[ws.send_str(jdata) for ws in app.ws_clients], asyncio.sleep(2.0)) except Exception as e: print(f'Error while sending to websocket: {e}')