diff --git a/experiments/client1.py b/experiments/client1.py index c2c6290..e88abf8 100644 --- a/experiments/client1.py +++ b/experiments/client1.py @@ -1,4 +1,6 @@ +import json import requests +import time def get_packets(content): @@ -8,7 +10,9 @@ def get_packets(content): while index < content_length: index, packet_length = read_packet_length(content, index) index, packet = read_packet(content, index, packet_length) - packets.append((packet[0], packet[1:])) + packet_type = int(packet[0]) + packet_payload = packet[1:] + packets.append((packet_type, packet_payload)) return packets @@ -30,23 +34,52 @@ def read_packet(content, index, packet_length): return index + packet_length, packet +request_counter = 0 + + +def get_timestamp(): + global request_counter + timestamp = '%s-%s' % (int(time.time() * 1000), request_counter) + request_counter += 1 + return timestamp + + base_url = 'http://localhost:9000' session = requests.Session() # Establish engine.io connection -response = session.get( - base_url + '/socket.io/?EIO=3&transport=polling&t=1416156610842-0') +url = base_url + '/socket.io/' +response = session.get(url, params={ + 'EIO': 3, + 'transport': 'polling', + 't': get_timestamp(), +}) +print response.url + + packets = get_packets(response.content) for packet_type, packet in packets: print packet_type, packet packet_type, packet = packets[0] -import json packet_json = json.loads(packet) print packet_json print packet_json['pingInterval'] print packet_json['pingTimeout'] print packet_json['sid'] +assert packet_type == 0 + + # Establish socket.io connection +session.get + + +# [REQUEST] /socket.io/?EIO=3&transport=polling&t=1416156610865-1&sid=OXdRaq1cUWs5v3TVAAAF # Receive socket.io event + + # Send socket.io event +# [REQUEST] /socket.io/?EIO=3&transport=polling&t=1416156610887-2&sid=OXdRaq1cUWs5v3TVAAAF + + # Send socket.io ping +# [REQUEST] /socket.io/?EIO=3&transport=polling&t=1416156635868-4&sid=OXdRaq1cUWs5v3TVAAAF # Receive socket.io pong diff --git a/experiments/interpretation.log b/experiments/interpretation.log index 2afb8e2..ea51ac8 100644 Binary files a/experiments/interpretation.log and b/experiments/interpretation.log differ