<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <pre>>><i> Hi,
</i>>><i>
</i>>><i> 1)Is there a way to asynchronously send the data to the client? That is,
</i>>><i> without being in a callback, server spontaneously initiating data
</i>>><i> transfer to the client..!!
</i>>
>Libwebsockets is basically single-threaded.  But, with care from another 
>server thread, you can call either
>
>libwebsocket_callback_on_writable(), or
>libwebsocket_callback_on_writable_all_protocol()
>
>but you need to manage your own list of live wsi / connections with the 
>first option (by tracking their creating and destruction in the 
>ESTABLISHED and CLOSED callbacks).
>
>You will get a LWS_CALLBACK_SERVER_WRITABLE as soon as it's possible to 
>write on that connection then, and you should figure out what to write 
>and write it from there.
>
>-Andy


</pre>
    <small>Hi,<br>
      <br>
      I am doing exactly this, but it doesn't work.<br>
      <br>
      I have a thread that calls libwebsocket_service with a huge
      timeout.  Writes, etc, are only ever done from within the
      callback.  When I need to write something from another thread, I
      queue up the message that needs to be written and then immediately
      call libwebsocket_callback_on_writeable_all_protocol on the proto
      I'm writing for.<br>
      <br>
      Unfortunately, I never get LWS_CALLBACK_SERVER_WRITEABLE until the
      libwebsocket_service times out and gets called again.  This is
      totally broken.  I saw a trac issue (#56) about using ppoll. 
      Unfortunately, the version of the library we're using doesn't seem
      to have that code in it.  Any ideas?<br>
      <br>
      Thanks,<br>
      -m<br>
      <br>
    </small>
  </body>
</html>