test-zmq.nut 891 B

123456789101112131415161718192021222324252627282930
  1. local context = zmq_ctx();
  2. print(__LINE__, context);
  3. // Socket to talk to clients
  4. local responder = context.socket (zmq_socket.REP);
  5. print(__LINE__, responder);
  6. print(__LINE__, responder.bind ("tcp://*:5555"));
  7. while (1) {
  8. // Wait for next request from client
  9. local request = zmq_msg();
  10. print(__LINE__, request);
  11. //zmq_msg_init (&request);
  12. print(__LINE__, request.recv(responder, 0));
  13. print(format("Received Hello %s\n", request.data()));
  14. print(__LINE__, request.close ());
  15. // Do some 'work'
  16. os.sleep (1);
  17. // Send reply back to client
  18. local reply = zmq_msg(5);
  19. print(__LINE__, reply);
  20. //memcpy (zmq_msg_data (&reply), "World", 5);
  21. print(__LINE__, reply.data("World"));
  22. print(__LINE__, reply.send(responder, 0));
  23. print(__LINE__, reply.close ());
  24. }
  25. // We never get here but if we did, this would be how we end
  26. print(__LINE__, responder.close());
  27. //zmq_ctx_destroy (context);