def print_message()

in src/fix_session.py [0:0]


def print_message(msg):
    msg_type = get_field_value(fix.MsgType(), msg.getHeader())
    if msg_type == fix.MsgType_MarketDataRequestReject:
        reason = get_field_value(fix.Text(), msg)
        print(f"Market data request rejected: {reason}")

    elif msg_type == fix.MsgType_MarketDataSnapshotFullRefresh:
        symbol = get_field_value(fix.Symbol(), msg)
        print(f"Market data snapshot for {symbol}")
        group = fix.Group(268, 269)  # 268 = NoMDEntries, 269 = MDEntryType
        print_md_entries(msg, group)

    elif msg_type == fix.MsgType_MarketDataIncrementalRefresh:
        symbol = get_field_value(fix.Symbol(), msg)
        print(f"Market data incremental update for {symbol}")
        group = fix.Group(268, 279)  # 268 = NoMDEntries, 279 = MDUpdateAction
        print_md_entries(msg, group)

    else:
        print(f"Unexpected message type: {msg_type}")

    fix_str = msg.toString().replace('\x01', '|')
    print(f"FIX message: {fix_str}")