<div dir="ltr">Hello!<div><br></div><div>Is it possible to keep the last (newest) message using ring API?</div><div><br></div><div>I use ws-broker with one wsi connected to the server and many clients connected to this broker. When new message comes from server, it must be cached for future clients so that they can consume actual message immediately without waiting new message from server.</div><div><br></div><div>The only thing I came up with is to use message structure within vhd. Something like this:</div><div><br></div><div>struct per_vhd {</div><div>    ...</div><div>    struct lws_ring *ring;</div><div>    struct msg * last; /* the last message we received */ </div><div>    ...<br></div><div>};</div><div><br></div><div>int callback_...(...) {</div><div>case LWS_CALLBACK_CLIENT_RECEIVE:</div><div>   /* message from server, write it to cache for future clients and send it to connected clients */</div><div>   free(vhd->last);</div><div>   vhd->last = create_msg(in,len);</div><div>   lws_callback_on_writable_all_protocol_vhost(vhd->vhost, vhd->protocol);</div><div><br></div><div>case LWS_CALLBACK_ESTABLISHED:</div><div>   /* client connected, send him a message from cache */</div><div>   lws_callback_on_writable(wsi);</div><div>   break;</div><div><br></div><div>case LWS_CALLBACK_SERVER_WRITEABLE:<br></div><div>   /*</div><div>   actually sending message from cache using lws_write(...) goes here</div><div>   */<br></div><div>   break;</div><div><br></div><div>   return 0;<br></div><div>}</div><div><br></div><div>So my question is whether ring api allows so?</div><div><br></div><div>Cheers.</div></div>