aboutsummaryrefslogtreecommitdiffstats
path: root/src/net.py
diff options
context:
space:
mode:
authorNao Pross <np@0hm.ch>2021-11-17 16:52:29 +0100
committerNao Pross <np@0hm.ch>2021-11-17 16:52:29 +0100
commit849b3caebb306e59ccd12d0ca0d5c471c27d54d0 (patch)
tree47a53f3896252a56fc736bff7e5a3718d81b368b /src/net.py
parentSmall cosmetic changes in doc (diff)
downloadFading-849b3caebb306e59ccd12d0ca0d5c471c27d54d0.tar.gz
Fading-849b3caebb306e59ccd12d0ca0d5c471c27d54d0.zip
Replace GNURadio scripts with network code
Diffstat (limited to '')
-rw-r--r--src/net.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/net.py b/src/net.py
new file mode 100644
index 0000000..6bd71ac
--- /dev/null
+++ b/src/net.py
@@ -0,0 +1,33 @@
+import select
+import socket
+from urllib.parse import urlparse
+
+import numpy as np
+
+
+class udpsource:
+ """
+ Creates an UDP listening socket
+ """
+ def __init__(self, url):
+ self.sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
+ self.url = urlparse(url)
+
+ def __del__(self):
+ self.sock.close()
+
+ def bind(self):
+ self.sock.setblocking(False)
+ self.sock.bind((self.url.hostname, self.url.port))
+ # self.sock.listen()
+
+ def read(self, nbytes):
+ ready_to_read, ready_to_write, in_err = \
+ select.select([self.sock], [], [], 1)
+
+ if ready_to_read:
+ data = sock.recv(nbytes)
+ print(data)
+ else:
+ return None
+