Deployed 6054dd4 with MkDocs version: 1.0.4

This commit is contained in:
Benjamin Sergeant 2019-11-27 09:10:09 -08:00
parent f9ca44b474
commit f0600152f7
11 changed files with 321 additions and 10 deletions

View File

@ -55,6 +55,9 @@
<li >
<a href="/build/">Build</a>
</li>
<li >
<a href="/cobra/">Cobra</a>
</li>
<li >
<a href="/design/">Design</a>
</li>

View File

@ -55,6 +55,9 @@
<li >
<a href="../build/">Build</a>
</li>
<li >
<a href="../cobra/">Cobra</a>
</li>
<li >
<a href="../design/">Design</a>
</li>
@ -91,6 +94,11 @@
<div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
<ul class="nav bs-sidenav">
<li class="main active"><a href="#changelog">Changelog</a></li>
<li><a href="#740-2019-11-25">[7.4.0] - 2019-11-25</a></li>
<li><a href="#735-2019-11-20">[7.3.5] - 2019-11-20</a></li>
<li><a href="#734-2019-11-20">[7.3.4] - 2019-11-20</a></li>
<li><a href="#731-2019-11-16">[7.3.1] - 2019-11-16</a></li>
<li><a href="#730-2019-11-15">[7.3.0] - 2019-11-15</a></li>
<li><a href="#722-2019-11-01">[7.2.2] - 2019-11-01</a></li>
<li><a href="#721-2019-10-26">[7.2.1] - 2019-10-26</a></li>
<li><a href="#720-2019-10-24">[7.2.0] - 2019-10-24</a></li>
@ -143,6 +151,27 @@
<h1 id="changelog">Changelog</h1>
<p>All notable changes to this project will be documented in this file.</p>
<h2 id="740-2019-11-25">[7.4.0] - 2019-11-25</h2>
<ul>
<li>(http client) Add support for multipart HTTP POST upload</li>
<li>(ixsentry) Add support for uploading a minidump to sentry</li>
</ul>
<h2 id="735-2019-11-20">[7.3.5] - 2019-11-20</h2>
<ul>
<li>On Darwin SSL, add ability to skip peer verification.</li>
</ul>
<h2 id="734-2019-11-20">[7.3.4] - 2019-11-20</h2>
<ul>
<li>32-bits compile fix, courtesy of @fcojavmc</li>
</ul>
<h2 id="731-2019-11-16">[7.3.1] - 2019-11-16</h2>
<ul>
<li>ws proxy_server / remote server close not forwarded to the client</li>
</ul>
<h2 id="730-2019-11-15">[7.3.0] - 2019-11-15</h2>
<ul>
<li>New ws command: <code>ws proxy_server</code>.</li>
</ul>
<h2 id="722-2019-11-01">[7.2.2] - 2019-11-01</h2>
<ul>
<li>Tag a release + minor reformating.</li>

View File

@ -55,6 +55,9 @@
<li class="active">
<a href="./">Build</a>
</li>
<li >
<a href="../cobra/">Cobra</a>
</li>
<li >
<a href="../design/">Design</a>
</li>
@ -78,7 +81,7 @@
</a>
</li>
<li >
<a rel="prev" href="../design/">
<a rel="prev" href="../cobra/">
Next <i class="fa fa-arrow-right"></i>
</a>
</li>

252
cobra/index.html Normal file
View File

@ -0,0 +1,252 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="../img/favicon.ico">
<title>Cobra - IXWebSocket</title>
<link href="../css/bootstrap-custom.min.css" rel="stylesheet">
<link href="../css/font-awesome.min.css" rel="stylesheet">
<link href="../css/base.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/github.min.css">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<script src="../js/jquery-1.10.2.min.js" defer></script>
<script src="../js/bootstrap-3.0.3.min.js" defer></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
</head>
<body>
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<!-- Collapsed navigation -->
<div class="navbar-header">
<!-- Expander button -->
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="..">IXWebSocket</a>
</div>
<!-- Expanded navigation -->
<div class="navbar-collapse collapse">
<!-- Main navigation -->
<ul class="nav navbar-nav">
<li >
<a href="..">Home</a>
</li>
<li >
<a href="../CHANGELOG/">Changelog</a>
</li>
<li >
<a href="../build/">Build</a>
</li>
<li class="active">
<a href="./">Cobra</a>
</li>
<li >
<a href="../design/">Design</a>
</li>
<li >
<a href="../usage/">Examples</a>
</li>
<li >
<a href="../ws/">Ws</a>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li>
<a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
<i class="fa fa-search"></i> Search
</a>
</li>
<li >
<a rel="next" href="../build/">
<i class="fa fa-arrow-left"></i> Previous
</a>
</li>
<li >
<a rel="prev" href="../design/">
Next <i class="fa fa-arrow-right"></i>
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="container">
<div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
<ul class="nav bs-sidenav">
<li class="main active"><a href="#general">General</a></li>
<li><a href="#server">Server</a></li>
<li><a href="#publisher">Publisher</a></li>
<li><a href="#subscriber">Subscriber</a></li>
</ul>
</div></div>
<div class="col-md-9" role="main">
<h2 id="general">General</h2>
<p>cobra is a real time messaging server. The <code>ws</code> utility can run a cobra server (named snake), and has client to publish and subscribe to a cobra server.</p>
<p>Bring up 3 terminals and run a server, a publisher and a subscriber in each one. As you publish data you should see it being received by the subscriber. You can run <code>redis-cli MONITOR</code> too to see how redis is being used.</p>
<h3 id="server">Server</h3>
<p>You will need to have a redis server running locally. To run the server:</p>
<pre><code>$ cd &lt;ixwebsocket-top-level-folder&gt;/ixsnake/ixsnake
$ ws snake
{
&quot;apps&quot;: {
&quot;FC2F10139A2BAc53BB72D9db967b024f&quot;: {
&quot;roles&quot;: {
&quot;_sub&quot;: {
&quot;secret&quot;: &quot;66B1dA3ED5fA074EB5AE84Dd8CE3b5ba&quot;
},
&quot;_pub&quot;: {
&quot;secret&quot;: &quot;1c04DB8fFe76A4EeFE3E318C72d771db&quot;
}
}
}
}
}
redis host: 127.0.0.1
redis password:
redis port: 6379
</code></pre>
<h3 id="publisher">Publisher</h3>
<pre><code>$ ws cobra_publish --appkey FC2F10139A2BAc53BB72D9db967b024f --endpoint ws://127.0.0.1:8008 --rolename _pub --rolesecret 1c04DB8fFe76A4EeFE3E318C72d771db test_channel cobraMetricsSample.json
[2019-11-27 09:06:12.980] [info] Publisher connected
[2019-11-27 09:06:12.980] [info] Connection: Upgrade
[2019-11-27 09:06:12.980] [info] Sec-WebSocket-Accept: zTtQKMKbvwjdivURplYXwCVUCWM=
[2019-11-27 09:06:12.980] [info] Sec-WebSocket-Extensions: permessage-deflate; server_max_window_bits=15; client_max_window_bits=15
[2019-11-27 09:06:12.980] [info] Server: ixwebsocket/7.4.0 macos ssl/DarwinSSL zlib 1.2.11
[2019-11-27 09:06:12.980] [info] Upgrade: websocket
[2019-11-27 09:06:12.982] [info] Publisher authenticated
[2019-11-27 09:06:12.982] [info] Published msg 3
[2019-11-27 09:06:12.982] [info] Published message id 3 acked
</code></pre>
<h3 id="subscriber">Subscriber</h3>
<pre><code>$ ws cobra_subscribe --appkey FC2F10139A2BAc53BB72D9db967b024f --endpoint ws://127.0.0.1:8008 --rolename _pub --rolesecret 1c04DB8fFe76A4EeFE3E318C72d771db test_channel
#messages 0 msg/s 0
[2019-11-27 09:07:39.341] [info] Subscriber connected
[2019-11-27 09:07:39.341] [info] Connection: Upgrade
[2019-11-27 09:07:39.341] [info] Sec-WebSocket-Accept: 9vkQWofz49qMCUlTSptCCwHWm+Q=
[2019-11-27 09:07:39.341] [info] Sec-WebSocket-Extensions: permessage-deflate; server_max_window_bits=15; client_max_window_bits=15
[2019-11-27 09:07:39.341] [info] Server: ixwebsocket/7.4.0 macos ssl/DarwinSSL zlib 1.2.11
[2019-11-27 09:07:39.341] [info] Upgrade: websocket
[2019-11-27 09:07:39.342] [info] Subscriber authenticated
[2019-11-27 09:07:39.345] [info] Subscriber: subscribed to channel test_channel
#messages 0 msg/s 0
#messages 0 msg/s 0
#messages 0 msg/s 0
{&quot;baz&quot;:123,&quot;foo&quot;:&quot;bar&quot;}
#messages 1 msg/s 1
#messages 1 msg/s 0
#messages 1 msg/s 0
{&quot;baz&quot;:123,&quot;foo&quot;:&quot;bar&quot;}
{&quot;baz&quot;:123,&quot;foo&quot;:&quot;bar&quot;}
#messages 3 msg/s 2
#messages 3 msg/s 0
{&quot;baz&quot;:123,&quot;foo&quot;:&quot;bar&quot;}
#messages 4 msg/s 1
^C
</code></pre></div>
</div>
<footer class="col-md-12">
<hr>
<p>Documentation built with <a href="https://www.mkdocs.org/">MkDocs</a>.</p>
</footer>
<script>
var base_url = "..",
shortcuts = {"help": 191, "next": 78, "previous": 80, "search": 83};
</script>
<script src="../js/base.js" defer></script>
<script src="../search/main.js" defer></script>
<div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="exampleModalLabel">Search</h4>
</div>
<div class="modal-body">
<p>
From here you can search these documents. Enter
your search terms below.
</p>
<form role="form">
<div class="form-group">
<input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query" title="Type search term here">
</div>
</form>
<div id="mkdocs-search-results"></div>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div><div class="modal" id="mkdocs_keyboard_modal" tabindex="-1" role="dialog" aria-labelledby="Keyboard Shortcuts Modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="exampleModalLabel">Keyboard Shortcuts</h4>
</div>
<div class="modal-body">
<table class="table">
<thead>
<tr>
<th style="width: 20%;">Keys</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td class="help shortcut"><kbd>?</kbd></td>
<td>Open this help</td>
</tr>
<tr>
<td class="next shortcut"><kbd>n</kbd></td>
<td>Next page</td>
</tr>
<tr>
<td class="prev shortcut"><kbd>p</kbd></td>
<td>Previous page</td>
</tr>
<tr>
<td class="search shortcut"><kbd>s</kbd></td>
<td>Search</td>
</tr>
</tbody>
</table>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
</body>
</html>

View File

@ -55,6 +55,9 @@
<li >
<a href="../build/">Build</a>
</li>
<li >
<a href="../cobra/">Cobra</a>
</li>
<li class="active">
<a href="./">Design</a>
</li>
@ -73,7 +76,7 @@
</a>
</li>
<li >
<a rel="next" href="../build/">
<a rel="next" href="../cobra/">
<i class="fa fa-arrow-left"></i> Previous
</a>
</li>

View File

@ -55,6 +55,9 @@
<li >
<a href="build/">Build</a>
</li>
<li >
<a href="cobra/">Cobra</a>
</li>
<li >
<a href="design/">Design</a>
</li>
@ -223,5 +226,5 @@ webSocket.send(&quot;hello world&quot;);
<!--
MkDocs version : 1.0.4
Build Date UTC : 2019-11-13 22:27:15
Build Date UTC : 2019-11-27 17:10:08
-->

File diff suppressed because one or more lines are too long

View File

@ -2,32 +2,37 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>None</loc>
<lastmod>2019-11-13</lastmod>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>None</loc>
<lastmod>2019-11-13</lastmod>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>None</loc>
<lastmod>2019-11-13</lastmod>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>None</loc>
<lastmod>2019-11-13</lastmod>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>None</loc>
<lastmod>2019-11-13</lastmod>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>None</loc>
<lastmod>2019-11-13</lastmod>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>None</loc>
<lastmod>2019-11-27</lastmod>
<changefreq>daily</changefreq>
</url>
</urlset>

Binary file not shown.

View File

@ -55,6 +55,9 @@
<li >
<a href="../build/">Build</a>
</li>
<li >
<a href="../cobra/">Cobra</a>
</li>
<li >
<a href="../design/">Design</a>
</li>

View File

@ -55,6 +55,9 @@
<li >
<a href="../build/">Build</a>
</li>
<li >
<a href="../cobra/">Cobra</a>
</li>
<li >
<a href="../design/">Design</a>
</li>
@ -93,6 +96,7 @@
<li class="main active"><a href="#general">General</a></li>
<li class="main "><a href="#curl">curl</a></li>
<li class="main "><a href="#connect">connect</a></li>
<li class="main "><a href="#websocket-proxy">Websocket proxy</a></li>
<li class="main "><a href="#file-transfer">File transfer</a></li>
<li class="main "><a href="#http-client">HTTP Client</a></li>
<li class="main "><a href="#cobra-client">Cobra Client</a></li>
@ -282,6 +286,12 @@ Server: Python/3.7 websockets/8.0.2
Upgrade: websocket
</code></pre>
<h2 id="websocket-proxy">Websocket proxy</h2>
<pre><code>ws proxy_server --remote_host ws://127.0.0.1:9000 -v
Listening on 127.0.0.1:8008
</code></pre>
<p>If you connect to ws://127.0.0.1:8008, the proxy will connect to ws://127.0.0.1:9000 and pass all traffic to this server.</p>
<h2 id="file-transfer">File transfer</h2>
<pre><code># Start transfer server, which is just a broadcast server at this point
ws transfer # running on port 8080.