Files
fa26_cs425_.group-mp_.team-01/MP2/peer.py
T
2026-09-25 19:06:25 -05:00

39 lines
873 B
Python

from datetime import datetime, timezone
import socket
def utc_time():
return datetime.now(timezone.utc)
INTRODUCER_IP = "172.22.156.3"
IP = socket.gethostbyname(socket.gethostname())
SERVER_PORT = 6767
INTRODUCER_FLAG = (INTRODUCER_IP == IP)
#check if this VM is the introducer and add it self
members_list = {}
if INTRODUCER_FLAG:
members_list[(IP, SERVER_PORT)] = {
"heart_beat": 1,
"last_seen": utc_time()
}
#start UDP socket
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server.bind((IP, SERVER_PORT))
if not INTRODUCER_FLAG:
server.sendto(b"JOIN", (INTRODUCER_IP, SERVER_PORT))
while True:
data, addr = server.recvfrom(4096)
if data == b"JOIN":
members_list[addr] = {
"heart_beat": 1,
"last_seen": utc_time()
}
print(members_list[addr])
#increment heart beat