in scripts/qlog_parser.py [0:0]
def parse_stream_state_updated(line):
# [2024/05/14 11:34:11 552613] [stream_state_updated]
# |scid:007cc254f81be8e78d765a2e63339fc99a66320d|xqc_stream_send_state_update|stream_id:3|send_stream|old:0|new:1|
data = {
"StreamType" : "bidirectional",
"new": "unknown",
"stream_side": "sending"
}
event_scid = "unknown"
segments = line.split('|')
segments = [segment.strip() for segment in segments]
assert(len(segments) > 1)
for i in range(1,len(segments)):
item = segments[i].split(':')
item = [i.strip() for i in item]
if(len(item) == 1):
if item[0] == "send_stream":
data["stream_side"] = "sending"
if item[0] == "recv_stream":
data["stream_side"] = "receiving"
if len(item) != 2:
continue
if item[0] == "scid":
event_scid = item[1]
if item[0] == "new":
state = int(item[1])
if data["stream_side"] == "sending":
data["new"] = send_stream_states_[state]
else:
data["new"] = recv_stream_states_[state]
return (data, event_scid)