Hello Martijn, unfortunately I haben't made any progress whatsoever in the last months due to work. I still need to perform that debugging mentioned. Nevertheless, I think, that I will for now adhere to Request-Reply and just handle connection after each other. Any other ideas are welcome ;-) Cheers Niels
Hej hej, any comments / ideas regarding this ? Thanks ! Cheers Niels Göran
Hello, thanks for your answer! I came across the message envelope, but also, since the lib is compiled (can be compiled) with DRAFT enabled, I found the SERVER / CLIENT pattern, which is considered an "non-blocing" version of the ROUTER / DEALER pattern. I changed the "zmq_labview.c" file as follows by adding a recv_server function: EXPORT int lvzmq_recv_server( sock_obj **pinstdata, sock_obj *sockobj, UHandle h, int *flags, unsigned int *msg_routing_id ) { int ret = 0; zmq_msg_t msg; void *sock;...
Hello, thanks for your answer! I came across the message envelope, but also, since the lib is compiled (can be compiled) with DRAFT enabled, I found the SERVER / CLIENT pattern, which is considered an "non-blocing" version of the ROUTER / DEALER pattern. I changed the "zmq_labview.c" file as follows by adding a recv_server function: EXPORT int lvzmq_recv_server( sock_obj **pinstdata, sock_obj *sockobj, UHandle h, int *flags, unsigned int *msg_routing_id ) { int ret = 0; zmq_msg_t msg; void *sock;...
Hello, thanks for your answer! I came across the message envelope, but also, since the lib is compiled (can be compiled) with DRAFT enabled, I found the SERVER / CLIENT pattern, which is considered an "non-blocing" version of the ROUTER / DEALER pattern. I changed the "zmq_labview.c" file as follows by adding a recv_server function: EXPORT int lvzmq_recv_server( sock_obj **pinstdata, sock_obj *sockobj, UHandle h, int *flags, unsigned int *msg_routing_id ) { int ret = 0; zmq_msg_t msg; void *sock;...
Hello, thanks for your answer! I came across the message envelope, but also, since the lib is compiled (can be compiled) with DRAFT enabled, I found the SERVER / CLIENT pattern, which is considered an "non-blocing" version of the ROUTER / DEALER pattern. I changed the "zmq_labview.c" file as follows by adding a recv_server function: EXPORT int lvzmq_recv_server( sock_obj **pinstdata, sock_obj *sockobj, UHandle h, int *flags, unsigned int *msg_routing_id ) { int ret = 0; zmq_msg_t msg; void *sock;...
Quick follow-up: Since the LVZMQ lib is compiled with the draft option, I would assume that the SERVER-CLIENT pattern works. Is that correct? I couldn't find any corresponding functions like "send" with "routing_id".. Is this hidden somewhere or not yet implemented? Thanks!
Hello everyone, I'm currently trying to setup a ZMQ-based system in LabVIEW and came across the "The Asynchronous Client/Server Pattern" pattern (https://zguide.zeromq.org/docs/chapter3/#The-Asynchronous-Client-Server-Pattern). It seems logical to me, but implementation-wise, I'm having a hard time, wrapping my head around it. Does anyone have some kind of example with this or a similar pattern? The system: cRIO which acts as server and gets commands from multiple clients, that connect and disconnect...