Deployed c4e9abf with MkDocs version: 1.0.4

This commit is contained in:
Benjamin Sergeant committed 2019-12-25 22:20:36 -08:00
1 parent 5350ebdcf2
commit 43d368f9a0
6 files changed
+29 -12

No files matched your search

+18 -1
View File
@@ -94,6 +94,11 @@
<div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary"> <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
<ul class="nav bs-sidenav"> <ul class="nav bs-sidenav">
<li class="main active"><a href="#changelog">Changelog</a></li> <li class="main active"><a href="#changelog">Changelog</a></li>
<li><a href="#782-2019-12-25">[7.8.2] - 2019-12-25</a></li>
<li><a href="#781-2019-12-25">[7.8.1] - 2019-12-25</a></li>
<li><a href="#780-2019-12-24">[7.8.0] - 2019-12-24</a></li>
<li><a href="#765-2019-12-24">[7.6.5] - 2019-12-24</a></li>
<li><a href="#764-2019-12-22">[7.6.4] - 2019-12-22</a></li>
<li><a href="#763-2019-12-20">[7.6.3] - 2019-12-20</a></li> <li><a href="#763-2019-12-20">[7.6.3] - 2019-12-20</a></li>
<li><a href="#762-2019-12-20">[7.6.2] - 2019-12-20</a></li> <li><a href="#762-2019-12-20">[7.6.2] - 2019-12-20</a></li>
<li><a href="#761-2019-12-20">[7.6.1] - 2019-12-20</a></li> <li><a href="#761-2019-12-20">[7.6.1] - 2019-12-20</a></li>
@@ -168,7 +173,19 @@
<div class="col-md-9" role="main"> <div class="col-md-9" role="main">
<h1 id="changelog">Changelog</h1> <h1 id="changelog">Changelog</h1>
<p>All notable changes to this project will be documented in this file.</p> <p>All changes to this project will be documented in this file.</p>
<h2 id="782-2019-12-25">[7.8.2] - 2019-12-25</h2>
<p>(ws cobra to sentry) bound the queue size used to hold up cobra messages before they are sent to sentry. Default queue size is a 100 messages. Without such limit the program runs out of memory when a subscriber receive a lot of messages that cannot make it to sentry</p>
<h2 id="781-2019-12-25">[7.8.1] - 2019-12-25</h2>
<p>(ws client) use correct compilation defines so that spdlog is not used as a header only library (reduce binary size and increase compilation speed)</p>
<h2 id="780-2019-12-24">[7.8.0] - 2019-12-24</h2>
<p>(ws client) all commands use spdlog instead of std::cerr or std::cout for logging</p>
<h2 id="765-2019-12-24">[7.6.5] - 2019-12-24</h2>
<p>(cobra client) send a websocket ping every 30s to keep the connection opened</p>
<h2 id="764-2019-12-22">[7.6.4] - 2019-12-22</h2>
<p>(client) error handling, quote url in error case when failing to parse one
(ws) ws_cobra_publish: register callbacks before connecting
(doc) mention mbedtls in supported ssl server backend</p>
<h2 id="763-2019-12-20">[7.6.3] - 2019-12-20</h2> <h2 id="763-2019-12-20">[7.6.3] - 2019-12-20</h2>
<p>(tls) add a simple description of the TLS configuration routine for debugging</p> <p>(tls) add a simple description of the TLS configuration routine for debugging</p>
<h2 id="762-2019-12-20">[7.6.2] - 2019-12-20</h2> <h2 id="762-2019-12-20">[7.6.2] - 2019-12-20</h2>
+1 -1
View File
@@ -226,5 +226,5 @@ webSocket.send(&quot;hello world&quot;);
<!-- <!--
MkDocs version : 1.0.4 MkDocs version : 1.0.4
Build Date UTC : 2019-12-20 23:28:28 Build Date UTC : 2019-12-26 06:20:36
--> -->
+1 -1
View File
@@ -1 +1 @@
{"config":{"lang":["en"],"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"Introduction WebSocket is a computer communications protocol, providing full-duplex and bi-directionnal communication channels over a single TCP connection. IXWebSocket is a C++ library for client and server Websocket communication, and for client and server HTTP communication. TLS aka SSL is supported. The code is derived from easywsclient and from the Satori C SDK . It has been tested on the following platforms. macOS iOS Linux Android Windows FreeBSD Example code // Required on Windows ix::initNetSystem(); // Our websocket object ix::WebSocket webSocket; std::string url(\"ws://localhost:8080/\"); webSocket.setUrl(url); // Setup a callback to be fired when a message or an event (open, close, error) is received webSocket.setOnMessageCallback([](const ix::WebSocketMessagePtr& msg) { if (msg->type == ix::WebSocketMessageType::Message) { std::cout << msg->str << std::endl; } } ); // Now that our callback is setup, we can start our background thread and receive messages webSocket.start(); // Send a message to the server (default to TEXT mode) webSocket.send(\"hello world\"); Why another library? There are 2 main reasons that explain why IXWebSocket got written. First, we needed a C++ cross-platform client library, which should have few dependencies. What looked like the most solid one, websocketpp did depend on boost and this was not an option for us. Secondly, there were other available libraries with fewer dependencies (C ones), but they required calling an explicit poll routine periodically to know if a client had received data from a server, which was not elegant. We started by solving those 2 problems, then we added server websocket code, then an HTTP client, and finally a very simple HTTP server. Contributing IXWebSocket is developed on GitHub . We'd love to hear about how you use it; opening up an issue on GitHub is ok for that. If things don't work as expected, please create an issue on GitHub, or even better a pull request if you know how to fix your problem.","title":"Home"},{"location":"#introduction","text":"WebSocket is a computer communications protocol, providing full-duplex and bi-directionnal communication channels over a single TCP connection. IXWebSocket is a C++ library for client and server Websocket communication, and for client and server HTTP communication. TLS aka SSL is supported. The code is derived from easywsclient and from the Satori C SDK . It has been tested on the following platforms. macOS iOS Linux Android Windows FreeBSD","title":"Introduction"},{"location":"#example-code","text":"// Required on Windows ix::initNetSystem(); // Our websocket object ix::WebSocket webSocket; std::string url(\"ws://localhost:8080/\"); webSocket.setUrl(url); // Setup a callback to be fired when a message or an event (open, close, error) is received webSocket.setOnMessageCallback([](const ix::WebSocketMessagePtr& msg) { if (msg->type == ix::WebSocketMessageType::Message) { std::cout << msg->str << std::endl; } } ); // Now that our callback is setup, we can start our background thread and receive messages webSocket.start(); // Send a message to the server (default to TEXT mode) webSocket.send(\"hello world\");","title":"Example code"},{"location":"#why-another-library","text":"There are 2 main reasons that explain why IXWebSocket got written. First, we needed a C++ cross-platform client library, which should have few dependencies. What looked like the most solid one, websocketpp did depend on boost and this was not an option for us. Secondly, there were other available libraries with fewer dependencies (C ones), but they required calling an explicit poll routine periodically to know if a client had received data from a server, which was not elegant. We started by solving those 2 problems, then we added server websocket code, then an HTTP client, and finally a very simple HTTP server.","title":"Why another library?"},{"location":"#contributing","text":"IXWebSocket is developed on GitHub . We'd love to hear about how you use it; opening up an issue on GitHub is ok for that. If things don't work as expected, please create an issue on GitHub, or even better a pull request if you know how to fix your problem.","title":"Contributing"},{"location":"CHANGELOG/","text":"Changelog All notable changes to this project will be documented in this file. [7.6.3] - 2019-12-20 (tls) add a simple description of the TLS configuration routine for debugging [7.6.2] - 2019-12-20 (mbedtls) correct support for using own certificate and private key [7.6.1] - 2019-12-20 (ws commands) in websocket proxy, disable automatic reconnections + in Dockerfile, use alpine 3.11 [7.6.0] - 2019-12-19 (cobra) Add TLS options to all cobra commands and classes. Add example to the doc. [7.5.8] - 2019-12-18 (cobra-to-sentry) capture application version from device field [7.5.7] - 2019-12-18 (tls) Experimental TLS server support with mbedtlLine truncated {"config":{"lang":["en"],"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"Introduction WebSocket is a computer communications protocol, providing full-duplex and bi-directionnal communication channels over a single TCP connection. IXWebSocket is a C++ library for client and server Websocket communication, and for client and server HTTP communication. TLS aka SSL is supported. The code is derived from easywsclient and from the Satori C SDK . It has been tested on the following platforms. macOS iOS Linux Android Windows FreeBSD Example code // Required on Windows ix::initNetSystem(); // Our websocket object ix::WebSocket webSocket; std::string url(\"ws://localhost:8080/\"); webSocket.setUrl(url); // Setup a callback to be fired when a message or an event (open, close, error) is received webSocket.setOnMessageCallback([](const ix::WebSocketMessagePtr& msg) { if (msg->type == ix::WebSocketMessageType::Message) { std::cout << msg->str << std::endl; } } ); // Now that our callback is setup, we can start our background thread and receive messages webSocket.start(); // Send a message to the server (default to TEXT mode) webSocket.send(\"hello world\"); Why another library? There are 2 main reasons that explain why IXWebSocket got written. First, we needed a C++ cross-platform client library, which should have few dependencies. What looked like the most solid one, websocketpp did depend on boost and this was not an option for us. Secondly, there were other available libraries with fewer dependencies (C ones), but they required calling an explicit poll routine periodically to know if a client had received data from a server, which was not elegant. We started by solving those 2 problems, then we added server websocket code, then an HTTP client, and finally a very simple HTTP server. Contributing IXWebSocket is developed on GitHub . We'd love to hear about how you use it; opening up an issue on GitHub is ok for that. If things don't work as expected, please create an issue on GitHub, or even better a pull request if you know how to fix your problem.","title":"Home"},{"location":"#introduction","text":"WebSocket is a computer communications protocol, providing full-duplex and bi-directionnal communication channels over a single TCP connection. IXWebSocket is a C++ library for client and server Websocket communication, and for client and server HTTP communication. TLS aka SSL is supported. The code is derived from easywsclient and from the Satori C SDK . It has been tested on the following platforms. macOS iOS Linux Android Windows FreeBSD","title":"Introduction"},{"location":"#example-code","text":"// Required on Windows ix::initNetSystem(); // Our websocket object ix::WebSocket webSocket; std::string url(\"ws://localhost:8080/\"); webSocket.setUrl(url); // Setup a callback to be fired when a message or an event (open, close, error) is received webSocket.setOnMessageCallback([](const ix::WebSocketMessagePtr& msg) { if (msg->type == ix::WebSocketMessageType::Message) { std::cout << msg->str << std::endl; } } ); // Now that our callback is setup, we can start our background thread and receive messages webSocket.start(); // Send a message to the server (default to TEXT mode) webSocket.send(\"hello world\");","title":"Example code"},{"location":"#why-another-library","text":"There are 2 main reasons that explain why IXWebSocket got written. First, we needed a C++ cross-platform client library, which should have few dependencies. What looked like the most solid one, websocketpp did depend on boost and this was not an option for us. Secondly, there were other available libraries with fewer dependencies (C ones), but they required calling an explicit poll routine periodically to know if a client had received data from a server, which was not elegant. We started by solving those 2 problems, then we added server websocket code, then an HTTP client, and finally a very simple HTTP server.","title":"Why another library?"},{"location":"#contributing","text":"IXWebSocket is developed on GitHub . We'd love to hear about how you use it; opening up an issue on GitHub is ok for that. If things don't work as expected, please create an issue on GitHub, or even better a pull request if you know how to fix your problem.","title":"Contributing"},{"location":"CHANGELOG/","text":"Changelog All changes to this project will be documented in this file. [7.8.2] - 2019-12-25 (ws cobra to sentry) bound the queue size used to hold up cobra messages before they are sent to sentry. Default queue size is a 100 messages. Without such limit the program runs out of memory when a subscriber receive a lot of messages that cannot make it to sentry [7.8.1] - 2019-12-25 (ws client) use correct compilation defines so that spdlog is not used as a header only library (reduce binary size and increase compilation speed) [7.8.0] - 2019-12-24 (ws client) all commands use spdlog instead of std::cerr or std::cout for logging [7.6.5] - 2019-Line truncated
+7 -7
View File
@@ -2,37 +2,37 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
<url> <url>
<loc>None</loc> <loc>None</loc>
<lastmod>2019-12-20</lastmod> <lastmod>2019-12-25</lastmod>
<changefreq>daily</changefreq> <changefreq>daily</changefreq>
</url> </url>
</urlset> </urlset>
BIN
View File
Binary file not shown.
+2 -2
View File
@@ -329,7 +329,7 @@ Options:
<h2 id="cobra-client-and-server">Cobra client and server</h2> <h2 id="cobra-client-and-server">Cobra client and server</h2>
<p><a href="https://github.com/machinezone/cobra">cobra</a> is a real time messenging server. ws has several sub-command to interact with cobra. There is also a minimal cobra compatible server named snake available.</p> <p><a href="https://github.com/machinezone/cobra">cobra</a> is a real time messenging server. ws has several sub-command to interact with cobra. There is also a minimal cobra compatible server named snake available.</p>
<p>Below are examples on running a snake server and clients with TLS enabled (the server only works with the OpenSSL backend for now).</p> <p>Below are examples on running a snake server and clients with TLS enabled (the server only works with the OpenSSL and the Mbed TLS backend for now).</p>
<p>First, generate certificates.</p> <p>First, generate certificates.</p>
<pre><code>$ cd /path/to/IXWebSocket <pre><code>$ cd /path/to/IXWebSocket
$ cd ixsnake/ixsnake $ cd ixsnake/ixsnake
@@ -439,7 +439,7 @@ $ ws cobra_publish --endpoint wss://127.0.0.1:8765 --appkey FC2F10139A2BAc53BB72
[2019-12-19 20:46:42.659] [info] Published message id 3 acked [2019-12-19 20:46:42.659] [info] Published message id 3 acked
</code></pre> </code></pre>
<p>To use OpenSSL on macOS, compile with <code>make ws_openssl</code>. First you will have to install OpenSSL libraries, which can be done with Homebrew.</p></div> <p>To use OpenSSL on macOS, compile with <code>make ws_openssl</code>. First you will have to install OpenSSL libraries, which can be done with Homebrew. Use <code>make ws_mbedtls</code> accordingly to use MbedTLS.</p></div>
</div> </div>
<footer class="col-md-12"> <footer class="col-md-12">