adding a small prototype here
commit
5aa34b5e7c
@ -0,0 +1,19 @@
|
||||
A small websocket testing setup: live streaming plain text without refreshing the webpage.
|
||||
|
||||
![](screenshot.png)
|
||||
|
||||
# Running this
|
||||
|
||||
Run a websocket server in Python:
|
||||
|
||||
$ python3 server.py
|
||||
|
||||
View the interface:
|
||||
|
||||
open client.html in a browser
|
||||
|
||||
Stream plain text (with HTML features):
|
||||
|
||||
open mytxtfile.txt in a text editor, type, hit save (CTRL+S), type more, hit save, etc
|
||||
|
||||
|
@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>WebSocket demo</title>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
var ws = new WebSocket("ws://127.0.0.1:5678/")
|
||||
ws.onmessage = function (event) {
|
||||
document.body.innerHTML = event.data;
|
||||
};
|
||||
document.body.appendChild(messages);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,28 @@
|
||||
hello
|
||||
hello
|
||||
hello
|
||||
hello
|
||||
and now
|
||||
yes
|
||||
now
|
||||
it
|
||||
works
|
||||
sort of <br>
|
||||
i need to save my file though
|
||||
but <br>
|
||||
i<br>
|
||||
can<br>
|
||||
write<br>
|
||||
HTML!
|
||||
<span style="color:blue;">yes</span>
|
||||
<span style="background-color:yellow;">yes</span>
|
||||
<span style="background-color:pink;">yes</span>
|
||||
and now what happens?
|
||||
it works
|
||||
but i still need to save<br>
|
||||
|
||||
yesss
|
||||
<br><br>
|
||||
but it is nice somehow
|
||||
<br><br>
|
||||
it feels intimate
|
Binary file not shown.
After Width: | Height: | Size: 51 KiB |
@ -0,0 +1,24 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# WS server that sends messages every second
|
||||
|
||||
import asyncio
|
||||
import datetime
|
||||
import random
|
||||
import websockets
|
||||
|
||||
async def time(websocket, path):
|
||||
while True:
|
||||
# now = datetime.datetime.utcnow().isoformat() + "Z"
|
||||
# myinput = open('mytxtfile.txt')
|
||||
# txt = myinput.read()
|
||||
# myinput.close()
|
||||
with open('mytxtfile.txt') as myinput:
|
||||
txt = myinput.read()
|
||||
await websocket.send(txt)
|
||||
await asyncio.sleep(1)
|
||||
|
||||
start_server = websockets.serve(time, "127.0.0.1", 5678)
|
||||
|
||||
asyncio.get_event_loop().run_until_complete(start_server)
|
||||
asyncio.get_event_loop().run_forever()
|
Loading…
Reference in New Issue