aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--_sources/protocol.txt6
-rw-r--r--contributing.html4
-rw-r--r--exceptions.html11
-rw-r--r--genindex.html12
-rw-r--r--jobmanager.html27
-rw-r--r--objects.invbin726 -> 745 bytes
-rw-r--r--protocol.html14
-rw-r--r--router.html2
-rw-r--r--searchindex.js2
-rw-r--r--sender.html23
10 files changed, 84 insertions, 17 deletions
diff --git a/_sources/protocol.txt b/_sources/protocol.txt
index c32501c..86491dc 100644
--- a/_sources/protocol.txt
+++ b/_sources/protocol.txt
@@ -57,6 +57,7 @@ FRAME Value Description
571 eMQP/1.0 Protocol version 571 eMQP/1.0 Protocol version
582 ACK command 582 ACK command
593 _MSGID_ A unique id for the msg 593 _MSGID_ A unique id for the msg
604 _MSGID_ The message id of the message this ACK is acknowledging
60====== ============== =========== 61====== ============== ===========
61 62
62eMQP / Client 63eMQP / Client
@@ -135,6 +136,7 @@ FRAME Value Description
1351 eMQP/1.0 Protocol version 1361 eMQP/1.0 Protocol version
1362 HEARTBEAT command 1372 HEARTBEAT command
1373 _MSGID_ A unique id for the msg 1383 _MSGID_ A unique id for the msg
1394 _UNIX_TS_ A unix timestamp
138====== ============== =========== 140====== ============== ===========
139 141
140A **DISCONNECT** frame consists of 142A **DISCONNECT** frame consists of
@@ -165,7 +167,7 @@ Below is a table which defines and describes the headers.
165=============== ======= ======= ======= =========== 167=============== ======= ======= ======= ===========
166Header REQUEST PUBLISH Default Description 168Header REQUEST PUBLISH Default Description
167=============== ======= ======= ======= =========== 169=============== ======= ======= ======= ===========
168reply-requested X False Once the job is finished, send a reply back with information from the job. If there is no information reply with a True value. 170reply-requested X False Once the job is finished, send a reply back with information from the job. If there is no information reply with a True value.
169retry-count:# X 0 Retry a failed job this many times before accepting defeat. 171retry-count:# X 0 Retry a failed job this many times before accepting defeat.
170guarantee X False Ensure the job completes by letting someone else worry about a success reply. 172guarantee X False Ensure the job completes by letting someone else worry about a success reply.
171=============== ======= ======= ======= =========== 173=============== ======= ======= ======= ===========
diff --git a/contributing.html b/contributing.html
index 04c9e91..e618bf3 100644
--- a/contributing.html
+++ b/contributing.html
@@ -32,7 +32,7 @@
32 32
33 <link rel="top" title="EventMQ 0 documentation" href="index.html"/> 33 <link rel="top" title="EventMQ 0 documentation" href="index.html"/>
34 <link rel="next" title="EventMQ Protocol Specification" href="protocol.html"/> 34 <link rel="next" title="EventMQ Protocol Specification" href="protocol.html"/>
35 <link rel="prev" title="exceptions – Exceptions" href="exceptions.html"/> 35 <link rel="prev" title="messages – Message Utilities" href="utils/messages.html"/>
36 36
37 37
38 <script src="_static/js/modernizr.min.js"></script> 38 <script src="_static/js/modernizr.min.js"></script>
@@ -160,7 +160,7 @@
160 <a href="protocol.html" class="btn btn-neutral float-right" title="EventMQ Protocol Specification" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 160 <a href="protocol.html" class="btn btn-neutral float-right" title="EventMQ Protocol Specification" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
161 161
162 162
163 <a href="exceptions.html" class="btn btn-neutral" title="exceptions – Exceptions" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 163 <a href="utils/messages.html" class="btn btn-neutral" title="messages – Message Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
164 164
165 </div> 165 </div>
166 166
diff --git a/exceptions.html b/exceptions.html
index aa5d33e..54ea13a 100644
--- a/exceptions.html
+++ b/exceptions.html
@@ -32,8 +32,8 @@
32 32
33 <link rel="top" title="EventMQ 0 documentation" href="index.html"/> 33 <link rel="top" title="EventMQ 0 documentation" href="index.html"/>
34 <link rel="up" title="API Documentation" href="api.html"/> 34 <link rel="up" title="API Documentation" href="api.html"/>
35 <link rel="next" title="Contributing to EventMQ" href="contributing.html"/> 35 <link rel="next" title="jobmanager – Job Manager" href="jobmanager.html"/>
36 <link rel="prev" title="utils – Utilities" href="utils.html"/> 36 <link rel="prev" title="API Documentation" href="api.html"/>
37 37
38 38
39 <script src="_static/js/modernizr.min.js"></script> 39 <script src="_static/js/modernizr.min.js"></script>
@@ -84,12 +84,13 @@
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
87<li class="toctree-l2"><a class="reference internal" href="jobmanager.html"><code class="docutils literal"><span class="pre">jobmanager</span></code> &#8211; Job Manager</a></li> 88<li class="toctree-l2"><a class="reference internal" href="jobmanager.html"><code class="docutils literal"><span class="pre">jobmanager</span></code> &#8211; Job Manager</a></li>
89<li class="toctree-l2"><a class="reference internal" href="poller.html"><code class="docutils literal"><span class="pre">poller</span></code> &#8211; Poller</a></li>
88<li class="toctree-l2"><a class="reference internal" href="receiver.html"><code class="docutils literal"><span class="pre">receiver</span></code> &#8211; Receiver</a></li> 90<li class="toctree-l2"><a class="reference internal" href="receiver.html"><code class="docutils literal"><span class="pre">receiver</span></code> &#8211; Receiver</a></li>
89<li class="toctree-l2"><a class="reference internal" href="router.html"><code class="docutils literal"><span class="pre">router</span></code> &#8211; Router</a></li> 91<li class="toctree-l2"><a class="reference internal" href="router.html"><code class="docutils literal"><span class="pre">router</span></code> &#8211; Router</a></li>
90<li class="toctree-l2"><a class="reference internal" href="sender.html"><code class="docutils literal"><span class="pre">sender</span></code> &#8211; Sender</a></li> 92<li class="toctree-l2"><a class="reference internal" href="sender.html"><code class="docutils literal"><span class="pre">sender</span></code> &#8211; Sender</a></li>
91<li class="toctree-l2"><a class="reference internal" href="utils.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li> 93<li class="toctree-l2"><a class="reference internal" href="utils.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
92<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
93</ul> 94</ul>
94</li> 95</li>
95<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 96<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -170,10 +171,10 @@ be subclasses of <a class="reference internal" href="#eventmq.exceptions.EventMQ
170 171
171 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> 172 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
172 173
173 <a href="contributing.html" class="btn btn-neutral float-right" title="Contributing to EventMQ" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 174 <a href="jobmanager.html" class="btn btn-neutral float-right" title="jobmanager – Job Manager" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
174 175
175 176
176 <a href="utils.html" class="btn btn-neutral" title="utils – Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 177 <a href="api.html" class="btn btn-neutral" title="API Documentation" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
177 178
178 </div> 179 </div>
179 180
diff --git a/genindex.html b/genindex.html
index 23f279b..8498497 100644
--- a/genindex.html
+++ b/genindex.html
@@ -396,6 +396,10 @@
396 396
397 </dl></dd> 397 </dl></dd>
398 398
399 <dt><a href="sender.html#eventmq.sender.Sender.rebuild">rebuild() (eventmq.sender.Sender method)</a>
400 </dt>
401
402
399 <dt><a href="receiver.html#eventmq.receiver.Receiver">Receiver (class in eventmq.receiver)</a> 403 <dt><a href="receiver.html#eventmq.receiver.Receiver">Receiver (class in eventmq.receiver)</a>
400 </dt> 404 </dt>
401 405
@@ -414,6 +418,10 @@
414 </dt> 418 </dt>
415 419
416 420
421 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager.restart">restart() (eventmq.jobmanager.JobManager method)</a>
422 </dt>
423
424
417 <dt><a href="router.html#eventmq.router.Router">Router (class in eventmq.router)</a> 425 <dt><a href="router.html#eventmq.router.Router">Router (class in eventmq.router)</a>
418 </dt> 426 </dt>
419 427
@@ -439,6 +447,10 @@
439 <dt><a href="utils/messages.html#eventmq.utils.messages.send_emqp_router_message">send_emqp_router_message() (in module eventmq.utils.messages)</a> 447 <dt><a href="utils/messages.html#eventmq.utils.messages.send_emqp_router_message">send_emqp_router_message() (in module eventmq.utils.messages)</a>
440 </dt> 448 </dt>
441 449
450
451 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager.send_heartbeat">send_heartbeat() (eventmq.jobmanager.JobManager method)</a>
452 </dt>
453
442 </dl></td> 454 </dl></td>
443 <td style="width: 33%" valign="top"><dl> 455 <td style="width: 33%" valign="top"><dl>
444 456
diff --git a/jobmanager.html b/jobmanager.html
index afd9cf6..3733755 100644
--- a/jobmanager.html
+++ b/jobmanager.html
@@ -175,7 +175,7 @@ generated.</td>
175 175
176<dl class="method"> 176<dl class="method">
177<dt id="eventmq.jobmanager.JobManager.on_ack"> 177<dt id="eventmq.jobmanager.JobManager.on_ack">
178<code class="descname">on_ack</code><span class="sig-paren">(</span><em>msgid</em>, <em>message</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.on_ack" title="Permalink to this definition">¶</a></dt> 178<code class="descname">on_ack</code><span class="sig-paren">(</span><em>msgid</em>, <em>ackd_msgid</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.on_ack" title="Permalink to this definition">¶</a></dt>
179<dd><p>Sets <code class="xref py py-attr docutils literal"><span class="pre">awaiting_ack</span></code> to False</p> 179<dd><p>Sets <code class="xref py py-attr docutils literal"><span class="pre">awaiting_ack</span></code> to False</p>
180</dd></dl> 180</dd></dl>
181 181
@@ -183,12 +183,33 @@ generated.</td>
183<dt id="eventmq.jobmanager.JobManager.process_message"> 183<dt id="eventmq.jobmanager.JobManager.process_message">
184<code class="descname">process_message</code><span class="sig-paren">(</span><em>msg</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.process_message" title="Permalink to this definition">¶</a></dt> 184<code class="descname">process_message</code><span class="sig-paren">(</span><em>msg</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.process_message" title="Permalink to this definition">¶</a></dt>
185<dd><p>Processes a message</p> 185<dd><p>Processes a message</p>
186<table class="docutils field-list" frame="void" rules="none">
187<col class="field-name" />
188<col class="field-body" />
189<tbody valign="top">
190<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>msg</strong> &#8211; The message received from the socket to parse and process.
191Processing takes form of calling an <cite>on_COMMAND</cite> method.</td>
192</tr>
193</tbody>
194</table>
195</dd></dl>
196
197<dl class="method">
198<dt id="eventmq.jobmanager.JobManager.restart">
199<code class="descname">restart</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.restart" title="Permalink to this definition">¶</a></dt>
200<dd><p>Restarts the current connection by closing and reopening the socket</p>
201</dd></dl>
202
203<dl class="method">
204<dt id="eventmq.jobmanager.JobManager.send_heartbeat">
205<code class="descname">send_heartbeat</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.send_heartbeat" title="Permalink to this definition">¶</a></dt>
206<dd><p>Send a HEARTBEAT command to the connected broker</p>
186</dd></dl> 207</dd></dl>
187 208
188<dl class="method"> 209<dl class="method">
189<dt id="eventmq.jobmanager.JobManager.send_inform"> 210<dt id="eventmq.jobmanager.JobManager.send_inform">
190<code class="descname">send_inform</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.send_inform" title="Permalink to this definition">¶</a></dt> 211<code class="descname">send_inform</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.send_inform" title="Permalink to this definition">¶</a></dt>
191<dd><p>Send an INFORM frame</p> 212<dd><p>Send an INFORM command</p>
192</dd></dl> 213</dd></dl>
193 214
194<dl class="method"> 215<dl class="method">
@@ -199,7 +220,7 @@ generated.</td>
199<col class="field-name" /> 220<col class="field-name" />
200<col class="field-body" /> 221<col class="field-body" />
201<tbody valign="top"> 222<tbody valign="top">
202<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>args</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; connection string to connect to</td> 223<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>addr</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; connection string to connect to</td>
203</tr> 224</tr>
204</tbody> 225</tbody>
205</table> 226</table>
diff --git a/objects.inv b/objects.inv
index 1f3d4b9..8d67088 100644
--- a/objects.inv
+++ b/objects.inv
Binary files differ
diff --git a/protocol.html b/protocol.html
index 9c0994b..f73208b 100644
--- a/protocol.html
+++ b/protocol.html
@@ -196,9 +196,9 @@
196<p>An <strong>ACK</strong> command consists of a 4-frame multipart message, formatted as follows.</p> 196<p>An <strong>ACK</strong> command consists of a 4-frame multipart message, formatted as follows.</p>
197<table border="1" class="docutils"> 197<table border="1" class="docutils">
198<colgroup> 198<colgroup>
199<col width="14%" /> 199<col width="8%" />
200<col width="33%" /> 200<col width="19%" />
201<col width="53%" /> 201<col width="73%" />
202</colgroup> 202</colgroup>
203<thead valign="bottom"> 203<thead valign="bottom">
204<tr class="row-odd"><th class="head">FRAME</th> 204<tr class="row-odd"><th class="head">FRAME</th>
@@ -223,6 +223,10 @@
223<td>_MSGID_</td> 223<td>_MSGID_</td>
224<td>A unique id for the msg</td> 224<td>A unique id for the msg</td>
225</tr> 225</tr>
226<tr class="row-even"><td>4</td>
227<td>_MSGID_</td>
228<td>The message id of the message this ACK is acknowledging</td>
229</tr>
226</tbody> 230</tbody>
227</table> 231</table>
228</div> 232</div>
@@ -453,6 +457,10 @@
453<td>_MSGID_</td> 457<td>_MSGID_</td>
454<td>A unique id for the msg</td> 458<td>A unique id for the msg</td>
455</tr> 459</tr>
460<tr class="row-even"><td>4</td>
461<td>_UNIX_TS_</td>
462<td>A unix timestamp</td>
463</tr>
456</tbody> 464</tbody>
457</table> 465</table>
458<p>A <strong>DISCONNECT</strong> frame consists of</p> 466<p>A <strong>DISCONNECT</strong> frame consists of</p>
diff --git a/router.html b/router.html
index f1e18a5..930bf38 100644
--- a/router.html
+++ b/router.html
@@ -182,7 +182,7 @@ warning is created.</p>
182 182
183<dl class="method"> 183<dl class="method">
184<dt id="eventmq.router.Router.send_ack"> 184<dt id="eventmq.router.Router.send_ack">
185<code class="descname">send_ack</code><span class="sig-paren">(</span><em>socket</em>, <em>recipient</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.send_ack" title="Permalink to this definition">¶</a></dt> 185<code class="descname">send_ack</code><span class="sig-paren">(</span><em>socket</em>, <em>recipient</em>, <em>msgid</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.send_ack" title="Permalink to this definition">¶</a></dt>
186<dd><p>Sends an ACK response</p> 186<dd><p>Sends an ACK response</p>
187</dd></dl> 187</dd></dl>
188 188
diff --git a/searchindex.js b/searchindex.js
index 4d4f738..aa3a097 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
Search.setIndex({envversion:46,filenames:["api","contributing","exceptions","index","jobmanager","poller","protocol","receiver","router","sender","utils","utils/classes","utils/messages"],objects:{"eventmq.exceptions":{EventMQError:[2,5,1,""],InvalidMessageError:[2,5,1,""],MessageError:[2,5,1,""]},"eventmq.jobmanager":{JobManager:[4,4,1,""]},"eventmq.jobmanager.JobManager":{"__init__":[4,2,1,""],"__weakref__":[4,1,1,""],on_ack:[4,2,1,""],process_message:[4,2,1,""],send_inform:[4,2,1,""],start:[4,2,1,""]},"eventmq.poller":{Poller:[5,4,1,""]},"eventmq.poller.Poller":{"__init__":[5,2,1,""],poll:[5,2,1,""],register:[5,2,1,""],unregister:[5,2,1,""]},"eventmq.receiver":{Receiver:[7,4,1,""]},"eventmq.receiver.Receiver":{"__init__":[7,2,1,""],connect:[7,2,1,""],listen:[7,2,1,""],name:[7,1,1,""],ready:[7,1,1,""],zcontext:[7,1,1,""],zsocket:[7,1,1,""]},"eventmq.router":{Router:[8,4,1,""]},"eventmq.router.Router":{"__weakref__":[8,1,1,""],on_inform:[8,2,1,""],on_receive_reply:[8,2,1,""],on_receive_request:[8,2,1,""],send_ack:[8,2,1,""],start:[8,2,1,""]},"eventmq.sender":{Sender:[9,4,1,""]},"eventmq.sender.Sender":{"__init__":[9,2,1,""],connect:[9,2,1,""],listen:[9,2,1,""],name:[9,1,1,""],ready:[9,1,1,""],zcontext:[9,1,1,""],zsocket:[9,1,1,""]},"eventmq.utils":{classes:[11,0,0,"-"],messages:[12,0,0,"-"],random_characters:[10,3,1,""]},"eventmq.utils.classes":{ZMQReceiveMixin:[11,4,1,""],ZMQSendMixin:[11,4,1,""]},"eventmq.utils.classes.ZMQReceiveMixin":{"__weakref__":[11,1,1,""],recv:[11,2,1,""],recv_multipart:[11,2,1,""]},"eventmq.utils.classes.ZMQSendMixin":{"__weakref__":[11,1,1,""],send:[11,2,1,""],send_multipart:[11,2,1,""]},"eventmq.utils.messages":{generate_msgid:[12,3,1,""],parse_message:[12,3,1,""],parse_router_message:[12,3,1,""],send_emqp_message:[12,3,1,""],send_emqp_router_message:[12,3,1,""]},eventmq:{exceptions:[2,0,0,"-"],jobmanager:[4,0,0,"-"],poller:[5,0,0,"-"],receiver:[7,0,0,"-"],router:[8,0,0,"-"],sender:[9,0,0,"-"],utils:[10,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","attribute","Python attribute"],"2":["py","method","Python method"],"3":["py","function","Python function"],"4":["py","class","Python class"],"5":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:attribute","2":"py:method","3":"py:function","4":"py:class","5":"py:exception"},terms:{"0mq":[6,11],"__init__":[4,5,7,9],"__weakref__":[4,8,11],"_empty_":6,"_headers_":6,"_issu":[],"_msg_":6,"_msgid_":6,"_queue_name_":6,"_recipient_id":11,"_sourc":[],"_topic_name_":6,"abstract":6,"case":6,"class":[5,9],"default":[4,6,7,9],"function":[7,8],"import":1,"int":5,"long":5,"new":8,"public":6,"return":[1,5,7,9,10,12],"true":[6,7,9],"while":6,about:[4,6],absolut:1,accept:6,account:12,ack:[6,8],act:6,actual:4,addr:[4,7,9],address:[],after:6,agre:6,all:[2,4,6,7,9],allow:6,alpha:6,and_data:12,ani:6,api:[],appear:5,applic:6,architectur:[],arg:[4,5,7,8,9,12],attr:5,automat:11,avail:[7,9],awaiting_ack:4,back:6,backend_addr:8,base:[2,5],basi:6,befor:[5,6],begin:[4,8],belong:6,below:6,between:6,bool:[7,9],both:[5,6],broker:6,build:9,built:6,bulid:7,call:[5,7,8],callabl:7,can:[6,12],chang:6,charact:10,check:[7,9],client:[],code:[1,3],com:[],come:8,comma:6,command:[6,12],complet:6,compon:6,connction:[7,9],connect:[4,6,7,8,9,12],consist:6,contain:[6,10],content:[],context:[7,9],convers:6,convienc:[5,11],count:6,creat:[7,8,9,10],csv:6,current:[7,9],data:12,deal:10,dealer:9,debug:6,def:8,defeat:6,defin:[4,6,7,8,9,11],deliv:6,describ:6,descript:6,detail:6,detect:6,determin:6,devic:[5,11,12],dialog:6,dict:5,dictionari:[5,6],differ:1,directli:[5,11],disconnect:6,distribut:6,doesn:5,either:6,els:[1,6],empti:6,emqp:[],encount:2,end:11,enderlab:[],ensur:[4,6],even:6,event:5,eventloop:[4,7,8,9],eventmqerror:2,except:[],execut:6,explicitli:11,expos:4,extra:6,fail:6,fair:6,fals:[4,6,7,9],few:1,field:6,finish:6,first:6,fit:6,flag:5,follow:6,format:[6,12],found:8,foundat:6,frame:[],free:6,from:[2,5,6,8],frontend_addr:8,gener:[4,5,6,7,9,12],generate_msgid:12,github:[],gnu:6,goal:[],good:11,guarante:6,guarente:[],hand:10,handl:[6,8],happen:5,have:12,header:[],heartbeat:[],heavi:6,here:6,hope:6,how:5,html:6,http:6,ident:[6,11],ietf:6,implement:[6,11],impli:6,includ:6,incom:[],index:3,inform:[4,6,8],inherit:2,insert:[6,11],instal:1,instanc:4,interpret:6,interv:6,invalidmessageerror:2,isn:8,issu:[1,3,6],iter:5,job:[],jobmanag:[],kei:[5,6],kwarg:[4,5,7,8,9],languag:[],later:6,least:6,leav:6,length:10,let:6,licens:[],like:[10,11],list:[4,8,11],listen:[4,7,8,9],look:11,loop:5,mai:[6,11],main:4,make:10,malform:2,manag:[],mani:6,manual:6,master:6,merchant:6,messag:[2,6,9,11],message_bodi:12,message_id:12,messageerror:2,meta:12,method:[5,7,8,11],mode:7,modifi:6,modul:[3,10],more:[6,10],msg:[4,6,8,12],msg_id:[],msgid:[4,8],multipart:[6,11],must:[6,11],name:[4,6,7,8,9],next:5,none:[7,9,11,12],note:[4,7,9],object:[4,5,8,11],on_ack:4,on_command:8,on_inform:8,on_receive_repli:8,on_receive_request:8,on_recv:7,onc:6,onli:[7,9],onlin:8,option:[4,6,7,9,12],org:6,orient:6,origin:6,other:6,otherwis:[4,7,9],own:11,page:3,param:[],paramet:[4,5,7,8,9,11,12],pars:12,parse_messag:12,parse_router_messag:12,part:[6,12],particular:[6,9],pass:[6,7,8],peer:6,pictur:6,poll:[5,7,9],poller:[],pollin:5,pollout:5,pool:6,portion:4,possibl:1,practic:11,prefix:12,prepend:6,pretti:6,problem:2,process:[4,6],process_messag:4,prop:[],properti:[7,9],protocol:[],protocol_vers:11,provid:8,pub:6,publish:6,purpos:6,queue:[6,8],rais:[2,7,9,12],random:[10,12],random_charact:10,raw:11,raw_messag:[],readi:[6,7,9],receiv:[],recent:6,reciev:7,recip:[],recipi:[8,11,12],recipient_id:12,recommend:6,recv:11,recv_multipart:11,redistribut:6,refer:[4,8,11],regist:5,regular:6,rel:1,reliabl:6,remain:5,remov:6,rep:7,repli:[6,12],req:9,request:[],requir:[6,7],requri:6,resourc:[4,6],respond:6,respons:[4,7,8,9],restart:6,retri:6,rfc2119:6,rfc:6,robin:6,round:6,rout:[6,8],router:[],run:4,search:3,see:[5,6],self:[],send:[4,6,8,9,11,12],send_ack:8,send_emqp_messag:12,send_emqp_router_messag:12,send_inform:4,send_messag:[],send_multipart:11,send_raw:[],sender:[],sender_id:12,sent:[6,11],seper:6,serv:6,server:[4,6],servic:6,set:[4,5,6,7,9],shall:6,should:[2,5,6,7,9],shown:6,simpl:[8,10],singl:6,skip:[7,9,11],skip_zmqstream:[7,9],socket:[5,6,7,8,9,11,12],softwar:6,some:[10,11,12],someon:6,someth:11,somewher:1,sourc:[1,3],spawn:4,specif:[],specifi:[6,10,11],start:[4,7,8,9],statu:6,stop:6,str:[4,7,8,9,11,12],string:[4,6,7,8,9,12],structur:2,sub:6,subclass:2,subject:6,subset:6,success:6,system:1,take:12,task:4,tcp:[4,8],term:6,them:7,thi:[2,4,5,6,7,8,9,10,11],thing:[4,10,12],through:6,time:6,timeout:5,tip:1,tool:6,topic:[],topolog:[],tornado:[4,8],trace:6,tupl:[5,11,12],type:[6,7,9],typecast:5,typeerror:7,undefin:5,under:6,uniqu:[4,6],univers:[],unless:[4,7,9],unregist:5,unus:7,upon:6,usual:8,uuid:[4,7,9],valid:6,valu:[5,6,12],version:[1,6,11],via:[7,9],wait:5,warn:8,warranti:6,weak:[4,8,11],web:6,well:6,when:[1,2,6,7,8,9,11],where:6,which:6,wish:12,without:6,word:6,work:[1,11],worker:[],worri:6,wrap:[7,9],you:[1,6,11,12],your:[6,11],zcontext:[7,9],zeromq:6,zmq:[5,6,7,9,11,12],zmqreceivemixin:11,zmqsendmixin:11,zmqstream:[7,9],zsocket:[7,9]},titles:["API Documentation","Contributing to EventMQ","<code class=\"docutils literal\"><span class=\"pre\">exceptions</span></code> &#8211; Exceptions","EventMQ Documentation","<code class=\"docutils literal\"><span class=\"pre\">jobmanager</span></code> &#8211; Job Manager","<code class=\"docutils literal\"><span class=\"pre\">poller</span></code> &#8211; Poller","EventMQ Protocol Specification","<code class=\"docutils literal\"><span class=\"pre\">receiver</span></code> &#8211; Receiver","<code class=\"docutils literal\"><span class=\"pre\">router</span></code> &#8211; Router","<code class=\"docutils literal\"><span class=\"pre\">sender</span></code> &#8211; Sender","<code class=\"docutils literal\"><span class=\"pre\">utils</span></code> &#8211; Utilities","<code class=\"docutils literal\"><span class=\"pre\">classes</span></code> &#8211; Utility Classes","<code class=\"docutils literal\"><span class=\"pre\">messages</span></code> &#8211; Message Utilities"],titleterms:{"class":11,address:6,api:0,architectur:6,client:6,contribut:1,document:[0,3],emqp:6,eventmq:[1,3,6],except:2,frame:6,global:6,goal:6,header:6,heartbeat:6,indic:3,job:4,jobmanag:4,languag:6,licens:6,manag:4,messag:12,poller:5,protocol:6,receiv:7,request:6,router:[6,8],sender:9,specif:6,tabl:3,topolog:6,util:[10,11,12],welcom:[],worker:6}}) \ No newline at end of file Search.setIndex({envversion:46,filenames:["api","contributing","exceptions","index","jobmanager","poller","protocol","receiver","router","sender","utils","utils/classes","utils/messages"],objects:{"eventmq.exceptions":{EventMQError:[2,5,1,""],InvalidMessageError:[2,5,1,""],MessageError:[2,5,1,""]},"eventmq.jobmanager":{JobManager:[4,4,1,""]},"eventmq.jobmanager.JobManager":{"__init__":[4,2,1,""],"__weakref__":[4,1,1,""],on_ack:[4,2,1,""],process_message:[4,2,1,""],restart:[4,2,1,""],send_heartbeat:[4,2,1,""],send_inform:[4,2,1,""],start:[4,2,1,""]},"eventmq.poller":{Poller:[5,4,1,""]},"eventmq.poller.Poller":{"__init__":[5,2,1,""],poll:[5,2,1,""],register:[5,2,1,""],unregister:[5,2,1,""]},"eventmq.receiver":{Receiver:[7,4,1,""]},"eventmq.receiver.Receiver":{"__init__":[7,2,1,""],connect:[7,2,1,""],listen:[7,2,1,""],name:[7,1,1,""],ready:[7,1,1,""],zcontext:[7,1,1,""],zsocket:[7,1,1,""]},"eventmq.router":{Router:[8,4,1,""]},"eventmq.router.Router":{"__weakref__":[8,1,1,""],on_inform:[8,2,1,""],on_receive_reply:[8,2,1,""],on_receive_request:[8,2,1,""],send_ack:[8,2,1,""],start:[8,2,1,""]},"eventmq.sender":{Sender:[9,4,1,""]},"eventmq.sender.Sender":{"__init__":[9,2,1,""],connect:[9,2,1,""],listen:[9,2,1,""],name:[9,1,1,""],ready:[9,1,1,""],rebuild:[9,2,1,""],zcontext:[9,1,1,""],zsocket:[9,1,1,""]},"eventmq.utils":{classes:[11,0,0,"-"],messages:[12,0,0,"-"],random_characters:[10,3,1,""]},"eventmq.utils.classes":{ZMQReceiveMixin:[11,4,1,""],ZMQSendMixin:[11,4,1,""]},"eventmq.utils.classes.ZMQReceiveMixin":{"__weakref__":[11,1,1,""],recv:[11,2,1,""],recv_multipart:[11,2,1,""]},"eventmq.utils.classes.ZMQSendMixin":{"__weakref__":[11,1,1,""],send:[11,2,1,""],send_multipart:[11,2,1,""]},"eventmq.utils.messages":{generate_msgid:[12,3,1,""],parse_message:[12,3,1,""],parse_router_message:[12,3,1,""],send_emqp_message:[12,3,1,""],send_emqp_router_message:[12,3,1,""]},eventmq:{exceptions:[2,0,0,"-"],jobmanager:[4,0,0,"-"],poller:[5,0,0,"-"],receiver:[7,0,0,"-"],router:[8,0,0,"-"],sender:[9,0,0,"-"],utils:[10,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","attribute","Python attribute"],"2":["py","method","Python method"],"3":["py","function","Python function"],"4":["py","class","Python class"],"5":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:attribute","2":"py:method","3":"py:function","4":"py:class","5":"py:exception"},terms:{"0mq":[6,11],"__init__":[4,5,7,9],"__weakref__":[4,8,11],"_empty_":6,"_headers_":6,"_issu":[],"_msg_":6,"_msgid_":6,"_queue_name_":6,"_recipient_id":11,"_sourc":[],"_topic_name_":6,"_unix_ts_":6,"abstract":6,"case":6,"class":[],"default":[4,6,7,9],"function":[7,8],"import":1,"int":5,"long":5,"new":8,"public":6,"return":[1,5,7,9,10,12],"true":[6,7,9],"while":6,about:[4,6],absolut:1,accept:6,account:12,ack:[6,8],ackd_msgid:4,acknowledg:6,act:6,actual:4,addr:[4,7,9],address:[],after:6,agre:6,all:[2,4,6,7,9],allow:6,alpha:6,and_data:12,ani:6,api:[],appear:5,applic:6,architectur:[],aren:[],arg:[4,5,7,8,9,12],around:[],attr:5,automat:11,avail:[7,9],awaiting_ack:4,back:6,backend_addr:8,base:[2,5],basi:6,befor:[5,6],begin:[4,8],belong:6,below:6,between:6,bool:[7,9],both:[5,6],broker:[4,6],build:9,built:6,bulid:7,call:[4,5,7,8],callabl:7,can:[6,12],chang:6,charact:10,check:[7,9],client:[],close:4,code:[1,3],com:[],come:8,comma:6,command:[4,6,12],complet:6,compon:6,connction:[7,9],connect:[4,6,7,8,9,12],consist:6,contain:[6,10],content:[],context:[7,9],convers:6,convienc:[5,11],count:6,creat:[7,8,9,10],csv:6,current:[4,7,9],data:12,deal:10,dealer:9,debug:6,def:8,defeat:6,defin:[4,6,7,8,9,11],deliv:6,describ:6,descript:6,detail:6,detect:6,determin:6,devic:[5,11,12],dialog:6,dict:5,dictionari:[5,6],differ:1,directli:[5,11],disconnect:6,distribut:6,doesn:5,dure:9,either:6,els:[1,6],empti:6,emqp:[],encount:2,end:11,enderlab:[],ensur:[4,6],even:6,event:5,eventloop:[4,7,8,9],eventmqerror:2,except:[],execut:6,explicitli:11,expos:4,extra:6,fail:6,fair:6,fals:[4,6,7,9],few:1,field:6,finish:6,first:6,fit:6,flag:5,follow:6,form:4,format:[6,12],found:8,foundat:6,frame:[],free:6,from:[2,4,5,6,8],frontend_addr:8,gener:[4,5,6,7,9,12],generate_msgid:12,github:[],gmtime:[],gnu:6,goal:[],good:11,guarante:6,guarente:[],hand:10,handl:[6,8],happen:[5,9],have:12,header:[],heartbeat:[],heavi:6,here:6,hope:6,how:5,html:6,http:6,ident:[6,11],ietf:6,implement:[6,11],impli:6,includ:6,incom:[],index:3,inform:[4,6,8],inherit:2,insert:[6,11],instal:1,instanc:4,interpret:6,interv:6,invalidmessageerror:2,isn:8,issu:[1,3,6],iter:5,job:[],jobmanag:[],kei:[5,6],kwarg:[4,5,7,8,9],languag:[],later:6,least:6,leav:6,length:10,let:6,licens:[],like:[10,11],list:[4,8,11],listen:[4,7,8,9],look:11,loop:5,mai:[6,11],main:4,make:10,malform:2,manag:[],mani:[6,9],manual:6,master:6,merchant:6,messag:11,message_bodi:12,message_id:12,messageerror:2,meta:12,method:[4,5,7,8,11],mode:7,modifi:6,modul:[3,10],more:[6,10],msg:[4,6,8,12],msg_id:[],msgid:[4,8],multipart:[6,11],must:[6,11],name:[4,6,7,8,9],need:9,next:5,none:[7,9,11,12],note:[4,7,9],object:[4,5,8,11],on_ack:4,on_command:[4,8],on_inform:8,on_receive_repli:8,on_receive_request:8,on_recv:7,onc:6,onli:[7,9],onlin:8,option:[4,6,7,9,12],org:6,orient:6,origin:6,other:6,otherwis:[4,7,9],own:11,page:3,param:[],paramet:[4,5,7,8,9,11,12],pars:[4,12],parse_messag:12,parse_router_messag:12,part:[6,12],particular:[6,9],pass:[6,7,8],peer:6,pictur:6,poll:[5,7,9],poller:[],pollin:5,pollout:5,pool:6,portion:4,possibl:1,practic:11,prefix:12,prepend:6,pretti:6,problem:2,process:[4,6,9],process_messag:4,prop:[],properti:[7,9],protocol:[],protocol_vers:11,provid:8,pub:6,publish:6,purpos:6,queue:[6,8],rais:[2,7,9,12],random:[10,12],random_charact:10,raw:11,raw_messag:[],readi:[6,7,9],rebuild:9,receiv:[],recent:6,reciev:7,recip:[],recipi:[8,11,12],recipient_id:12,recommend:6,reconnect:9,recv:11,recv_multipart:11,redistribut:6,refer:[4,8,11],regist:5,regular:6,rel:1,reliabl:6,remain:5,remov:6,reopen:4,rep:7,repli:[6,12],req:9,request:[],requir:[6,7],requri:6,resourc:[4,6],respond:6,respons:[4,7,8,9],restart:[4,6,9],retri:6,rfc2119:6,rfc:6,robin:6,roughli:9,round:6,rout:[6,8],router:[],run:4,same:9,search:3,see:[5,6],self:9,send:[4,6,8,9,11,12],send_ack:8,send_emqp_messag:12,send_emqp_router_messag:12,send_heartbeat:4,send_inform:4,send_messag:[],send_multipart:11,send_raw:[],sender:[],sender_id:12,sent:[6,11],seper:6,serv:6,server:[4,6],servic:6,set:[4,5,6,7,9],shall:6,should:[2,5,6,7,9],shown:6,simpl:[8,10],singl:6,skip:[7,9,11],skip_zmqstream:[7,9],socket:[4,5,6,7,8,9,11,12],softwar:6,some:[10,11,12],someon:6,someth:[9,11],somewher:1,sourc:[1,3],spawn:4,specif:[],specifi:[6,10,11],start:[4,7,8,9],statu:6,stop:6,str:[4,7,8,9,11,12],string:[4,6,7,8,9,12],structur:2,sub:6,subclass:2,subject:6,subset:6,success:6,system:1,take:[4,9,12],task:4,tcp:[4,8],term:6,thei:[],them:7,thi:[2,4,5,6,7,8,9,10,11],thing:[4,9,10,12],through:6,time:6,timeout:5,timestamp:6,timezon:[],tip:1,tool:6,topic:[],topolog:[],tornado:[4,8],trace:6,tupl:[5,11,12],type:[6,7,9],typecast:5,typeerror:7,undefin:5,under:6,uniqu:[4,6],univers:[],unix:6,unless:[4,7,9],unregist:5,unus:7,upon:6,usual:8,uuid:[4,7,9],valid:6,valu:[5,6,12],version:[1,6,11],via:[7,9],wait:5,warn:8,warranti:6,weak:[4,8,11],web:6,well:6,when:[1,2,6,7,8,9,11],where:6,which:6,wish:12,without:[6,9],word:6,work:[1,11],worker:[],worri:6,wrap:[7,9],you:[1,6,9,11,12],your:[6,11],zcontext:[7,9],zeromq:6,zmq:[5,6,7,9,11,12],zmqreceivemixin:11,zmqsendmixin:11,zmqstream:[7,9],zsocket:[7,9]},titles:["API Documentation","Contributing to EventMQ","<code class=\"docutils literal\"><span class=\"pre\">exceptions</span></code> &#8211; Exceptions","EventMQ Documentation","<code class=\"docutils literal\"><span class=\"pre\">jobmanager</span></code> &#8211; Job Manager","<code class=\"docutils literal\"><span class=\"pre\">poller</span></code> &#8211; Poller","EventMQ Protocol Specification","<code class=\"docutils literal\"><span class=\"pre\">receiver</span></code> &#8211; Receiver","<code class=\"docutils literal\"><span class=\"pre\">router</span></code> &#8211; Router","<code class=\"docutils literal\"><span class=\"pre\">sender</span></code> &#8211; Sender","<code class=\"docutils literal\"><span class=\"pre\">utils</span></code> &#8211; Utilities","<code class=\"docutils literal\"><span class=\"pre\">classes</span></code> &#8211; Utility Classes","<code class=\"docutils literal\"><span class=\"pre\">messages</span></code> &#8211; Message Utilities"],titleterms:{"class":11,address:6,api:0,architectur:6,client:6,contribut:1,document:[0,3],emqp:6,eventmq:[1,3,6],except:2,frame:6,global:6,goal:6,header:6,heartbeat:6,indic:3,job:4,jobmanag:4,languag:6,licens:6,manag:4,messag:12,poller:5,protocol:6,receiv:7,request:6,router:[6,8],sender:9,specif:6,tabl:3,topolog:6,util:[10,11,12],welcom:[],worker:6}}) \ No newline at end of file
diff --git a/sender.html b/sender.html
index b7c967f..9e4c0b6 100644
--- a/sender.html
+++ b/sender.html
@@ -247,6 +247,29 @@ False</td>
247</table> 247</table>
248</dd></dl> 248</dd></dl>
249 249
250<dl class="method">
251<dt id="eventmq.sender.Sender.rebuild">
252<code class="descname">rebuild</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.sender.Sender.rebuild" title="Permalink to this definition">¶</a></dt>
253<dd><p>Rebuilds the socket. This is useful when you need to reconnect to
254something without restarting the process. Many of these things happen
255happen during <code class="xref py py-meth docutils literal"><span class="pre">self.__init__()</span></code>, so it takes roughly the same
256parameters as <code class="xref py py-meth docutils literal"><span class="pre">self.__init__()</span></code></p>
257<table class="docutils field-list" frame="void" rules="none">
258<col class="field-name" />
259<col class="field-body" />
260<tbody valign="top">
261<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
262<li><strong>socket</strong> (<a class="reference external" href="http://pyzmq.readthedocs.org/en/v15.0.0/api/zmq.html#zmq.Socket" title="(in PyZMQ v15.0.0)"><code class="xref py py-class docutils literal"><span class="pre">zmq.Socket</span></code></a>) &#8211; Should be one of <code class="xref py py-attr docutils literal"><span class="pre">zmq.REQ</span></code> or
263<code class="xref py py-attr docutils literal"><span class="pre">zmq.DEALER</span></code>. By default a <cite>DEALER</cite> is used</li>
264<li><strong>skip_zmqstream</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#bool" title="(in Python v2.7)"><em>bool</em></a>) &#8211; If set to true, skip creating the zmqstream
265socket</li>
266</ul>
267</td>
268</tr>
269</tbody>
270</table>
271</dd></dl>
272
250</dd></dl> 273</dd></dl>
251 274
252</div> 275</div>