diff --git a/src/NATSBridge.jl b/src/NATSBridge.jl index 902613e..f100aa1 100644 --- a/src/NATSBridge.jl +++ b/src/NATSBridge.jl @@ -104,7 +104,7 @@ function log_trace(correlation_id::String, message::String) timestamp = Dates.now() # Get current timestamp @info "[$timestamp] [Correlation: $correlation_id] $message" # Log formatted message end - +2112 """ smartsend - Send data either directly via NATS or via a fileserver URL, depending on payload size @@ -346,8 +346,7 @@ function smartreceive( max_delay::Int = 5000 ) # Parse the envelope - env = MessageEnvelope(String(msg.data)) # Parse NATS message data as JSON envelope - + env = MessageEnvelope(String(msg.payload)) # Parse NATS message data as JSON envelope log_trace(env.correlation_id, "Processing received message") # Log message processing start # Check transport type diff --git a/test/test_large_payload.jl b/test/test_large_payload.jl index 20afd92..30a395f 100644 --- a/test/test_large_payload.jl +++ b/test/test_large_payload.jl @@ -66,17 +66,16 @@ function test_large_binary_receive() conn = NATS.connect(NATS_URL) NATS.subscribe(conn, SUBJECT) do msg log_trace("Received message on $(msg.subject)") - log_trace("Received message:\n$msg") - - # Use SmartReceive to handle the data - result = SmartReceive(msg) + # Use NATSBridge.smartreceive to handle the data + result = NATSBridge.smartreceive(msg) + println("envelope----- ", result.envelope) # Check transport type if result.envelope.transport == "direct" - log_trace("Received direct transport with $(length(result.data)) bytes") + log_trace("Received direct transport with ---- bytes") else # For link transport, result.data is the URL - log_trace("Received link transport at $(result.data)") + log_trace("Received link transport at ---") end # Verify the received data matches the original @@ -100,9 +99,9 @@ function test_large_binary_receive() end end end - + # Keep listening for 10 seconds - sleep(10) + sleep(60) NATS.drain(conn) end @@ -111,12 +110,28 @@ println("Starting large binary payload test...") println("Correlation ID: $correlation_id") println("Large file: $LARGE_FILE_PATH") -# Run sender first -println("start smartsend") -test_large_binary_send() +# # Run sender first +# println("start smartsend") +# test_large_binary_send() # Run receiver println("testing smartreceive") test_large_binary_receive() -println("Test completed.") \ No newline at end of file +println("Test completed.") + + + + + + + + + + + + + + + + diff --git a/test_output.bin b/test_output.bin new file mode 100644 index 0000000..56dfcd1 Binary files /dev/null and b/test_output.bin differ