aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--_sources/index.txt2
-rw-r--r--_sources/protocol.txt13
-rw-r--r--_sources/settings_file.txt51
-rw-r--r--_sources/using.txt8
-rw-r--r--api.html10
-rw-r--r--client.html7
-rw-r--r--client/messages.html77
-rw-r--r--contributing.html9
-rw-r--r--exceptions.html7
-rw-r--r--genindex.html59
-rw-r--r--index.html13
-rw-r--r--jobmanager.html45
-rw-r--r--objects.invbin1355 -> 1369 bytes
-rw-r--r--poller.html7
-rw-r--r--protocol.html46
-rw-r--r--py-modindex.html5
-rw-r--r--receiver.html7
-rw-r--r--router.html78
-rw-r--r--search.html5
-rw-r--r--searchindex.js2
-rw-r--r--sender.html11
-rw-r--r--settings_file.html261
-rw-r--r--using.html217
-rw-r--r--utils/classes.html54
-rw-r--r--utils/devices.html6
-rw-r--r--utils/index.html19
-rw-r--r--utils/messages.html51
-rw-r--r--utils/settings.html15
-rw-r--r--utils/timeutils.html17
29 files changed, 892 insertions, 210 deletions
diff --git a/_sources/index.txt b/_sources/index.txt
index da6e513..25fc86f 100644
--- a/_sources/index.txt
+++ b/_sources/index.txt
@@ -5,6 +5,7 @@ EventMQ Documentation
5.. toctree:: 5.. toctree::
6 :maxdepth: 2 6 :maxdepth: 2
7 7
8 using
8 api 9 api
9 contributing 10 contributing
10 11
@@ -15,4 +16,3 @@ Indices and tables
15* :ref:`genindex` 16* :ref:`genindex`
16* :ref:`modindex` 17* :ref:`modindex`
17* :ref:`search` 18* :ref:`search`
18
diff --git a/_sources/protocol.txt b/_sources/protocol.txt
index 4c2aff0..c341403 100644
--- a/_sources/protocol.txt
+++ b/_sources/protocol.txt
@@ -71,7 +71,7 @@ FRAME Value Description
711 eMQP/1.0 Protocol version 711 eMQP/1.0 Protocol version
722 REQUEST command 722 REQUEST command
733 _MSGID_ A unique id for the msg 733 _MSGID_ A unique id for the msg
744 _QUEUE_NAME_ the name of the queue the worker belongs to 744 _QUEUE_NAME_ the name of the queue the request should be sent to
755 _HEADERS_ dictionary of headers. can be an empty set 755 _HEADERS_ dictionary of headers. can be an empty set
766 _MSG_ The message to send 766 _MSG_ The message to send
77====== ============== =========== 77====== ============== ===========
@@ -85,7 +85,7 @@ FRAME Value Description
851 eMQP/1.0 Protocol version 851 eMQP/1.0 Protocol version
862 PUBLISH command 862 PUBLISH command
873 _MSGID_ A unique id for the msg 873 _MSGID_ A unique id for the msg
884 _TOPIC_NAME_ the name of the queue the worker belongs to 884 _TOPIC_NAME_ the name of the topic this message should be published across
895 _HEADERS_ csv list of headers 895 _HEADERS_ csv list of headers
906 _MSG_ The message to send 906 _MSG_ The message to send
91====== ============== =========== 91====== ============== ===========
@@ -99,7 +99,7 @@ FRAME Value Description
991 eMQP/1.0 Protocol version 991 eMQP/1.0 Protocol version
1002 SCHEDULE command 1002 SCHEDULE command
1013 _MSGID_ A unique id for the msg 1013 _MSGID_ A unique id for the msg
1024 _TOPIC_NAME_ name of queue that the job should run in 1024 _QUEUE_NAME_ name of queue that the job should run in
1035 _HEADERS_ csv list of headers for this message 1035 _HEADERS_ csv list of headers for this message
1046 _MSG_ The message to send 1046 _MSG_ The message to send
105====== ============== =========== 105====== ============== ===========
@@ -113,7 +113,7 @@ FRAME Value Description
1131 eMQP/1.0 Protocol version 1131 eMQP/1.0 Protocol version
1142 UNSCHEDULE command 1142 UNSCHEDULE command
1153 _MSGID_ A unique id for the msg 1153 _MSGID_ A unique id for the msg
1164 _TOPIC_NAME_ ignored for this command, broadcasted to all queues 1164 _QUEUE_NAME_ ignored for this command, broadcasted to all queues
1175 _HEADERS_ csv list of headers for this message 1175 _HEADERS_ csv list of headers for this message
1186 _MSG_ The message to send 1186 _MSG_ The message to send
119====== ============== =========== 119====== ============== ===========
@@ -129,7 +129,7 @@ FRAME Value Description
1291 eMQP/1.0 Protocol version 1291 eMQP/1.0 Protocol version
1302 INFORM command 1302 INFORM command
1313 _MSGID_ A unique id for the msg 1313 _MSGID_ A unique id for the msg
1324 _QUEUE_NAME_ csv seperated names of queue the worker belongs to 1324 Queues. Unused for scheduler
1335 scheduler type of peer connecting 1335 scheduler type of peer connecting
134====== ============== =========== 134====== ============== ===========
135 135
@@ -144,7 +144,7 @@ FRAME Value Description
1441 eMQP/1.0 Protocol version 1441 eMQP/1.0 Protocol version
1452 INFORM command 1452 INFORM command
1463 _MSGID_ A unique id for the msg 1463 _MSGID_ A unique id for the msg
1474 _QUEUE_NAME_ csv seperated names of queue the worker belongs to. 1474 _QUEUES_ csv seperated arrays containing an int and a string for weight and name. e.g. [40, 'email']
1485 worker type of peer connecting 1485 worker type of peer connecting
149====== ============== =========== 149====== ============== ===========
150 150
@@ -203,7 +203,6 @@ Heartbeating
203 * If the worker detects that the broker disconnected it SHOULD restart the conversation. 203 * If the worker detects that the broker disconnected it SHOULD restart the conversation.
204 * If the broker detects that a worker has disconnected it should stop sending it a message of any type. 204 * If the broker detects that a worker has disconnected it should stop sending it a message of any type.
205 * If the scheduler detects that the broker disconnects it SHOULD restart the conversation. 205 * If the scheduler detects that the broker disconnects it SHOULD restart the conversation.
206 * If the broker detects that a scheduler has disconnected it should ??????????.
207 206
208REQUEST Headers 207REQUEST Headers
209--------------- 208---------------
diff --git a/_sources/settings_file.txt b/_sources/settings_file.txt
new file mode 100644
index 0000000..b0bc36c
--- /dev/null
+++ b/_sources/settings_file.txt
@@ -0,0 +1,51 @@
1########
2Settings
3########
4EventMQ uses a standard INI style config file found at ``/etc/eventmq.conf``.
5
6******
7Router
8******
9
10*********
11Scheduler
12*********
13
14***********
15Job Manager
16***********
17
18concurrent_jobs
19===============
20Default: 4
21
22This is the number of concurrent jobs the indiviudal job manager should execute
23at a time. If you are using the multiprocess or threading model this number
24becomes important as you will want to control the load on your server. If the
25load equals the number of cores on the server, processes will begin waiting for
26cpu cycles and things will begin to slow down.
27
28A safe number to choose if your jobs block a lot would be (2 * cores). If your
29jobs are cpu intensive you will want to set this number to the number of cores
30you have or (cores - 1) to leave cycles for the os and other processes. This is
31something that will have to be tuned based on the jobs that are
32running. Grouping similar jobs in named queues will help you tune this number.
33
34queues
35======
36Default: (10, default)
37
38Semi-colon seperated list of queues to process jobs for with thier
39weights. Example: ``queues=(10, data_process); (15, email)``. With these
40weights and the ``CONCURRENT_JOBS`` setting, you should be able to tune managers
41running jobs locally pretty efficiently. If you have a larger box with a weight
42of 50 on q1 and 8 concurrent jobs and a smaller box with a weight 30 and 4
43concurrent jobs, the q1 jobs will be sent to the large box until it is no longer
44accepting jobs. At this point jobs will start to be sent to the next highest
45number until the large box is ready to accept another q1 job.
46
47.. note::
48
49 It is recommended that you have some workers listening for jobs on your
50 default queue so that anything that is not explicitly assigned will still be
51 run.
diff --git a/_sources/using.txt b/_sources/using.txt
new file mode 100644
index 0000000..3c6a517
--- /dev/null
+++ b/_sources/using.txt
@@ -0,0 +1,8 @@
1#############
2Using EventMQ
3#############
4
5.. toctree::
6 :maxdepth: 2
7
8 settings_file
diff --git a/api.html b/api.html
index 7934f74..03dcd6d 100644
--- a/api.html
+++ b/api.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="client – Client Utilities" href="client.html"/> 34 <link rel="next" title="client – Client Utilities" href="client.html"/>
35 <link rel="prev" title="EventMQ Documentation" href="index.html"/> 35 <link rel="prev" title="Settings" href="settings_file.html"/>
36 36
37 37
38 <script src="_static/js/modernizr.min.js"></script> 38 <script src="_static/js/modernizr.min.js"></script>
@@ -60,7 +60,7 @@
60 60
61 61
62 <div class="version"> 62 <div class="version">
63 0 63 0.2.1
64 </div> 64 </div>
65 65
66 66
@@ -82,6 +82,7 @@
82 82
83 83
84 <ul class="current"> 84 <ul class="current">
85<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
85<li class="toctree-l1 current"><a class="current reference internal" href="">API Documentation</a><ul> 86<li class="toctree-l1 current"><a class="current reference internal" href="">API Documentation</a><ul>
86<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
87<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 88<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -156,6 +157,7 @@
156<li class="toctree-l2"><a class="reference internal" href="utils/classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li> 157<li class="toctree-l2"><a class="reference internal" href="utils/classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li>
157<li class="toctree-l2"><a class="reference internal" href="utils/devices.html"><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li> 158<li class="toctree-l2"><a class="reference internal" href="utils/devices.html"><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li>
158<li class="toctree-l2"><a class="reference internal" href="utils/messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li> 159<li class="toctree-l2"><a class="reference internal" href="utils/messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li>
160<li class="toctree-l2"><a class="reference internal" href="utils/settings.html"><code class="docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities</a></li>
159<li class="toctree-l2"><a class="reference internal" href="utils/timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li> 161<li class="toctree-l2"><a class="reference internal" href="utils/timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li>
160</ul> 162</ul>
161</li> 163</li>
@@ -173,7 +175,7 @@
173 <a href="client.html" class="btn btn-neutral float-right" title="client – Client Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 175 <a href="client.html" class="btn btn-neutral float-right" title="client – Client Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
174 176
175 177
176 <a href="index.html" class="btn btn-neutral" title="EventMQ Documentation" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 178 <a href="settings_file.html" class="btn btn-neutral" title="Settings" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
177 179
178 </div> 180 </div>
179 181
@@ -182,7 +184,7 @@
182 184
183 <div role="contentinfo"> 185 <div role="contentinfo">
184 <p> 186 <p>
185 &copy; Copyright 2015, eventboard.io. 187 &copy; Copyright 2016, eventboard.io.
186 188
187 </p> 189 </p>
188 </div> 190 </div>
diff --git a/client.html b/client.html
index 4241119..86c2456 100644
--- a/client.html
+++ b/client.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<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">client</span></code> &#8211; Client Utilities</a><ul> 88<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a><ul>
88<li class="toctree-l3"><a class="reference internal" href="client/messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Client Messaging</a></li> 89<li class="toctree-l3"><a class="reference internal" href="client/messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Client Messaging</a></li>
@@ -94,7 +95,7 @@
94<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> 95<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>
95<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> 96<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>
96<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> 97<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>
97<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> 98<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
98</ul> 99</ul>
99</li> 100</li>
100<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 101<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -174,7 +175,7 @@ eventmq. (e.g. one who requests jobs)</p>
174 175
175 <div role="contentinfo"> 176 <div role="contentinfo">
176 <p> 177 <p>
177 &copy; Copyright 2015, eventboard.io. 178 &copy; Copyright 2016, eventboard.io.
178 179
179 </p> 180 </p>
180 </div> 181 </div>
diff --git a/client/messages.html b/client/messages.html
index 744397a..fa76d2a 100644
--- a/client/messages.html
+++ b/client/messages.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<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="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a><ul class="current"> 88<li class="toctree-l2 current"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a><ul class="current">
88<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Client Messaging</a></li> 89<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Client Messaging</a></li>
@@ -94,7 +95,7 @@
94<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> 95<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>
95<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> 96<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>
96<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> 97<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>
97<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> 98<li class="toctree-l2"><a class="reference internal" href="../utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
98</ul> 99</ul>
99</li> 100</li>
100<li class="toctree-l1"><a class="reference internal" href="../contributing.html">Contributing to EventMQ</a></li> 101<li class="toctree-l1"><a class="reference internal" href="../contributing.html">Contributing to EventMQ</a></li>
@@ -191,17 +192,18 @@ initializing (if applicable).</li>
191executed. Exceptions and things will be logged.</li> 192executed. Exceptions and things will be logged.</li>
192<li><strong>retry_count</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; How many times should be retried when encountering 193<li><strong>retry_count</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; How many times should be retried when encountering
193an Exception or some other failure before giving up. (default: 0 194an Exception or some other failure before giving up. (default: 0
194or immediatly fail)</li> 195or immediately fail)</li>
195<li><strong>queue</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Name of queue to use when executing the job. Default: is 196<li><strong>queue</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Name of queue to use when executing the job. If this value
196configured default queue name</li> 197evaluates to False, the default is used. Default: is configured
198default queue name</li>
197</ul> 199</ul>
198</td> 200</td>
199</tr> 201</tr>
200<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">True if the message was successfully queued, False if something 202<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">ID for the message/deferred job. This value will be None if there
201went wrong. If something did go wrong check the logs for details.</p> 203was an error.</p>
202</td> 204</td>
203</tr> 205</tr>
204<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/library/functions.html#bool" title="(in Python v2.7)">bool</a></p> 206<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></p>
205</td> 207</td>
206</tr> 208</tr>
207</tbody> 209</tbody>
@@ -209,38 +211,24 @@ went wrong. If something did go wrong check the logs for details.</p>
209</dd></dl> 211</dd></dl>
210 212
211<dl class="function"> 213<dl class="function">
212<dt id="eventmq.client.messages.job">
213<code class="descclassname">eventmq.client.messages.</code><code class="descname">job</code><span class="sig-paren">(</span><em>block=False</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.client.messages.job" title="Permalink to this definition">¶</a></dt>
214<dd><p>run the decorated function on a worker</p>
215<table class="docutils field-list" frame="void" rules="none">
216<col class="field-name" />
217<col class="field-body" />
218<tbody valign="top">
219<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>block</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#bool" title="(in Python v2.7)"><em>bool</em></a>) &#8211; Set to True if you wish to block and wait for the
220response. This may be useful for running quick but cpu intesive
221that would otherwise overwhelm a box that has to do it all alone.
222(decryption?)</td>
223</tr>
224</tbody>
225</table>
226</dd></dl>
227
228<dl class="function">
229<dt id="eventmq.client.messages.schedule"> 214<dt id="eventmq.client.messages.schedule">
230<code class="descclassname">eventmq.client.messages.</code><code class="descname">schedule</code><span class="sig-paren">(</span><em>socket</em>, <em>func</em>, <em>interval_secs</em>, <em>args=()</em>, <em>kwargs=None</em>, <em>class_args=()</em>, <em>class_kwargs=None</em>, <em>headers=('guarantee'</em>, <em>)</em>, <em>queue='default'</em>, <em>unschedule=False</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.client.messages.schedule" title="Permalink to this definition">¶</a></dt> 215<code class="descclassname">eventmq.client.messages.</code><code class="descname">schedule</code><span class="sig-paren">(</span><em>socket</em>, <em>func</em>, <em>interval_secs=None</em>, <em>args=()</em>, <em>kwargs=None</em>, <em>class_args=()</em>, <em>class_kwargs=None</em>, <em>headers=('guarantee'</em>, <em>)</em>, <em>queue='default'</em>, <em>unschedule=False</em>, <em>cron=None</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.client.messages.schedule" title="Permalink to this definition">¶</a></dt>
231<dd><p>Execute a task on a defined interval.</p> 216<dd><p>Execute a task on a defined interval.</p>
232<table class="docutils field-list" frame="void" rules="none"> 217<table class="docutils field-list" frame="void" rules="none">
233<col class="field-name" /> 218<col class="field-name" />
234<col class="field-body" /> 219<col class="field-body" />
235<tbody valign="top"> 220<tbody valign="top">
236<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple"> 221<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
237<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; eventmq socket to use for sending the message</li> 222<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; eventmq socket to use for sending the message</li>
238<li><strong>func</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#callable" title="(in Python v2.7)"><em>callable</em></a>) &#8211; the callable to be scheduled on a worker</li> 223<li><strong>func</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#callable" title="(in Python v2.7)"><em>callable</em></a>) &#8211; the callable to be scheduled on a worker</li>
239<li><strong>minutes</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; minutes to wait in between executions</li> 224<li><strong>minutes</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; minutes to wait in between executions</li>
240<li><strong>args</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; list of <a href="#id9"><span class="problematic" id="id10">*</span></a>args to pass to the callable</li> 225<li><strong>args</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; list of <a href="#id9"><span class="problematic" id="id10">*</span></a>args to pass to the callable</li>
241<li><strong>kwargs</strong> (<a class="reference external" href="https://docs.python.org/library/stdtypes.html#dict" title="(in Python v2.7)"><em>dict</em></a>) &#8211; dict of <a href="#id11"><span class="problematic" id="id12">**</span></a>kwargs to pass to the callable</li> 226<li><strong>interval_secs</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; Run job every interval_secs or None if using cron</li>
242<li><strong>class_args</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; list of <a href="#id13"><span class="problematic" id="id14">*</span></a>args to pass to the class (if applicable)</li> 227<li><strong>cron</strong> (<a class="reference external" href="https://docs.python.org/library/string.html#module-string" title="(in Python v2.7)"><em>string</em></a>) &#8211; cron formatted string used for job schedule if
243<li><strong>class_kwargs</strong> (<a class="reference external" href="https://docs.python.org/library/stdtypes.html#dict" title="(in Python v2.7)"><em>dict</em></a>) &#8211; dict of <a href="#id15"><span class="problematic" id="id16">**</span></a>kwargs to pass to the class (if 228interval_secs is None, i.e. &#8216;* * * * <a href="#id11"><span class="problematic" id="id12">*</span></a>&#8216; (every minute)</li>
229<li><strong>kwargs</strong> (<a class="reference external" href="https://docs.python.org/library/stdtypes.html#dict" title="(in Python v2.7)"><em>dict</em></a>) &#8211; dict of <a href="#id13"><span class="problematic" id="id14">**</span></a>kwargs to pass to the callable</li>
230<li><strong>class_args</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; list of <a href="#id15"><span class="problematic" id="id16">*</span></a>args to pass to the class (if applicable)</li>
231<li><strong>class_kwargs</strong> (<a class="reference external" href="https://docs.python.org/library/stdtypes.html#dict" title="(in Python v2.7)"><em>dict</em></a>) &#8211; dict of <a href="#id17"><span class="problematic" id="id18">**</span></a>kwargs to pass to the class (if
244applicable)</li> 232applicable)</li>
245<li><strong>headers</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; list of strings denoting enabled headers. Default: 233<li><strong>headers</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; list of strings denoting enabled headers. Default:
246guarantee is enabled to ensure the scheduler schedules the job.</li> 234guarantee is enabled to ensure the scheduler schedules the job.</li>
@@ -249,6 +237,13 @@ default value is the default queue.</li>
249</ul> 237</ul>
250</td> 238</td>
251</tr> 239</tr>
240<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">ID of the schedule message that was sent. None if there was an
241error</p>
242</td>
243</tr>
244<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></p>
245</td>
246</tr>
252</tbody> 247</tbody>
253</table> 248</table>
254</dd></dl> 249</dd></dl>
@@ -291,7 +286,7 @@ the headers then they have been enabled.</p>
291<col class="field-name" /> 286<col class="field-name" />
292<col class="field-body" /> 287<col class="field-body" />
293<tbody valign="top"> 288<tbody valign="top">
294<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple"> 289<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
295<li><strong>retry_count</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; How many times should be retried when encountering 290<li><strong>retry_count</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; How many times should be retried when encountering
296an Exception or some other failure before giving up. (default: 0 291an Exception or some other failure before giving up. (default: 0
297or immediatly fail)</li> 292or immediatly fail)</li>
@@ -300,13 +295,19 @@ configured default queue name</li>
300</ul> 295</ul>
301</td> 296</td>
302</tr> 297</tr>
298<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">ID of the message</p>
299</td>
300</tr>
301<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></p>
302</td>
303</tr>
303</tbody> 304</tbody>
304</table> 305</table>
305</dd></dl> 306</dd></dl>
306 307
307<dl class="function"> 308<dl class="function">
308<dt id="eventmq.client.messages.send_schedule_request"> 309<dt id="eventmq.client.messages.send_schedule_request">
309<code class="descclassname">eventmq.client.messages.</code><code class="descname">send_schedule_request</code><span class="sig-paren">(</span><em>socket</em>, <em>interval_secs</em>, <em>message</em>, <em>headers=()</em>, <em>queue=None</em>, <em>unschedule=False</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.client.messages.send_schedule_request" title="Permalink to this definition">¶</a></dt> 310<code class="descclassname">eventmq.client.messages.</code><code class="descname">send_schedule_request</code><span class="sig-paren">(</span><em>socket</em>, <em>message</em>, <em>interval_secs=-1</em>, <em>headers=()</em>, <em>queue=None</em>, <em>unschedule=False</em>, <em>cron=''</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.client.messages.send_schedule_request" title="Permalink to this definition">¶</a></dt>
310<dd><p>Send a SCHEDULE or UNSCHEDULE command.</p> 311<dd><p>Send a SCHEDULE or UNSCHEDULE command.</p>
311<p>Queues a message requesting that something happens on an 312<p>Queues a message requesting that something happens on an
312interval for the scheduler.</p> 313interval for the scheduler.</p>
@@ -314,15 +315,21 @@ interval for the scheduler.</p>
314<col class="field-name" /> 315<col class="field-name" />
315<col class="field-body" /> 316<col class="field-body" />
316<tbody valign="top"> 317<tbody valign="top">
317<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple"> 318<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
318<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; </li> 319<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; </li>
319<li><strong>interval_secs</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; </li> 320<li><strong>job_schedule</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; </li>
320<li><strong>message</strong> &#8211; Message to send socket.</li> 321<li><strong>message</strong> &#8211; Message to send socket.</li>
321<li><strong>headers</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; List of headers for the message</li> 322<li><strong>headers</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; List of headers for the message</li>
322<li><strong>queue</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; name of queue the job should be executed in</li> 323<li><strong>queue</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; name of queue the job should be executed in</li>
323</ul> 324</ul>
324</td> 325</td>
325</tr> 326</tr>
327<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">ID of the message</p>
328</td>
329</tr>
330<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></p>
331</td>
332</tr>
326</tbody> 333</tbody>
327</table> 334</table>
328</dd></dl> 335</dd></dl>
@@ -348,7 +355,7 @@ interval for the scheduler.</p>
348 355
349 <div role="contentinfo"> 356 <div role="contentinfo">
350 <p> 357 <p>
351 &copy; Copyright 2015, eventboard.io. 358 &copy; Copyright 2016, eventboard.io.
352 359
353 </p> 360 </p>
354 </div> 361 </div>
diff --git a/contributing.html b/contributing.html
index 981b524..205bd46 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="&lt;no title&gt;" href="utils.html"/> 35 <link rel="prev" title="timeutils – Time Utilites" href="utils/timeutils.html"/>
36 36
37 37
38 <script src="_static/js/modernizr.min.js"></script> 38 <script src="_static/js/modernizr.min.js"></script>
@@ -60,7 +60,7 @@
60 60
61 61
62 <div class="version"> 62 <div class="version">
63 0 63 0.2.1
64 </div> 64 </div>
65 65
66 66
@@ -82,6 +82,7 @@
82 82
83 83
84 <ul class="current"> 84 <ul class="current">
85<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
85<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li> 86<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
86<li class="toctree-l1 current"><a class="current reference internal" href="">Contributing to EventMQ</a><ul> 87<li class="toctree-l1 current"><a class="current reference internal" href="">Contributing to EventMQ</a><ul>
87<li class="toctree-l2"><a class="reference internal" href="protocol.html">EventMQ Protocol Specification</a></li> 88<li class="toctree-l2"><a class="reference internal" href="protocol.html">EventMQ Protocol Specification</a></li>
@@ -160,7 +161,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> 161 <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 162
162 163
163 <a href="utils.html" class="btn btn-neutral" title="&lt;no title&gt;" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 164 <a href="utils/timeutils.html" class="btn btn-neutral" title="timeutils – Time Utilites" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
164 165
165 </div> 166 </div>
166 167
@@ -169,7 +170,7 @@
169 170
170 <div role="contentinfo"> 171 <div role="contentinfo">
171 <p> 172 <p>
172 &copy; Copyright 2015, eventboard.io. 173 &copy; Copyright 2016, eventboard.io.
173 174
174 </p> 175 </p>
175 </div> 176 </div>
diff --git a/exceptions.html b/exceptions.html
index c103808..4f94f7f 100644
--- a/exceptions.html
+++ b/exceptions.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<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> 89<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>
@@ -91,7 +92,7 @@
91<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> 92<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>
92<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> 93<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>
93<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> 94<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>
94<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> - Utilities</a></li> 95<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
95</ul> 96</ul>
96</li> 97</li>
97<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 98<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -203,7 +204,7 @@ sending a message to it)</p>
203 204
204 <div role="contentinfo"> 205 <div role="contentinfo">
205 <p> 206 <p>
206 &copy; Copyright 2015, eventboard.io. 207 &copy; Copyright 2016, eventboard.io.
207 208
208 </p> 209 </p>
209 </div> 210 </div>
diff --git a/genindex.html b/genindex.html
index 6186e51..dbfbf25 100644
--- a/genindex.html
+++ b/genindex.html
@@ -59,7 +59,7 @@
59 59
60 60
61 <div class="version"> 61 <div class="version">
62 0 62 0.2.1
63 </div> 63 </div>
64 64
65 65
@@ -81,6 +81,7 @@
81 81
82 82
83 <ul> 83 <ul>
84<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
84<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li> 85<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
85<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 86<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
86</ul> 87</ul>
@@ -266,6 +267,10 @@
266 </dl></td> 267 </dl></td>
267 <td style="width: 33%" valign="top"><dl> 268 <td style="width: 33%" valign="top"><dl>
268 269
270 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager.concurrent_jobs">concurrent_jobs (eventmq.jobmanager.JobManager attribute)</a>
271 </dt>
272
273
269 <dt><a href="receiver.html#eventmq.receiver.Receiver.connect">connect() (eventmq.receiver.Receiver method)</a> 274 <dt><a href="receiver.html#eventmq.receiver.Receiver.connect">connect() (eventmq.receiver.Receiver method)</a>
270 </dt> 275 </dt>
271 276
@@ -452,10 +457,6 @@
452<table style="width: 100%" class="indextable genindextable"><tr> 457<table style="width: 100%" class="indextable genindextable"><tr>
453 <td style="width: 33%" valign="top"><dl> 458 <td style="width: 33%" valign="top"><dl>
454 459
455 <dt><a href="client/messages.html#eventmq.client.messages.job">job() (in module eventmq.client.messages)</a>
456 </dt>
457
458
459 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager">JobManager (class in eventmq.jobmanager)</a> 460 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager">JobManager (class in eventmq.jobmanager)</a>
460 </dt> 461 </dt>
461 462
@@ -547,14 +548,10 @@
547 <dt><a href="router.html#eventmq.router.Router.on_inform">on_inform() (eventmq.router.Router method)</a> 548 <dt><a href="router.html#eventmq.router.Router.on_inform">on_inform() (eventmq.router.Router method)</a>
548 </dt> 549 </dt>
549 550
550
551 <dt><a href="router.html#eventmq.router.Router.on_ready">on_ready() (eventmq.router.Router method)</a>
552 </dt>
553
554 </dl></td> 551 </dl></td>
555 <td style="width: 33%" valign="top"><dl> 552 <td style="width: 33%" valign="top"><dl>
556 553
557 <dt><a href="router.html#eventmq.router.Router.on_receive_request">on_receive_request() (eventmq.router.Router method)</a> 554 <dt><a href="router.html#eventmq.router.Router.on_ready">on_ready() (eventmq.router.Router method)</a>
558 </dt> 555 </dt>
559 556
560 557
@@ -597,12 +594,12 @@
597 <dt><a href="poller.html#eventmq.poller.Poller">Poller (class in eventmq.poller)</a> 594 <dt><a href="poller.html#eventmq.poller.Poller">Poller (class in eventmq.poller)</a>
598 </dt> 595 </dt>
599 596
600 </dl></td>
601 <td style="width: 33%" valign="top"><dl>
602 597
603 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQdeque.pop">pop() (eventmq.utils.classes.EMQdeque method)</a> 598 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQdeque.pop">pop() (eventmq.utils.classes.EMQdeque method)</a>
604 </dt> 599 </dt>
605 600
601 </dl></td>
602 <td style="width: 33%" valign="top"><dl>
606 603
607 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQdeque.popleft">popleft() (eventmq.utils.classes.EMQdeque method)</a> 604 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQdeque.popleft">popleft() (eventmq.utils.classes.EMQdeque method)</a>
608 </dt> 605 </dt>
@@ -612,6 +609,10 @@
612 </dt> 609 </dt>
613 610
614 611
612 <dt><a href="router.html#eventmq.router.Router.process_client_message">process_client_message() (eventmq.router.Router method)</a>
613 </dt>
614
615
615 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQPService.process_message">process_message() (eventmq.utils.classes.EMQPService method)</a> 616 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQPService.process_message">process_message() (eventmq.utils.classes.EMQPService method)</a>
616 </dt> 617 </dt>
617 618
@@ -626,15 +627,15 @@
626<table style="width: 100%" class="indextable genindextable"><tr> 627<table style="width: 100%" class="indextable genindextable"><tr>
627 <td style="width: 33%" valign="top"><dl> 628 <td style="width: 33%" valign="top"><dl>
628 629
629 <dt><a href="router.html#eventmq.router.Router.queue_message">queue_message() (eventmq.router.Router method)</a> 630 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager.queues">queues (eventmq.jobmanager.JobManager attribute)</a>
630 </dt> 631 </dt>
631 632
632 </dl></td> 633 <dd><dl>
633 <td style="width: 33%" valign="top"><dl> 634
634 635 <dt><a href="router.html#eventmq.router.Router.queues">(eventmq.router.Router attribute)</a>
635 <dt><a href="router.html#eventmq.router.Router.queues">queues (eventmq.router.Router attribute)</a>
636 </dt> 636 </dt>
637 637
638 </dl></dd>
638 </dl></td> 639 </dl></td>
639</tr></table> 640</tr></table>
640 641
@@ -675,18 +676,14 @@
675 <dt><a href="utils/classes.html#eventmq.utils.classes.ZMQReceiveMixin.recv_multipart">recv_multipart() (eventmq.utils.classes.ZMQReceiveMixin method)</a> 676 <dt><a href="utils/classes.html#eventmq.utils.classes.ZMQReceiveMixin.recv_multipart">recv_multipart() (eventmq.utils.classes.ZMQReceiveMixin method)</a>
676 </dt> 677 </dt>
677 678
678
679 <dt><a href="poller.html#eventmq.poller.Poller.register">register() (eventmq.poller.Poller method)</a>
680 </dt>
681
682 </dl></td> 679 </dl></td>
683 <td style="width: 33%" valign="top"><dl> 680 <td style="width: 33%" valign="top"><dl>
684 681
685 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQdeque.remove">remove() (eventmq.utils.classes.EMQdeque method)</a> 682 <dt><a href="poller.html#eventmq.poller.Poller.register">register() (eventmq.poller.Poller method)</a>
686 </dt> 683 </dt>
687 684
688 685
689 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager.request_queue">request_queue (eventmq.jobmanager.JobManager attribute)</a> 686 <dt><a href="utils/classes.html#eventmq.utils.classes.EMQdeque.remove">remove() (eventmq.utils.classes.EMQdeque method)</a>
690 </dt> 687 </dt>
691 688
692 689
@@ -822,6 +819,12 @@
822 </dt> 819 </dt>
823 820
824 </dl></td> 821 </dl></td>
822 <td style="width: 33%" valign="top"><dl>
823
824 <dt><a href="utils/index.html#eventmq.utils.tuplify">tuplify() (in module eventmq.utils)</a>
825 </dt>
826
827 </dl></td>
825</tr></table> 828</tr></table>
826 829
827<h2 id="U">U</h2> 830<h2 id="U">U</h2>
@@ -860,15 +863,9 @@
860 </dl></td> 863 </dl></td>
861 <td style="width: 33%" valign="top"><dl> 864 <td style="width: 33%" valign="top"><dl>
862 865
863 <dt><a href="jobmanager.html#eventmq.jobmanager.JobManager.workers">workers (eventmq.jobmanager.JobManager attribute)</a> 866 <dt><a href="router.html#eventmq.router.Router.workers">workers (eventmq.router.Router attribute)</a>
864 </dt> 867 </dt>
865 868
866 <dd><dl>
867
868 <dt><a href="router.html#eventmq.router.Router.workers">(eventmq.router.Router attribute)</a>
869 </dt>
870
871 </dl></dd>
872 </dl></td> 869 </dl></td>
873</tr></table> 870</tr></table>
874 871
@@ -923,7 +920,7 @@
923 920
924 <div role="contentinfo"> 921 <div role="contentinfo">
925 <p> 922 <p>
926 &copy; Copyright 2015, eventboard.io. 923 &copy; Copyright 2016, eventboard.io.
927 924
928 </p> 925 </p>
929 </div> 926 </div>
diff --git a/index.html b/index.html
index 2f81ba1..738c479 100644
--- a/index.html
+++ b/index.html
@@ -31,7 +31,7 @@
31 31
32 32
33 <link rel="top" title="EventMQ 0 documentation" href="#"/> 33 <link rel="top" title="EventMQ 0 documentation" href="#"/>
34 <link rel="next" title="API Documentation" href="api.html"/> 34 <link rel="next" title="Using EventMQ" href="using.html"/>
35 35
36 36
37 <script src="_static/js/modernizr.min.js"></script> 37 <script src="_static/js/modernizr.min.js"></script>
@@ -59,7 +59,7 @@
59 59
60 60
61 <div class="version"> 61 <div class="version">
62 0 62 0.2.1
63 </div> 63 </div>
64 64
65 65
@@ -81,6 +81,7 @@
81 81
82 82
83 <ul> 83 <ul>
84<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
84<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li> 85<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
85<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 86<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
86</ul> 87</ul>
@@ -131,6 +132,10 @@
131<h1>EventMQ Documentation<a class="headerlink" href="#eventmq-documentation" title="Permalink to this headline">¶</a></h1> 132<h1>EventMQ Documentation<a class="headerlink" href="#eventmq-documentation" title="Permalink to this headline">¶</a></h1>
132<div class="toctree-wrapper compound"> 133<div class="toctree-wrapper compound">
133<ul> 134<ul>
135<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a><ul>
136<li class="toctree-l2"><a class="reference internal" href="settings_file.html">Settings</a></li>
137</ul>
138</li>
134<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a><ul> 139<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a><ul>
135<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 140<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
136<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 141<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -167,7 +172,7 @@
167 172
168 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> 173 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
169 174
170 <a href="api.html" class="btn btn-neutral float-right" title="API Documentation" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 175 <a href="using.html" class="btn btn-neutral float-right" title="Using EventMQ" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
171 176
172 177
173 </div> 178 </div>
@@ -177,7 +182,7 @@
177 182
178 <div role="contentinfo"> 183 <div role="contentinfo">
179 <p> 184 <p>
180 &copy; Copyright 2015, eventboard.io. 185 &copy; Copyright 2016, eventboard.io.
181 186
182 </p> 187 </p>
183 </div> 188 </div>
diff --git a/jobmanager.html b/jobmanager.html
index 1c040f5..aa262fa 100644
--- a/jobmanager.html
+++ b/jobmanager.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,7 +92,7 @@
91<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> 92<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>
92<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> 93<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>
93<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> 94<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>
94<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> 95<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
95</ul> 96</ul>
96</li> 97</li>
97<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 98<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -161,17 +162,37 @@ to manage the resources on the server it&#8217;s running.</p>
161<col class="field-name" /> 162<col class="field-name" />
162<col class="field-body" /> 163<col class="field-body" />
163<tbody valign="top"> 164<tbody valign="top">
164<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; unique name of this instance. By default a uuid will be 165<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
165generated.</td> 166<li><strong>name</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; unique name of this instance. By default a uuid will be
167generated.</li>
168<li><strong>queues</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#tuple" title="(in Python v2.7)"><em>tuple</em></a>) &#8211; List of queue names to listen on.</li>
169<li><strong>skip_signal</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#bool" title="(in Python v2.7)"><em>bool</em></a>) &#8211; Don&#8217;t register the signal handlers. Useful for
170testing.</li>
171</ul>
172</td>
166</tr> 173</tr>
167</tbody> 174</tbody>
168</table> 175</table>
169</dd></dl> 176</dd></dl>
170 177
178<dl class="attribute">
179<dt id="eventmq.jobmanager.JobManager.concurrent_jobs">
180<code class="descname">concurrent_jobs</code><em class="property"> = None</em><a class="headerlink" href="#eventmq.jobmanager.JobManager.concurrent_jobs" title="Permalink to this definition">¶</a></dt>
181<dd><p>keep track of workers</p>
182</dd></dl>
183
171<dl class="method"> 184<dl class="method">
172<dt id="eventmq.jobmanager.JobManager.jobmanager_main"> 185<dt id="eventmq.jobmanager.JobManager.jobmanager_main">
173<code class="descname">jobmanager_main</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.jobmanager_main" title="Permalink to this definition">¶</a></dt> 186<code class="descname">jobmanager_main</code><span class="sig-paren">(</span><em>broker_addr=None</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.jobmanager.JobManager.jobmanager_main" title="Permalink to this definition">¶</a></dt>
174<dd><p>Kick off jobmanager with logging and settings import</p> 187<dd><p>Kick off jobmanager with logging and settings import</p>
188<table class="docutils field-list" frame="void" rules="none">
189<col class="field-name" />
190<col class="field-body" />
191<tbody valign="top">
192<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>broker_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; The address of the broker to connect to.</td>
193</tr>
194</tbody>
195</table>
175</dd></dl> 196</dd></dl>
176 197
177<dl class="attribute"> 198<dl class="attribute">
@@ -230,9 +251,9 @@ of work.</p>
230</dd></dl> 251</dd></dl>
231 252
232<dl class="attribute"> 253<dl class="attribute">
233<dt id="eventmq.jobmanager.JobManager.request_queue"> 254<dt id="eventmq.jobmanager.JobManager.queues">
234<code class="descname">request_queue</code><em class="property"> = None</em><a class="headerlink" href="#eventmq.jobmanager.JobManager.request_queue" title="Permalink to this definition">¶</a></dt> 255<code class="descname">queues</code><em class="property"> = None</em><a class="headerlink" href="#eventmq.jobmanager.JobManager.queues" title="Permalink to this definition">¶</a></dt>
235<dd><p>Setup worker queues</p> 256<dd><p>List of queues that this job manager is listening on</p>
236</dd></dl> 257</dd></dl>
237 258
238<dl class="method"> 259<dl class="method">
@@ -242,12 +263,6 @@ of work.</p>
242for another REQUEST message.</p> 263for another REQUEST message.</p>
243</dd></dl> 264</dd></dl>
244 265
245<dl class="attribute">
246<dt id="eventmq.jobmanager.JobManager.workers">
247<code class="descname">workers</code><em class="property"> = None</em><a class="headerlink" href="#eventmq.jobmanager.JobManager.workers" title="Permalink to this definition">¶</a></dt>
248<dd><p>keep track of workers</p>
249</dd></dl>
250
251</dd></dl> 266</dd></dl>
252 267
253</div> 268</div>
@@ -271,7 +286,7 @@ for another REQUEST message.</p>
271 286
272 <div role="contentinfo"> 287 <div role="contentinfo">
273 <p> 288 <p>
274 &copy; Copyright 2015, eventboard.io. 289 &copy; Copyright 2016, eventboard.io.
275 290
276 </p> 291 </p>
277 </div> 292 </div>
diff --git a/objects.inv b/objects.inv
index fa92760..ac41242 100644
--- a/objects.inv
+++ b/objects.inv
Binary files differ
diff --git a/poller.html b/poller.html
index 8964feb..60e660e 100644
--- a/poller.html
+++ b/poller.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,7 +92,7 @@
91<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> 92<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>
92<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> 93<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>
93<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> 94<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>
94<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> 95<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
95</ul> 96</ul>
96</li> 97</li>
97<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 98<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -233,7 +234,7 @@ socket remains unregistered.</li>
233 234
234 <div role="contentinfo"> 235 <div role="contentinfo">
235 <p> 236 <p>
236 &copy; Copyright 2015, eventboard.io. 237 &copy; Copyright 2016, eventboard.io.
237 238
238 </p> 239 </p>
239 </div> 240 </div>
diff --git a/protocol.html b/protocol.html
index 43282f6..274f8d1 100644
--- a/protocol.html
+++ b/protocol.html
@@ -60,7 +60,7 @@
60 60
61 61
62 <div class="version"> 62 <div class="version">
63 0 63 0.2.1
64 </div> 64 </div>
65 65
66 66
@@ -82,6 +82,7 @@
82 82
83 83
84 <ul class="current"> 84 <ul class="current">
85<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
85<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li> 86<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a><ul class="current">
87<li class="toctree-l2 current"><a class="current reference internal" href="">EventMQ Protocol Specification</a><ul> 88<li class="toctree-l2 current"><a class="current reference internal" href="">EventMQ Protocol Specification</a><ul>
@@ -236,9 +237,9 @@
236<p>A <strong>REQUEST</strong> command consists of a 7-frame multipart message, formatted as follows.</p> 237<p>A <strong>REQUEST</strong> command consists of a 7-frame multipart message, formatted as follows.</p>
237<table border="1" class="docutils"> 238<table border="1" class="docutils">
238<colgroup> 239<colgroup>
239<col width="10%" /> 240<col width="8%" />
240<col width="22%" /> 241<col width="20%" />
241<col width="68%" /> 242<col width="72%" />
242</colgroup> 243</colgroup>
243<thead valign="bottom"> 244<thead valign="bottom">
244<tr class="row-odd"><th class="head">FRAME</th> 245<tr class="row-odd"><th class="head">FRAME</th>
@@ -265,7 +266,7 @@
265</tr> 266</tr>
266<tr class="row-even"><td>4</td> 267<tr class="row-even"><td>4</td>
267<td>_QUEUE_NAME_</td> 268<td>_QUEUE_NAME_</td>
268<td>the name of the queue the worker belongs to</td> 269<td>the name of the queue the request should be sent to</td>
269</tr> 270</tr>
270<tr class="row-odd"><td>5</td> 271<tr class="row-odd"><td>5</td>
271<td>_HEADERS_</td> 272<td>_HEADERS_</td>
@@ -280,9 +281,9 @@
280<p>A <strong>PUBLISH</strong> command consists of a 7-frame multipart messag, formatted as follows.</p> 281<p>A <strong>PUBLISH</strong> command consists of a 7-frame multipart messag, formatted as follows.</p>
281<table border="1" class="docutils"> 282<table border="1" class="docutils">
282<colgroup> 283<colgroup>
283<col width="10%" /> 284<col width="7%" />
284<col width="22%" /> 285<col width="17%" />
285<col width="68%" /> 286<col width="75%" />
286</colgroup> 287</colgroup>
287<thead valign="bottom"> 288<thead valign="bottom">
288<tr class="row-odd"><th class="head">FRAME</th> 289<tr class="row-odd"><th class="head">FRAME</th>
@@ -309,7 +310,7 @@
309</tr> 310</tr>
310<tr class="row-even"><td>4</td> 311<tr class="row-even"><td>4</td>
311<td>_TOPIC_NAME_</td> 312<td>_TOPIC_NAME_</td>
312<td>the name of the queue the worker belongs to</td> 313<td>the name of the topic this message should be published across</td>
313</tr> 314</tr>
314<tr class="row-odd"><td>5</td> 315<tr class="row-odd"><td>5</td>
315<td>_HEADERS_</td> 316<td>_HEADERS_</td>
@@ -352,7 +353,7 @@
352<td>A unique id for the msg</td> 353<td>A unique id for the msg</td>
353</tr> 354</tr>
354<tr class="row-even"><td>4</td> 355<tr class="row-even"><td>4</td>
355<td>_TOPIC_NAME_</td> 356<td>_QUEUE_NAME_</td>
356<td>name of queue that the job should run in</td> 357<td>name of queue that the job should run in</td>
357</tr> 358</tr>
358<tr class="row-odd"><td>5</td> 359<tr class="row-odd"><td>5</td>
@@ -396,7 +397,7 @@
396<td>A unique id for the msg</td> 397<td>A unique id for the msg</td>
397</tr> 398</tr>
398<tr class="row-even"><td>4</td> 399<tr class="row-even"><td>4</td>
399<td>_TOPIC_NAME_</td> 400<td>_QUEUE_NAME_</td>
400<td>ignored for this command, broadcasted to all queues</td> 401<td>ignored for this command, broadcasted to all queues</td>
401</tr> 402</tr>
402<tr class="row-odd"><td>5</td> 403<tr class="row-odd"><td>5</td>
@@ -415,9 +416,9 @@
415<p>An <strong>INFORM</strong> command consists of a 6-frame multipart message, formatted as follows.</p> 416<p>An <strong>INFORM</strong> command consists of a 6-frame multipart message, formatted as follows.</p>
416<table border="1" class="docutils"> 417<table border="1" class="docutils">
417<colgroup> 418<colgroup>
418<col width="9%" /> 419<col width="13%" />
419<col width="20%" /> 420<col width="29%" />
420<col width="71%" /> 421<col width="58%" />
421</colgroup> 422</colgroup>
422<thead valign="bottom"> 423<thead valign="bottom">
423<tr class="row-odd"><th class="head">FRAME</th> 424<tr class="row-odd"><th class="head">FRAME</th>
@@ -443,8 +444,8 @@
443<td>A unique id for the msg</td> 444<td>A unique id for the msg</td>
444</tr> 445</tr>
445<tr class="row-even"><td>4</td> 446<tr class="row-even"><td>4</td>
446<td>_QUEUE_NAME_</td> 447<td>&nbsp;</td>
447<td>csv seperated names of queue the worker belongs to</td> 448<td>Queues. Unused for scheduler</td>
448</tr> 449</tr>
449<tr class="row-odd"><td>5</td> 450<tr class="row-odd"><td>5</td>
450<td>scheduler</td> 451<td>scheduler</td>
@@ -458,9 +459,9 @@
458<p>An <strong>INFORM</strong> command consists of a 5-frame multipart message, formatted as follows.</p> 459<p>An <strong>INFORM</strong> command consists of a 5-frame multipart message, formatted as follows.</p>
459<table border="1" class="docutils"> 460<table border="1" class="docutils">
460<colgroup> 461<colgroup>
461<col width="8%" /> 462<col width="5%" />
462<col width="20%" /> 463<col width="13%" />
463<col width="72%" /> 464<col width="82%" />
464</colgroup> 465</colgroup>
465<thead valign="bottom"> 466<thead valign="bottom">
466<tr class="row-odd"><th class="head">FRAME</th> 467<tr class="row-odd"><th class="head">FRAME</th>
@@ -486,8 +487,8 @@
486<td>A unique id for the msg</td> 487<td>A unique id for the msg</td>
487</tr> 488</tr>
488<tr class="row-even"><td>4</td> 489<tr class="row-even"><td>4</td>
489<td>_QUEUE_NAME_</td> 490<td>_QUEUES_</td>
490<td>csv seperated names of queue the worker belongs to.</td> 491<td>csv seperated arrays containing an int and a string for weight and name. e.g. [40, &#8216;email&#8217;]</td>
491</tr> 492</tr>
492<tr class="row-odd"><td>5</td> 493<tr class="row-odd"><td>5</td>
493<td>worker</td> 494<td>worker</td>
@@ -643,7 +644,6 @@
643<li>If the worker detects that the broker disconnected it SHOULD restart the conversation.</li> 644<li>If the worker detects that the broker disconnected it SHOULD restart the conversation.</li>
644<li>If the broker detects that a worker has disconnected it should stop sending it a message of any type.</li> 645<li>If the broker detects that a worker has disconnected it should stop sending it a message of any type.</li>
645<li>If the scheduler detects that the broker disconnects it SHOULD restart the conversation.</li> 646<li>If the scheduler detects that the broker disconnects it SHOULD restart the conversation.</li>
646<li>If the broker detects that a scheduler has disconnected it should ??????????.</li>
647</ul> 647</ul>
648</div></blockquote> 648</div></blockquote>
649</div> 649</div>
@@ -709,7 +709,7 @@
709 709
710 <div role="contentinfo"> 710 <div role="contentinfo">
711 <p> 711 <p>
712 &copy; Copyright 2015, eventboard.io. 712 &copy; Copyright 2016, eventboard.io.
713 713
714 </p> 714 </p>
715 </div> 715 </div>
diff --git a/py-modindex.html b/py-modindex.html
index e611bf7..43f24ef 100644
--- a/py-modindex.html
+++ b/py-modindex.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul> 85 <ul>
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li> 87<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
87<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 88<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
88</ul> 89</ul>
@@ -226,7 +227,7 @@
226 227
227 <div role="contentinfo"> 228 <div role="contentinfo">
228 <p> 229 <p>
229 &copy; Copyright 2015, eventboard.io. 230 &copy; Copyright 2016, eventboard.io.
230 231
231 </p> 232 </p>
232 </div> 233 </div>
diff --git a/receiver.html b/receiver.html
index 63af37c..ccce6d3 100644
--- a/receiver.html
+++ b/receiver.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,7 +92,7 @@
91<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">receiver</span></code> &#8211; Receiver</a></li> 92<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">receiver</span></code> &#8211; Receiver</a></li>
92<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> 93<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>
93<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> 94<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>
94<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> - Utilities</a></li> 95<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
95</ul> 96</ul>
96</li> 97</li>
97<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 98<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -282,7 +283,7 @@ False</td>
282 283
283 <div role="contentinfo"> 284 <div role="contentinfo">
284 <p> 285 <p>
285 &copy; Copyright 2015, eventboard.io. 286 &copy; Copyright 2016, eventboard.io.
286 287
287 </p> 288 </p>
288 </div> 289 </div>
diff --git a/router.html b/router.html
index 896c4a6..86fe30d 100644
--- a/router.html
+++ b/router.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,7 +92,7 @@
91<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> 92<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>
92<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">router</span></code> &#8211; Router</a></li> 93<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">router</span></code> &#8211; Router</a></li>
93<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> 94<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>
94<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> - Utilities</a></li> 95<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
95</ul> 96</ul>
96</li> 97</li>
97<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 98<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -259,24 +260,26 @@ and announces itself.</p>
259</dd></dl> 260</dd></dl>
260 261
261<dl class="method"> 262<dl class="method">
262<dt id="eventmq.router.Router.on_receive_request"> 263<dt id="eventmq.router.Router.on_request">
263<code class="descname">on_receive_request</code><span class="sig-paren">(</span><em>msg</em>, <em>depth=0</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.on_receive_request" title="Permalink to this definition">¶</a></dt> 264<code class="descname">on_request</code><span class="sig-paren">(</span><em>sender</em>, <em>msgid</em>, <em>msg</em>, <em>depth=1</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.on_request" title="Permalink to this definition">¶</a></dt>
264<dd><table class="docutils field-list" frame="void" rules="none"> 265<dd><p>Process a client REQUEST frame</p>
266<table class="docutils field-list" frame="void" rules="none">
265<col class="field-name" /> 267<col class="field-name" />
266<col class="field-body" /> 268<col class="field-body" />
267<tbody valign="top"> 269<tbody valign="top">
268<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>msg</strong> &#8211; The untouched message from zmq</td> 270<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
271<li><strong>sender</strong> &#8211; </li>
272<li><strong>msgid</strong> &#8211; </li>
273<li><strong>msgid</strong> &#8211; </li>
274<li><strong>depth</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#int" title="(in Python v2.7)"><em>int</em></a>) &#8211; The recusion depth in retrying when PeerGoneAwayError
275is raised.</li>
276</ul>
277</td>
269</tr> 278</tr>
270</tbody> 279</tbody>
271</table> 280</table>
272</dd></dl> 281</dd></dl>
273 282
274<dl class="method">
275<dt id="eventmq.router.Router.on_request">
276<code class="descname">on_request</code><span class="sig-paren">(</span><em>sender</em>, <em>msgid</em>, <em>msg</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.on_request" title="Permalink to this definition">¶</a></dt>
277<dd><p>Process a client REQUEST frame</p>
278</dd></dl>
279
280<dl class="classmethod"> 283<dl class="classmethod">
281<dt id="eventmq.router.Router.prioritize_queue_list"> 284<dt id="eventmq.router.Router.prioritize_queue_list">
282<em class="property">classmethod </em><code class="descname">prioritize_queue_list</code><span class="sig-paren">(</span><em>unprioritized_iterable</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.prioritize_queue_list" title="Permalink to this definition">¶</a></dt> 285<em class="property">classmethod </em><code class="descname">prioritize_queue_list</code><span class="sig-paren">(</span><em>unprioritized_iterable</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.prioritize_queue_list" title="Permalink to this definition">¶</a></dt>
@@ -291,8 +294,28 @@ come first.</td>
291</tr> 294</tr>
292<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body">IndexError - There was no 0-index element.</td> 295<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body">IndexError - There was no 0-index element.</td>
293</tr> 296</tr>
294<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">sorted <code class="xref py py-class docutils literal"><span class="pre">EMQdeque</span></code> with largest priorites being indexed 297<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">decsending order list. E.g. ((20, &#8216;a&#8217;), (14, &#8216;b&#8217;), (12, &#8216;c&#8217;))</td>
295smaller. E.g. ((20,&#8217;a&#8217; ), (14, &#8216;b&#8217;), (&#8216;12&#8217;, c))</td> 298</tr>
299</tbody>
300</table>
301</dd></dl>
302
303<dl class="method">
304<dt id="eventmq.router.Router.process_client_message">
305<code class="descname">process_client_message</code><span class="sig-paren">(</span><em>original_msg</em>, <em>depth=0</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.process_client_message" title="Permalink to this definition">¶</a></dt>
306<dd><table class="docutils field-list" frame="void" rules="none">
307<col class="field-name" />
308<col class="field-body" />
309<tbody valign="top">
310<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
311<li><strong>msg</strong> &#8211; The untouched message from zmq</li>
312<li><strong>depth</strong> &#8211; The number of times this method has been recursively
313called. This is used to short circuit message retry attempts.</li>
314</ul>
315</td>
316</tr>
317<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><code class="xref py py-exc docutils literal"><span class="pre">InvalidMessageError</span></code> &#8211; Unable to parse the message</p>
318</td>
296</tr> 319</tr>
297</tbody> 320</tbody>
298</table> 321</table>
@@ -314,12 +337,6 @@ a warning is created.</p>
314</table> 337</table>
315</dd></dl> 338</dd></dl>
316 339
317<dl class="method">
318<dt id="eventmq.router.Router.queue_message">
319<code class="descname">queue_message</code><span class="sig-paren">(</span><em>msg</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.router.Router.queue_message" title="Permalink to this definition">¶</a></dt>
320<dd><p>Add a message to the queue for processing later</p>
321</dd></dl>
322
323<dl class="attribute"> 340<dl class="attribute">
324<dt id="eventmq.router.Router.queues"> 341<dt id="eventmq.router.Router.queues">
325<code class="descname">queues</code><em class="property"> = None</em><a class="headerlink" href="#eventmq.router.Router.queues" title="Permalink to this definition">¶</a></dt> 342<code class="descname">queues</code><em class="property"> = None</em><a class="headerlink" href="#eventmq.router.Router.queues" title="Permalink to this definition">¶</a></dt>
@@ -385,13 +402,19 @@ Contains dictionaries:</p>
385<col class="field-name" /> 402<col class="field-name" />
386<col class="field-body" /> 403<col class="field-body" />
387<tbody valign="top"> 404<tbody valign="top">
388<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple"> 405<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
389<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; The socket to use for this ack</li> 406<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; The socket to use for this ack</li>
390<li><strong>recipient</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; The recipient id for the ack</li> 407<li><strong>recipient</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; The recipient id for the ack</li>
391<li><strong>msgid</strong> &#8211; The unique id that we are acknowledging</li> 408<li><strong>msgid</strong> &#8211; The unique id that we are acknowledging</li>
392</ul> 409</ul>
393</td> 410</td>
394</tr> 411</tr>
412<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The ID of the ACK message</p>
413</td>
414</tr>
415<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">msgid</p>
416</td>
417</tr>
395</tbody> 418</tbody>
396</table> 419</table>
397</dd></dl> 420</dd></dl>
@@ -405,12 +428,18 @@ needed when building messages</p>
405<col class="field-name" /> 428<col class="field-name" />
406<col class="field-body" /> 429<col class="field-body" />
407<tbody valign="top"> 430<tbody valign="top">
408<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple"> 431<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
409<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; the socket to send the heartbeat with</li> 432<li><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; the socket to send the heartbeat with</li>
410<li><strong>recipient</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Worker I</li> 433<li><strong>recipient</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Worker I</li>
411</ul> 434</ul>
412</td> 435</td>
413</tr> 436</tr>
437<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The ID of the HEARTBEAT message</p>
438</td>
439</tr>
440<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">msgid</p>
441</td>
442</tr>
414</tbody> 443</tbody>
415</table> 444</table>
416</dd></dl> 445</dd></dl>
@@ -468,7 +497,8 @@ here.</p>
468<dl class="docutils"> 497<dl class="docutils">
469<dt><strong>Keys</strong></dt> 498<dt><strong>Keys</strong></dt>
470<dd><ul class="first last simple"> 499<dd><ul class="first last simple">
471<li><code class="docutils literal"><span class="pre">queues</span></code>: list() of queues the worker belongs to</li> 500<li><code class="docutils literal"><span class="pre">queues</span></code>: list() of queue names and prioritiess the worker
501belongs to. e.g. (10, &#8216;default&#8217;)</li>
472<li><code class="docutils literal"><span class="pre">hb</span></code>: monotonic timestamp of the last received message from 502<li><code class="docutils literal"><span class="pre">hb</span></code>: monotonic timestamp of the last received message from
473worker</li> 503worker</li>
474<li><code class="docutils literal"><span class="pre">available_slots</span></code>: int count of jobs this manager can still 504<li><code class="docutils literal"><span class="pre">available_slots</span></code>: int count of jobs this manager can still
@@ -501,7 +531,7 @@ process.</li>
501 531
502 <div role="contentinfo"> 532 <div role="contentinfo">
503 <p> 533 <p>
504 &copy; Copyright 2015, eventboard.io. 534 &copy; Copyright 2016, eventboard.io.
505 535
506 </p> 536 </p>
507 </div> 537 </div>
diff --git a/search.html b/search.html
index fdeb584..c280580 100644
--- a/search.html
+++ b/search.html
@@ -58,7 +58,7 @@
58 58
59 59
60 <div class="version"> 60 <div class="version">
61 0 61 0.2.1
62 </div> 62 </div>
63 63
64 64
@@ -80,6 +80,7 @@
80 80
81 81
82 <ul> 82 <ul>
83<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
83<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li> 84<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
84<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 85<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
85</ul> 86</ul>
@@ -145,7 +146,7 @@
145 146
146 <div role="contentinfo"> 147 <div role="contentinfo">
147 <p> 148 <p>
148 &copy; Copyright 2015, eventboard.io. 149 &copy; Copyright 2016, eventboard.io.
149 150
150 </p> 151 </p>
151 </div> 152 </div>
diff --git a/searchindex.js b/searchindex.js
index a0264eb..ab28224 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
Search.setIndex({envversion:46,filenames:["api","client","client/messages","contributing","exceptions","index","jobmanager","poller","protocol","receiver","router","sender","utils/classes","utils/devices","utils/index","utils/messages","utils/settings","utils/timeutils"],objects:{"eventmq.client":{messages:[2,0,0,"-"]},"eventmq.client.messages":{build_module_path:[2,4,1,""],defer_job:[2,4,1,""],job:[2,4,1,""],schedule:[2,4,1,""],send_request:[2,4,1,""],send_schedule_request:[2,4,1,""]},"eventmq.exceptions":{EventMQError:[4,5,1,""],InvalidMessageError:[4,5,1,""],MessageError:[4,5,1,""],NoAvailableWorkerSlotsError:[4,5,1,""],PeerGoneAwayError:[4,5,1,""],UnknownQueueError:[4,5,1,""]},"eventmq.jobmanager":{JobManager:[6,3,1,""]},"eventmq.jobmanager.JobManager":{"__init__":[6,2,1,""],jobmanager_main:[6,2,1,""],name:[6,1,1,""],on_heartbeat:[6,2,1,""],on_request:[6,2,1,""],outgoing:[6,1,1,""],request_queue:[6,1,1,""],send_ready:[6,2,1,""],workers:[6,1,1,""]},"eventmq.poller":{Poller:[7,3,1,""]},"eventmq.poller.Poller":{"__init__":[7,2,1,""],poll:[7,2,1,""],register:[7,2,1,""],unregister:[7,2,1,""]},"eventmq.receiver":{Receiver:[9,3,1,""]},"eventmq.receiver.Receiver":{"__init__":[9,2,1,""],connect:[9,2,1,""],listen:[9,2,1,""],name:[9,1,1,""],ready:[9,1,1,""],unbind:[9,2,1,""],zcontext:[9,1,1,""],zsocket:[9,1,1,""]},"eventmq.router":{Router:[10,3,1,""]},"eventmq.router.Router":{add_scheduler:[10,2,1,""],add_worker:[10,2,1,""],clean_up_dead_schedulers:[10,2,1,""],clean_up_dead_workers:[10,2,1,""],get_available_worker:[10,2,1,""],on_heartbeat:[10,2,1,""],on_inform:[10,2,1,""],on_ready:[10,2,1,""],on_receive_request:[10,2,1,""],on_request:[10,2,1,""],prioritize_queue_list:[10,6,1,""],process_worker_message:[10,2,1,""],queue_message:[10,2,1,""],queues:[10,1,1,""],received_disconnect:[10,1,1,""],requeue_worker:[10,2,1,""],reset_heartbeat_counters:[10,2,1,""],router_main:[10,2,1,""],scheduler_queue:[10,1,1,""],schedulers:[10,1,1,""],send_ack:[10,2,1,""],send_heartbeat:[10,2,1,""],send_schedulers_heartbeats:[10,2,1,""],send_workers_heartbeats:[10,2,1,""],sighup_handler:[10,2,1,""],start:[10,2,1,""],waiting_messages:[10,1,1,""],workers:[10,1,1,""]},"eventmq.sender":{Sender:[11,3,1,""]},"eventmq.sender.Sender":{"__init__":[11,2,1,""],connect:[11,2,1,""],listen:[11,2,1,""],name:[11,1,1,""],ready:[11,1,1,""],rebuild:[11,2,1,""],unbind:[11,2,1,""],zcontext:[11,1,1,""],zsocket:[11,1,1,""]},"eventmq.utils":{classes:[12,0,0,"-"],devices:[13,0,0,"-"],messages:[15,0,0,"-"],random_characters:[14,4,1,""],settings:[16,0,0,"-"],timeutils:[17,0,0,"-"],zero_index_cmp:[14,4,1,""]},"eventmq.utils.classes":{EMQPService:[12,3,1,""],EMQdeque:[12,3,1,""],HeartbeatMixin:[12,3,1,""],ZMQReceiveMixin:[12,3,1,""],ZMQSendMixin:[12,3,1,""]},"eventmq.utils.classes.EMQPService":{"__weakref__":[12,1,1,""],is_heartbeat_enabled:[12,1,1,""],on_ack:[12,2,1,""],process_message:[12,2,1,""],reset:[12,2,1,""],send_inform:[12,2,1,""],start:[12,2,1,""]},"eventmq.utils.classes.EMQdeque":{"__init__":[12,2,1,""],"__weakref__":[12,1,1,""],append:[12,2,1,""],appendleft:[12,2,1,""],extend:[12,2,1,""],is_empty:[12,2,1,""],is_full:[12,2,1,""],is_pfull:[12,2,1,""],pop:[12,2,1,""],popleft:[12,2,1,""],remove:[12,2,1,""]},"eventmq.utils.classes.HeartbeatMixin":{"__init__":[12,2,1,""],"__weakref__":[12,1,1,""],is_dead:[12,2,1,""],reset_heartbeat_counters:[12,2,1,""],send_heartbeat:[12,2,1,""]},"eventmq.utils.classes.ZMQReceiveMixin":{"__weakref__":[12,1,1,""],recv:[12,2,1,""],recv_multipart:[12,2,1,""]},"eventmq.utils.classes.ZMQSendMixin":{"__weakref__":[12,1,1,""],send:[12,2,1,""],send_multipart:[12,2,1,""]},"eventmq.utils.devices":{generate_device_name:[13,4,1,""]},"eventmq.utils.messages":{fwd_emqp_router_message:[15,4,1,""],generate_msgid:[15,4,1,""],parse_message:[15,4,1,""],parse_router_message:[15,4,1,""],send_emqp_message:[15,4,1,""],send_emqp_router_message:[15,4,1,""]},"eventmq.utils.settings":{import_settings:[16,4,1,""]},"eventmq.utils.timeutils":{IntervalIter:[17,3,1,""],monotonic:[17,4,1,""],seconds_until:[17,4,1,""],timestamp:[17,4,1,""]},"eventmq.utils.timeutils.IntervalIter":{"__init__":[17,2,1,""],"__weakref__":[17,1,1,""]},eventmq:{client:[1,0,0,"-"],exceptions:[4,0,0,"-"],jobmanager:[6,0,0,"-"],poller:[7,0,0,"-"],receiver:[9,0,0,"-"],router:[10,0,0,"-"],sender:[11,0,0,"-"],utils:[14,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","attribute","Python attribute"],"2":["py","method","Python method"],"3":["py","class","Python class"],"4":["py","function","Python function"],"5":["py","exception","Python exception"],"6":["py","classmethod","Python class method"]},objtypes:{"0":"py:module","1":"py:attribute","2":"py:method","3":"py:class","4":"py:function","5":"py:exception","6":"py:classmethod"},terms:{"0mq":[8,12],"5min":17,"__init__":[6,7,9,11,12,17],"__weakref__":[12,17],"_empty_":8,"_headers_":8,"_issu":[],"_msg_":8,"_msgid_":8,"_queue_name_":8,"_recipient_id":12,"_sourc":[],"_topic_name_":8,"_unix_ts_":8,"abstract":8,"boolean":12,"case":[8,12,17],"class":[],"default":[2,6,8,9,10,11,12],"float":[12,17],"function":2,"import":[2,3,6,10,16],"int":[2,7,10,12,17],"long":[7,12],"new":10,"public":8,"return":[2,3,7,9,10,11,12,13,14,15,17],"true":[2,8,9,10,11,12],"while":8,abl:10,about:[6,8,10],absolut:3,accept:[8,12],account:[10,15],ack:[8,10],ackd_msgid:12,acknowledg:[8,10],act:[1,8],activ:[],active_job:[],actual:[6,10],add:10,add_schedul:10,add_work:10,addr:[9,11,12],address:[],after:8,agre:8,all:[2,4,6,8,9,10,11,12],allow:8,alon:2,alpha:8,alreadi:10,also:12,alwai:2,and_data:15,ani:[2,8,10],announc:10,anoth:[6,10],anyth:[],api:[],appear:7,append:12,appendleft:12,appened:10,appli:16,applic:[2,8],architectur:[],aren:[],arg2:2,arg3:2,arg:[2,6,7,9,10,11,12],argument:12,arithmet:17,around:[],ascii:13,assum:17,attempt:4,attr:7,automat:12,avail:[4,10],available_slot:10,available_work:[],awaiting_ack:12,back:[8,10,12],backend_addr:10,base:[4,7,12],basi:8,becaus:[10,12],becom:[],been:[2,12],befor:[2,7,8],begin:[10,12],belong:[8,10],below:8,best:2,between:[2,8],bin:[],block:2,bool:[2,9,11,12],boot:17,both:[7,8],box:2,broadcast:8,broker:[8,12],buffer:10,build:[2,10,11],build_module_path:2,built:8,bulid:9,busi:[],calcul:17,call:[7,10,12],callabl:[2,6,9],callback:12,can:[1,2,8,10,12,13,15],captur:12,care:13,caus:13,certain:12,chang:8,charact:14,check:[2,9,11,12],class_arg:[2,6],class_kwarg:[2,6],classmethod:10,clean_up_dead_schedul:10,clean_up_dead_work:10,client:[],clock:17,close:[12,17],cmp:14,code:[3,5,12],collect:12,colon:2,column:[],com:[],come:[2,10],comma:8,command:[2,6,8,10,12,15],compar:14,complet:8,compon:8,configur:[2,10,16],connction:[9,11],connect:[8,9,10,11,12,15],consist:8,contact:4,contain:[1,8,10,12,14],content:[],context:[9,11],contruct:12,convers:8,convienc:[7,12],correctli:[],count:[6,8,10,17],counter:[10,12],cpu:2,creat:[10,11,14],cross:[],csv:8,current:[9,11,12],custom:10,data:[10,15],deal:14,dealer:11,death:12,debug:8,decor:2,decrypt:2,def:[],defeat:8,defer:2,defer_job:2,defin:[2,6,8,9,11,12,17],deliv:8,denot:2,depth:10,dequ:12,describ:8,descript:8,detail:[2,8],detect:8,determin:8,devic:[7,12,15],dialog:8,dict:[2,6,7],dictionari:[7,8,10],did:2,die:10,differ:3,directli:[7,12],disabl:2,disconnect:[8,9],distribut:8,doe:12,doesn:7,dot:2,down:17,dst:17,duplic:10,dure:11,effort:2,either:[8,12],element:[10,12],els:[3,8],empti:8,emqdequ:[10,12],emqp:[],emqpservic:12,enabl:[2,12],encod:13,encount:[2,4],end:[2,12],enderlab:[],ensur:[2,6,8,12],entri:10,error:[2,12,13],etc:10,even:8,event:[7,12],eventloop:[],eventmqerror:4,everi:6,everyth:13,exampl:[10,12,17],except:[],exectu:10,execut:[2,8,17],exist:[4,6],explicitli:12,expos:6,extend:12,extra:8,fail:[2,8],failur:2,fair:8,fals:[2,8,9,11,12],featur:13,few:3,field:8,file:[],find:12,finish:[8,10],first:[8,10,12],fit:8,flag:[2,7],follow:[2,8,12],form:12,format:[2,6,8,10,15],forward:15,found:[4,10],foundat:8,frame:[],free:8,from:[4,7,8,9,10,11,12,17],frontend_addr:10,full:12,func:[2,6,12],fwd_emqp_router_messag:15,gener:[6,7,8,9,11,15],generate_device_nam:13,generate_msgid:15,get_available_work:10,github:[],give:2,given:10,gmtime:[],gnu:8,goal:[],good:12,guarante:[2,8],guarente:2,hand:14,handl:[6,8,10,12],happen:[2,7,10,11],hard:12,hasn:10,have:[2,12,15],haven:10,header:[],heartbeat:[],heartbeat_timeout:10,heartbeati:12,heartbeatmixin:12,heavi:8,help:[],helper:12,here:[8,10],hit:12,home:[],hope:8,how:[2,7],html:8,http:8,ident:[8,13],identifi:10,ietf:8,ignor:[8,12],immediatli:2,implement:[8,12],impli:8,import_set:16,includ:[2,8],incom:[],index:[5,10,14],indexerror:10,inform:[6,8,10,12],inform_typ:[],inherit:4,initi:[2,12],insert:[8,12],instal:3,instanc:6,instanti:[2,6],integ:10,intern:4,interpret:8,interv:[2,8,17],interval_min:[],interval_sec:[2,17],intervalit:17,intes:2,invalidmessageerror:4,is_dead:12,is_empti:12,is_ful:12,is_heartbeat_en:12,is_pful:12,isn:[10,12],issu:[3,5,8],item:12,iter:[7,10,12],iterat:12,itself:10,job:[],jobmanag:[],jobmanager_main:6,keep:[6,10],kei:[7,8,10],kick:[6,10],know:[2,6,10],kwarg2:2,kwarg:[2,6,7,9,10,11,12],languag:[],largest:10,last:[2,10,12],last_recv_heartbeat:10,later:[8,10],least:[8,12],leav:8,left:12,length:[12,14],lesser:8,let:8,lib:[],licens:[],like:[6,12,14],limit:12,list:[2,4,6,8,10,12,14,17],listen:[9,10,11,12],locat:2,log:[2,6,10],logic:[6,10],longer:4,look:12,loop:[7,10,12],lower:10,mai:[2,8,10,12],main:6,make:14,malform:4,manag:[],mani:[2,8,11],manual:8,master:8,match:12,member:10,memebership:10,merchant:8,mess:17,messag:[],message_bodi:15,message_id:15,messageerror:4,met:12,meta:[10,15],method:[2,6,7,10,12],minut:2,mod:[],mode:[],modifi:8,modul:[1,2,5,6,14],monoton:[10,12,17],more:[8,12,14],most:12,msg:[6,8,10,12,15],msg_id:[],msgid:[6,10,12],multipart:[8,12],multiprocess:6,must:[8,12],name:[2,6,8,9,10,11],need:[10,11],never:17,next:[7,10,17],noavailableworkerslotserror:[4,10],none:[2,6,9,10,11,12,13,15],noop:6,normal:12,note:[6,9,11],now:12,number:[10,17],numer:17,obj:10,object:[7,12,17],occur:12,off:[6,10],on_ack:12,on_command:[10,12],on_emqp_command:12,on_ful:12,on_heartbeat:[6,10],on_inform:10,on_readi:10,on_receive_repli:[],on_receive_request:10,on_recv:9,on_request:[6,10],on_schedul:12,onc:8,onli:[],onlin:10,option:[2,6,8,9,11,15],org:8,orient:8,origin:8,other:[2,8],otherwis:[2,6,9,11,12],out:[6,12],outgo:[6,12],overwhelm:2,own:12,packag:[],page:5,param:2,paramet:[2,6,7,9,10,11,12,13,15,17],pars:[12,15],parse_messag:15,parse_router_messag:15,part:[8,15],particular:[8,11],pass:[2,8,9],path:[2,6],payload:15,peer:[4,8,12],peergoneawayerror:4,per:10,pfull:12,pictur:8,pip:[],placehold:[6,10],point:[],poll:7,poller:[],pollin:7,pollout:7,pool:[8,10],pop:[10,12],popleft:12,port:10,portion:6,possibl:3,practic:12,prefix:[13,15],prepend:8,pretti:8,priorit:10,prioriti:10,prioritize_queue_list:10,problem:4,process:[8,10,11,12],process_messag:[6,12],process_worker_messag:10,programm:12,prop:[],proper:12,properti:[9,11,12],protocol:[],protocol_vers:12,provid:[10,12],pub:8,publish:8,purpos:8,py2:17,py3:17,python2:[],python3:13,python:12,queu:2,queue:[2,4,6,8,10,12,14],queue_messag:10,queue_nam:10,quick:2,rais:[2,4,9,10,11,12,15],random:[14,15],random_charact:14,raw:12,raw_messag:[],readi:[6,8,9,10,11],rebind:10,rebuild:11,receiv:[],received_disconnect:10,recent:[8,10],reciev:[],recip:[],recipi:[10,12,15],recipient_id:15,recommend:8,reconnect:11,recv:12,recv_multipart:12,redistribut:8,refer:[6,12,17],regist:[7,10],regular:8,reject:12,rel:3,reliabl:8,reload:10,remain:7,remot:12,remov:[8,10,12],reopen:12,rep:9,repli:[2,6,8,15],reply_request:2,repres:17,req:11,request:[],request_queu:6,requeue_work:10,requir:8,requri:[],reset:[10,12],reset_heartbeat_count:[10,12],resourc:[6,8],respond:[8,10,12],respons:[2,6,9,10,11],restart:[8,11],retri:[2,8],retry_count:2,rfc2119:8,rfc:8,right:12,robin:8,roughli:11,round:8,rout:[8,10],router:[],router_main:10,run:[2,6,8,10,12],sake:17,same:[11,14],schedul:[],scheduler_id:10,scheduler_queu:10,scheduler_zmq_id:10,search:5,second:17,seconds_until:17,see:[7,8,10,12],self:[6,10,11,12],send:[2,4,6,8,10,11,12,15],send_ack:10,send_emqp_messag:15,send_emqp_router_messag:15,send_heartbeat:[10,12],send_inform:12,send_messag:[],send_multipart:12,send_raw:[],send_readi:6,send_request:2,send_schedule_request:2,send_schedulers_heartbeat:10,send_workers_heartbeat:10,sender:[],sender_id:15,sent:[8,10,12],seper:[2,8],serv:8,server:[6,8],servic:[8,12],service_typ:12,set:[2,6,7,8,10,11,12,13],setup:6,shall:8,shalt:[],should:[2,4,7,8,9,10,11,12],shown:8,sighup:10,sighup_handl:10,signum:10,simpl:[10,14],sinc:17,singl:8,site:[],size:12,skip:[11,12],skip_zmqstream:11,slot:10,smaller:10,socket:[2,7,8,9,10,11,12,13,15],softwar:8,some:[2,6,12,14,15],someon:8,someth:[2,11,12,17],somewher:3,sort:[10,14],sourc:[3,5],spawn:6,specif:[],specifi:[8,12,14],start:[],start_valu:17,state:12,statu:8,still:10,stop:8,store:10,str:[2,6,9,10,11,12,13,14,15],string:[2,8,9,10,11,12,13,15],structur:4,sub:8,subclass:4,subcmd:6,subcommand:[2,6],subject:8,subset:8,subtract:17,success:8,successfulli:[2,12],system:[3,10],take:[10,11,12,13,15],task:[2,6],tcp:10,tell:6,term:8,than:[],thei:[2,12],them:9,thi:[1,2,4,6,7,8,9,10,11,12,13,14,17],thing:[2,6,11,12,14,15],thou:[],threshold:12,through:[8,10],thy:[],time:[],timeout:7,timestamp:[8,10,17],timeutil:[],timezon:[],tip:3,tool:8,topic:[],topolog:[],tornado:[],trace:8,track:[6,10,12],tri:2,tupl:[7,10,12,15],type:[2,8,9,10,11,12,14],type_:12,typecast:7,typeerror:9,unbind:[9,11],undefin:7,under:8,unicod:13,uniqu:[6,8,10],unit:6,univers:[],unix:8,unknownqueueerror:[4,10],unless:[6,9,11],unprioritized_iter:10,unregist:7,unschedul:[2,8],until:17,untouch:[10,15],unus:[],updat:12,upon:8,upstream:6,usag:17,usual:12,utilit:[],utlitii:12,uuid:[6,9,10,11],vagrant:[],valid:8,valu:[2,7,8,12,14,15,17],valueerror:12,variabl:12,version:[3,8,12],via:[2,17],virtualenv:[],wait:[2,7],waiting_messag:10,walk:6,want:12,warn:10,warranti:8,weak:[12,17],web:8,well:8,went:2,when:[1,2,3,4,6,8,9,10,11,12,13,14],where:[2,8,10,12,17],which:[8,10,12,13],who:[1,10],wish:[2,15],without:[8,11],word:8,work:[3,6,12],worker:[],worker_id:10,worri:8,would:[2,12,17],wrap:[],wrong:2,you:[2,3,8,10,11,12,15],your:[2,8,12],zcontext:[9,11],zero_index_cmp:14,zeromq:8,zmq:[7,8,9,10,11,12,13,15],zmqreceivemixin:12,zmqsendmixin:12,zmqstream:11,zsocket:[9,11]},titles:["API Documentation","<code class=\"docutils literal\"><span class=\"pre\">client</span></code> &#8211; Client Utilities","<code class=\"docutils literal\"><span class=\"pre\">messages</span></code> &#8211; Client Messaging","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\">classes</span></code> &#8211; Utility Classes","<code class=\"docutils literal\"><span class=\"pre\">devices</span></code> &#8211; Device Utilities","<code class=\"docutils literal\"><span class=\"pre\">utils</span></code> &#8211; Utilities","<code class=\"docutils literal\"><span class=\"pre\">messages</span></code> &#8211; Message Utilities","<code class=\"docutils literal\"><span class=\"pre\">settings</span></code> &#8211; Settings Utilities","<code class=\"docutils literal\"><span class=\"pre\">timeutils</span></code> &#8211; Time Utilites"],titleterms:{"class":12,address:8,api:0,architectur:8,client:[1,2,8],contribut:3,devic:13,document:[0,5],emqp:8,eventmq:[3,5,8],except:4,frame:8,get:[],global:8,glossari:[],goal:8,guid:[],header:8,heartbeat:8,indic:5,job:6,jobmanag:6,languag:8,licens:8,manag:6,messag:[2,15],mod:[],poller:7,protocol:8,receiv:9,request:8,router:[8,10],schedul:8,sender:11,set:16,specif:8,start:[],style:[],tabl:5,time:17,timeutil:17,topolog:8,util:[1,12,13,14,15,16],utilit:17,welcom:[],worker:8}}) \ No newline at end of file Search.setIndex({envversion:46,filenames:["api","client","client/messages","contributing","exceptions","index","jobmanager","poller","protocol","receiver","router","sender","settings_file","using","utils/classes","utils/devices","utils/index","utils/messages","utils/settings","utils/timeutils"],objects:{"eventmq.client":{messages:[2,0,0,"-"]},"eventmq.client.messages":{build_module_path:[2,3,1,""],defer_job:[2,3,1,""],schedule:[2,3,1,""],send_request:[2,3,1,""],send_schedule_request:[2,3,1,""]},"eventmq.exceptions":{EventMQError:[4,5,1,""],InvalidMessageError:[4,5,1,""],MessageError:[4,5,1,""],NoAvailableWorkerSlotsError:[4,5,1,""],PeerGoneAwayError:[4,5,1,""],UnknownQueueError:[4,5,1,""]},"eventmq.jobmanager":{JobManager:[6,4,1,""]},"eventmq.jobmanager.JobManager":{"__init__":[6,2,1,""],concurrent_jobs:[6,1,1,""],jobmanager_main:[6,2,1,""],name:[6,1,1,""],on_heartbeat:[6,2,1,""],on_request:[6,2,1,""],outgoing:[6,1,1,""],queues:[6,1,1,""],send_ready:[6,2,1,""]},"eventmq.poller":{Poller:[7,4,1,""]},"eventmq.poller.Poller":{"__init__":[7,2,1,""],poll:[7,2,1,""],register:[7,2,1,""],unregister:[7,2,1,""]},"eventmq.receiver":{Receiver:[9,4,1,""]},"eventmq.receiver.Receiver":{"__init__":[9,2,1,""],connect:[9,2,1,""],listen:[9,2,1,""],name:[9,1,1,""],ready:[9,1,1,""],unbind:[9,2,1,""],zcontext:[9,1,1,""],zsocket:[9,1,1,""]},"eventmq.router":{Router:[10,4,1,""]},"eventmq.router.Router":{add_scheduler:[10,2,1,""],add_worker:[10,2,1,""],clean_up_dead_schedulers:[10,2,1,""],clean_up_dead_workers:[10,2,1,""],get_available_worker:[10,2,1,""],on_heartbeat:[10,2,1,""],on_inform:[10,2,1,""],on_ready:[10,2,1,""],on_request:[10,2,1,""],prioritize_queue_list:[10,6,1,""],process_client_message:[10,2,1,""],process_worker_message:[10,2,1,""],queues:[10,1,1,""],received_disconnect:[10,1,1,""],requeue_worker:[10,2,1,""],reset_heartbeat_counters:[10,2,1,""],router_main:[10,2,1,""],scheduler_queue:[10,1,1,""],schedulers:[10,1,1,""],send_ack:[10,2,1,""],send_heartbeat:[10,2,1,""],send_schedulers_heartbeats:[10,2,1,""],send_workers_heartbeats:[10,2,1,""],sighup_handler:[10,2,1,""],start:[10,2,1,""],waiting_messages:[10,1,1,""],workers:[10,1,1,""]},"eventmq.sender":{Sender:[11,4,1,""]},"eventmq.sender.Sender":{"__init__":[11,2,1,""],connect:[11,2,1,""],listen:[11,2,1,""],name:[11,1,1,""],ready:[11,1,1,""],rebuild:[11,2,1,""],unbind:[11,2,1,""],zcontext:[11,1,1,""],zsocket:[11,1,1,""]},"eventmq.utils":{classes:[14,0,0,"-"],devices:[15,0,0,"-"],messages:[17,0,0,"-"],random_characters:[16,3,1,""],settings:[18,0,0,"-"],timeutils:[19,0,0,"-"],tuplify:[16,3,1,""],zero_index_cmp:[16,3,1,""]},"eventmq.utils.classes":{EMQPService:[14,4,1,""],EMQdeque:[14,4,1,""],HeartbeatMixin:[14,4,1,""],ZMQReceiveMixin:[14,4,1,""],ZMQSendMixin:[14,4,1,""]},"eventmq.utils.classes.EMQPService":{"__weakref__":[14,1,1,""],is_heartbeat_enabled:[14,1,1,""],on_ack:[14,2,1,""],process_message:[14,2,1,""],reset:[14,2,1,""],send_inform:[14,2,1,""],start:[14,2,1,""]},"eventmq.utils.classes.EMQdeque":{"__init__":[14,2,1,""],"__weakref__":[14,1,1,""],append:[14,2,1,""],appendleft:[14,2,1,""],extend:[14,2,1,""],is_empty:[14,2,1,""],is_full:[14,2,1,""],is_pfull:[14,2,1,""],pop:[14,2,1,""],popleft:[14,2,1,""],remove:[14,2,1,""]},"eventmq.utils.classes.HeartbeatMixin":{"__init__":[14,2,1,""],"__weakref__":[14,1,1,""],is_dead:[14,2,1,""],reset_heartbeat_counters:[14,2,1,""],send_heartbeat:[14,2,1,""]},"eventmq.utils.classes.ZMQReceiveMixin":{"__weakref__":[14,1,1,""],recv:[14,2,1,""],recv_multipart:[14,2,1,""]},"eventmq.utils.classes.ZMQSendMixin":{"__weakref__":[14,1,1,""],send:[14,2,1,""],send_multipart:[14,2,1,""]},"eventmq.utils.devices":{generate_device_name:[15,3,1,""]},"eventmq.utils.messages":{fwd_emqp_router_message:[17,3,1,""],generate_msgid:[17,3,1,""],parse_message:[17,3,1,""],parse_router_message:[17,3,1,""],send_emqp_message:[17,3,1,""],send_emqp_router_message:[17,3,1,""]},"eventmq.utils.settings":{import_settings:[18,3,1,""]},"eventmq.utils.timeutils":{IntervalIter:[19,4,1,""],monotonic:[19,3,1,""],seconds_until:[19,3,1,""],timestamp:[19,3,1,""]},"eventmq.utils.timeutils.IntervalIter":{"__init__":[19,2,1,""],"__weakref__":[19,1,1,""]},eventmq:{client:[1,0,0,"-"],exceptions:[4,0,0,"-"],jobmanager:[6,0,0,"-"],poller:[7,0,0,"-"],receiver:[9,0,0,"-"],router:[10,0,0,"-"],sender:[11,0,0,"-"],utils:[16,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"],"6":["py","classmethod","Python class method"]},objtypes:{"0":"py:module","1":"py:attribute","2":"py:method","3":"py:function","4":"py:class","5":"py:exception","6":"py:classmethod"},terms:{"0mq":[8,14],"5min":19,"__init__":[6,7,9,11,14,19],"__weakref__":[14,19],"_empty_":8,"_headers_":8,"_issu":[],"_msg_":8,"_msgid_":8,"_queue_name_":8,"_queues_":8,"_recipient_id":14,"_sourc":[],"_topic_name_":8,"_unix_ts_":8,"abstract":8,"boolean":14,"case":[8,14,19],"class":[],"default":[2,6,8,9,10,11,12,14],"float":[14,19],"function":2,"import":[2,3,6,10,12,18],"int":[2,7,8,10,14,19],"long":[7,14],"new":[10,14],"public":8,"return":[2,3,7,9,10,11,14,15,16,17,19],"short":10,"true":[8,9,10,11,14],"while":8,abl:[10,12],about:[6,8,10],absolut:3,accept:[8,12,14],account:[10,17],ack:[8,10],ackd_msgid:14,acknowledg:[8,10],across:8,act:[1,8],activ:[],active_job:[],actual:[6,10],add:10,add_schedul:10,add_work:10,addr:[9,11,14],address:[],after:8,agre:8,all:[2,4,6,8,9,10,11,14],allow:8,alon:[],alpha:8,alreadi:10,also:14,alwai:2,and_data:17,ani:[2,8,10,16],announc:10,anoth:[6,10,12],anyth:12,api:[],app:14,appear:7,append:14,appendleft:14,appened:10,appli:18,applic:[2,8],architectur:[],aren:[],arg2:2,arg3:2,arg:[2,6,7,9,10,11,14],argument:14,arithmet:19,around:[],arrai:8,ascii:15,assign:12,assum:19,attempt:[4,10],attr:7,automat:14,avail:[4,10],available_slot:10,available_work:[],awaiting_ack:14,back:[8,10,14],backend_addr:10,backward:14,base:[4,7,12,14],basi:8,becaus:[10,14],becom:12,been:[2,10,14],befor:[2,7,8],begin:[10,12,14],belong:10,below:8,best:2,between:[2,8],bin:[],block:12,bool:[2,6,9,11,14],boot:19,both:[7,8],box:12,broadcast:8,broker:[6,8,14],broker_addr:6,buffer:10,build:[2,10,11],build_module_path:2,built:8,bulid:9,busi:[],calcul:19,call:[7,10,14],callabl:[2,6,9],callback:14,can:[1,2,8,10,14,15,17],captur:14,care:15,caus:15,certain:14,chang:8,charact:16,check:[9,11,14],choos:12,circuit:10,class_arg:[2,6],class_kwarg:[2,6],classmethod:10,clean_up_dead_schedul:10,clean_up_dead_work:10,client:[],clock:19,close:[14,19],cmp:16,code:[3,5,14],collect:14,colon:[2,12],column:[],com:[],come:[2,10],comma:8,command:[2,6,8,10,14,17],compar:16,compat:14,complet:8,compon:8,concurr:12,conf:12,config:12,configur:[2,10,18],connction:[9,11],connect:[6,8,9,10,11,14,17],consist:8,contact:4,contain:[1,8,10,14,16],content:[],context:[9,11],control:12,contruct:14,convers:8,convert:16,convienc:[7,14],core:12,correctli:[],count:[6,8,10,19],counter:[10,14],cpu:12,creat:[10,11,16],cron:2,cross:[],csv:8,current:[9,11,14],custom:10,cycl:12,data:[10,17],data_process:12,deal:16,dealer:11,death:14,debug:8,decor:[],decrypt:[],decsend:10,def:[],defeat:8,defer:2,defer_job:2,defin:[2,6,8,9,11,14,19],deliv:8,denot:2,depth:10,dequ:14,describ:8,descript:8,detail:8,detect:8,determin:8,devic:[],dialog:8,dict:[2,6,7],dictionari:[7,8,10],did:[],die:10,differ:3,directli:[7,14],disabl:2,disconnect:[8,9],distribut:8,doe:14,doesn:7,don:6,dot:2,down:[12,19],dst:19,duplic:10,dure:11,each:[],effici:12,effort:2,either:[8,14],element:[10,14],els:[3,8],email:[8,12],empti:[8,17],emqdequ:14,emqp:[],emqpservic:14,enabl:[2,14],encod:15,encount:[2,4],end:[2,14],enderlab:[],ensur:[2,6,8,14],entri:10,equal:12,error:[2,14,15],etc:[10,12],evalu:2,even:8,event:[7,14],eventloop:[],eventmqerror:4,everi:[2,6],everyth:15,exampl:[10,12,14,19],except:[],exectu:10,execut:[2,8,12,19],exist:[4,6],explicitli:[12,14],expos:6,extend:14,extra:8,fail:[2,8],failur:2,fair:8,fals:[2,8,9,11,14],featur:15,few:3,field:8,file:12,find:14,finish:[8,10],first:[8,10,14,17],fit:8,flag:[2,7],follow:[2,8,14],form:14,format:[2,6,8,10,17],forward:[14,17],found:[4,10,12],foundat:8,frame:[],free:8,from:[4,7,8,9,10,11,14,19],frontend_addr:10,full:14,func:[2,6,14],fwd_emqp_router_messag:17,gener:[6,7,8,9,11,17],generate_device_nam:15,generate_msgid:17,get_available_work:10,github:[],give:2,given:10,gmtime:[],gnu:8,goal:[],good:14,group:12,guarante:[2,8],guarente:2,hand:16,handl:[6,8,10,14],handler:6,happen:[2,7,10,11],hard:14,hasn:10,have:[2,12,14,17],haven:10,header:[],heartbeat:[],heartbeat_timeout:10,heartbeati:14,heartbeatmixin:14,heavi:8,help:12,helper:14,here:[8,10],high:[],highest:12,hit:14,home:[],hope:8,how:[2,7],html:8,http:8,ident:[8,15],identifi:10,ietf:8,ignor:[8,14],immedi:2,immediatli:2,implement:[8,14],impli:8,import_set:18,includ:[2,8,14],incom:[],index:[5,10,16],indexerror:10,indiviud:12,inform:[6,8,10,14],inform_typ:[],inherit:4,ini:[12,18],initi:[2,14],insert:[8,14],instal:3,instanc:6,instanti:[2,6],integ:10,intens:12,interest:16,intern:4,interpret:8,interv:[2,8,19],interval_min:[],interval_sec:[2,19],intervalit:19,intes:[],invalidmessageerror:[4,10],is_dead:14,is_empti:14,is_ful:14,is_heartbeat_en:14,is_pful:14,isn:[10,14],issu:[3,5,8],item:14,iter:[7,10,14],iterat:14,itself:10,job:[],job_schedul:2,jobmanag:[],jobmanager_main:6,keep:[6,10],kei:[7,8,10],kick:[6,10],know:[2,6,10],kwarg2:2,kwarg:[2,6,7,9,10,11,14],languag:[],larg:12,larger:12,largest:10,last:[2,10,14],last_recv_heartbeat:10,later:8,least:[8,14],leav:[8,12],left:14,length:[14,16],lesser:8,let:8,lib:[],licens:[],like:[6,14,16],limit:14,list:[2,4,6,8,10,12,14,16,19],listen:[6,9,10,11,12,14],load:12,local:12,locat:2,log:[2,6,10],logic:[6,10],longer:[4,12],look:14,loop:[7,10,14],lot:12,low:[],lower:10,mai:[8,10,14],main:6,make:16,malform:4,manag:[],mani:[2,8,11],manual:8,master:8,match:14,med:[],member:10,memebership:10,merchant:8,mess:19,messag:[],message_bodi:17,message_id:17,messageerror:4,met:14,meta:[10,17],method:[2,6,7,10,14],minut:2,mod:[],mode:[],model:12,modifi:8,modul:[1,2,5,6,16],monoton:[10,14,19],more:[8,14,16],most:14,msg:[6,8,10,14,17],msg_id:[],msgid:[6,10,14],multipart:[8,14],multiprocess:[6,12],must:[8,14],name:[2,6,8,9,10,11,12,18],need:[10,11],never:19,next:[7,10,12,19],noavailableworkerslotserror:[4,10],none:[2,6,9,10,11,14,15,17],noop:6,normal:14,note:[6,9,11],notifi:14,now:14,number:[10,12,19],numer:19,obj:10,object:[7,14,16,19],occur:14,off:[6,10],on_ack:14,on_command:[10,14],on_emqp_command:14,on_ful:14,on_heartbeat:[6,10],on_inform:10,on_readi:10,on_receive_repli:[],on_receive_request:[],on_recv:9,on_request:[6,10],on_schedul:14,onc:8,onli:[],onlin:[10,14],option:[2,6,8,9,11,17],order:10,org:8,orient:8,origin:8,original_msg:10,other:[2,8,12],otherwis:[6,9,11,14],out:[6,14],outgo:[6,14],overwhelm:[],own:14,packag:[],page:5,param:2,paramet:[2,6,7,9,10,11,14,15,16,17,18,19],pars:[10,14,17],parse_messag:17,parse_router_messag:17,part:[8,17],particular:[8,11],pass:[2,8,9,14],path:[2,6],payload:17,peer:[4,8,14],peergoneawayerror:[4,10],per:10,pfull:14,philosophi:[],pictur:8,pip:[],placehold:[6,10],point:12,poll:7,poller:[],pollin:7,pollout:7,pool:[8,10],pop:[10,14],popleft:14,port:10,portion:6,possibl:3,practic:14,prefix:[15,17],prepend:8,pretti:[8,12],primari:[],priorit:10,prioriti:10,prioritiess:10,prioritize_queue_list:10,problem:4,process:[8,10,11,12,14],process_client_messag:10,process_messag:[6,14],process_worker_messag:10,programm:14,prop:[],proper:14,properti:[9,11,14],protocol:[],protocol_vers:14,provid:[10,14],pub:8,publish:8,purpos:8,push_notif:14,py2:19,py3:19,python2:[],python3:15,python:14,queu:[],queue:[],queue_messag:[],queue_nam:10,quick:[],rais:[2,4,9,10,11,14,17],random:[16,17],random_charact:16,raw:14,raw_messag:[],readi:[6,8,9,10,11,12,14],rebind:10,rebuild:11,receiv:[],received_disconnect:10,recent:[8,10],reciev:[],recip:[],recipi:[10,14,17],recipient_id:17,recommend:[8,12,14],reconnect:11,recurs:[10,16],recus:10,recv:14,recv_multipart:14,redistribut:8,refer:[6,14,19],regist:[6,7,10],regular:8,reject:14,rel:3,reliabl:8,reload:10,remain:7,remot:14,remov:[8,10,14],reopen:14,rep:9,repli:[2,6,8,17],reply_request:2,repres:19,req:11,request:[],request_queu:[],requeue_work:10,requir:8,requri:[],reset:[10,14],reset_heartbeat_count:[10,14],resourc:[6,8],respond:[8,10,14],respons:[6,9,10,11],restart:[8,11],retri:[2,8,10],retry_count:2,rfc2119:8,rfc:8,right:14,robin:8,roughli:11,round:8,rout:[8,10],router:[],router_main:10,run:[2,6,8,10,12,14],safe:12,sake:19,same:[11,16],schedul:[],scheduler_id:10,scheduler_queu:10,scheduler_zmq_id:10,search:5,second:19,seconds_until:19,section:18,see:[7,8,10,14],self:[6,10,11,14],semi:12,send:[2,4,6,8,10,11,14,17],send_ack:10,send_emqp_messag:17,send_emqp_router_messag:17,send_heartbeat:[10,14],send_inform:14,send_messag:[],send_multipart:14,send_raw:[],send_readi:6,send_request:2,send_schedule_request:2,send_schedulers_heartbeat:10,send_workers_heartbeat:10,sender:[],sender_id:17,sent:[2,8,10,12,14],seper:[2,8,12],serv:8,server:[6,8,12],servic:[8,14],service_typ:14,set:[],setup:[],shall:8,shalt:[],should:[2,4,7,8,9,10,11,12,14,17],shown:8,sighup:10,sighup_handl:10,signal:6,signum:10,similar:12,simpl:[10,16],sinc:19,singl:[8,14],site:[],size:14,skip:[11,14],skip_sign:6,skip_zmqstream:11,slot:10,slow:12,smaller:12,socket:[2,7,8,9,10,11,14,15,17],softwar:8,some:[2,6,12,14,16,17],someon:8,someth:[2,11,12,14,19],somewher:3,sort:16,sourc:[3,5],spawn:6,specif:[],specifi:[8,14,16],standard:12,start:[],start_valu:19,state:14,statu:8,still:[10,12],stop:8,store:10,str:[2,6,9,10,11,14,15,16,17,18],string:[2,8,9,10,11,14,15,17],structur:4,sub:8,subclass:4,subcmd:6,subcommand:[2,6],subject:8,subsequ:[],subset:8,subtract:19,success:8,successfulli:14,support:14,system:[3,10],take:[10,11,14,15,17],taken:[],task:[2,6],tcp:10,tell:6,term:8,test:6,than:[],thei:[2,14],them:9,thi:[1,2,4,6,7,8,9,10,11,12,14,15,16,17,19],thier:12,thing:[2,6,11,12,14,16,17],thou:[],thread:12,threshold:14,through:[8,10],thy:[],time:[],timeout:7,timestamp:[8,10,19],timeutil:[],timezon:[],tip:3,tool:8,topic:8,topolog:[],tornado:[],trace:8,track:[6,10,14],tri:2,tune:12,tupl:[6,7,10,14,16,17],tuplifi:16,type:[2,8,9,10,11,14,16,17],type_:14,typecast:7,typeerror:9,unabl:10,unbind:[9,11],undefin:7,under:8,unicod:15,uniqu:[6,8,10],unit:6,univers:[],unix:8,unknownqueueerror:[4,10],unless:[6,9,11],unprioritized_iter:10,unregist:7,unschedul:[2,8],until:[12,19],untouch:[10,17],unus:8,updat:14,upon:8,upstream:6,usag:19,usual:14,utilit:[],utlitii:14,uuid:[6,9,10,11],vagrant:[],valid:8,valu:[2,7,8,14,16,17,19],valueerror:14,variabl:14,version:[3,8,14],via:[2,19],virtualenv:[],wait:[2,7,12],waiting_messag:10,walk:6,want:[12,14],warn:10,warranti:8,weak:[14,19],web:8,weight:[8,12,14],well:8,went:[],when:[1,2,3,4,6,8,9,10,11,14,15,16],where:[2,8,10,14,19],which:[8,10,14,15],who:[1,10],wish:17,without:[8,11],word:8,work:[3,6,14],worker:[],worker_id:10,worri:8,would:[12,14,19],wrap:[],wrong:[],you:[3,8,10,11,12,14,17],your:[2,8,12,14],zcontext:[9,11],zero_index_cmp:16,zeromq:8,zmq:[7,8,9,10,11,14,15,17],zmqreceivemixin:14,zmqsendmixin:14,zmqstream:11,zsocket:[9,11]},titles:["API Documentation","<code class=\"docutils literal\"><span class=\"pre\">client</span></code> &#8211; Client Utilities","<code class=\"docutils literal\"><span class=\"pre\">messages</span></code> &#8211; Client Messaging","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","Settings","Using EventMQ","<code class=\"docutils literal\"><span class=\"pre\">classes</span></code> &#8211; Utility Classes","<code class=\"docutils literal\"><span class=\"pre\">devices</span></code> &#8211; Device Utilities","<code class=\"docutils literal\"><span class=\"pre\">utils</span></code> &#8211; Utilities","<code class=\"docutils literal\"><span class=\"pre\">messages</span></code> &#8211; Message Utilities","<code class=\"docutils literal\"><span class=\"pre\">settings</span></code> &#8211; Settings Utilities","<code class=\"docutils literal\"><span class=\"pre\">timeutils</span></code> &#8211; Time Utilites"],titleterms:{"class":14,address:8,api:0,architectur:8,client:[1,2,8],concurrent_job:12,contribut:3,devic:15,document:[0,5],emqp:8,eventmq:[3,5,8,13],except:4,frame:8,get:[],global:8,glossari:[],goal:8,guid:[],header:8,heartbeat:8,indic:5,job:[6,12],jobmanag:6,languag:8,licens:8,manag:[6,12],messag:[2,17],mod:[],poller:7,protocol:8,queue:12,receiv:9,request:8,router:[8,10,12],schedul:[8,12],sender:11,set:[12,18],specif:8,start:[],style:[],tabl:5,time:19,timeutil:19,topolog:8,util:[1,14,15,16,17,18],utilit:19,welcom:[],worker:8}}) \ No newline at end of file
diff --git a/sender.html b/sender.html
index 6b49cdf..2c4f7a7 100644
--- a/sender.html
+++ b/sender.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="up" title="API Documentation" href="api.html"/> 34 <link rel="up" title="API Documentation" href="api.html"/>
35 <link rel="next" title="utils – Utilities" href="utils.html"/> 35 <link rel="next" title="utils – Utilities" href="utils/index.html"/>
36 <link rel="prev" title="router – Router" href="router.html"/> 36 <link rel="prev" title="router – Router" href="router.html"/>
37 37
38 38
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,7 +92,7 @@
91<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> 92<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>
92<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> 93<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>
93<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">sender</span></code> &#8211; Sender</a></li> 94<li class="toctree-l2 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">sender</span></code> &#8211; Sender</a></li>
94<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> 95<li class="toctree-l2"><a class="reference internal" href="utils/index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
95</ul> 96</ul>
96</li> 97</li>
97<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li> 98<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
@@ -292,7 +293,7 @@ socket</li>
292 293
293 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> 294 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
294 295
295 <a href="utils.html" class="btn btn-neutral float-right" title="utils – Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 296 <a href="utils/index.html" class="btn btn-neutral float-right" title="utils – Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
296 297
297 298
298 <a href="router.html" class="btn btn-neutral" title="router – Router" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 299 <a href="router.html" class="btn btn-neutral" title="router – Router" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
@@ -304,7 +305,7 @@ socket</li>
304 305
305 <div role="contentinfo"> 306 <div role="contentinfo">
306 <p> 307 <p>
307 &copy; Copyright 2015, eventboard.io. 308 &copy; Copyright 2016, eventboard.io.
308 309
309 </p> 310 </p>
310 </div> 311 </div>
diff --git a/settings_file.html b/settings_file.html
new file mode 100644
index 0000000..ba17599
--- /dev/null
+++ b/settings_file.html
@@ -0,0 +1,261 @@
1
2
3<!DOCTYPE html>
4<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
5<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
6<head>
7 <meta charset="utf-8">
8
9 <meta name="viewport" content="width=device-width, initial-scale=1.0">
10
11 <title>Settings &mdash; EventMQ 0 documentation</title>
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
28
29
30
31
32
33 <link rel="top" title="EventMQ 0 documentation" href="index.html"/>
34 <link rel="up" title="Using EventMQ" href="using.html"/>
35 <link rel="next" title="API Documentation" href="api.html"/>
36 <link rel="prev" title="Using EventMQ" href="using.html"/>
37
38
39 <script src="_static/js/modernizr.min.js"></script>
40
41</head>
42
43<body class="wy-body-for-nav" role="document">
44
45 <div class="wy-grid-for-nav">
46
47
48 <nav data-toggle="wy-nav-shift" class="wy-nav-side">
49 <div class="wy-side-scroll">
50 <div class="wy-side-nav-search">
51
52
53
54 <a href="index.html" class="icon icon-home"> EventMQ
55
56
57
58 </a>
59
60
61
62
63 <div class="version">
64 0.2.1
65 </div>
66
67
68
69
70<div role="search">
71 <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
72 <input type="text" name="q" placeholder="Search docs" />
73 <input type="hidden" name="check_keywords" value="yes" />
74 <input type="hidden" name="area" value="default" />
75 </form>
76</div>
77
78
79 </div>
80
81 <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
82
83
84
85 <ul class="current">
86<li class="toctree-l1 current"><a class="reference internal" href="using.html">Using EventMQ</a><ul class="current">
87<li class="toctree-l2 current"><a class="current reference internal" href="">Settings</a><ul>
88<li class="toctree-l3"><a class="reference internal" href="#router">Router</a></li>
89<li class="toctree-l3"><a class="reference internal" href="#scheduler">Scheduler</a></li>
90<li class="toctree-l3"><a class="reference internal" href="#job-manager">Job Manager</a><ul>
91<li class="toctree-l4"><a class="reference internal" href="#concurrent-jobs">concurrent_jobs</a></li>
92<li class="toctree-l4"><a class="reference internal" href="#queues">queues</a></li>
93</ul>
94</li>
95</ul>
96</li>
97</ul>
98</li>
99<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
100<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
101</ul>
102
103
104
105 </div>
106 </div>
107 </nav>
108
109 <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
110
111
112 <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
113 <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
114 <a href="index.html">EventMQ</a>
115 </nav>
116
117
118
119 <div class="wy-nav-content">
120 <div class="rst-content">
121
122
123
124
125
126
127<div role="navigation" aria-label="breadcrumbs navigation">
128 <ul class="wy-breadcrumbs">
129 <li><a href="index.html">Docs</a> &raquo;</li>
130
131 <li><a href="using.html">Using EventMQ</a> &raquo;</li>
132
133 <li>Settings</li>
134 <li class="wy-breadcrumbs-aside">
135
136
137 <a href="_sources/settings_file.txt" rel="nofollow"> View page source</a>
138
139
140 </li>
141 </ul>
142 <hr/>
143</div>
144 <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
145 <div itemprop="articleBody">
146
147 <div class="section" id="settings">
148<h1>Settings<a class="headerlink" href="#settings" title="Permalink to this headline">¶</a></h1>
149<p>EventMQ uses a standard INI style config file found at <code class="docutils literal"><span class="pre">/etc/eventmq.conf</span></code>.</p>
150<div class="section" id="router">
151<h2>Router<a class="headerlink" href="#router" title="Permalink to this headline">¶</a></h2>
152</div>
153<div class="section" id="scheduler">
154<h2>Scheduler<a class="headerlink" href="#scheduler" title="Permalink to this headline">¶</a></h2>
155</div>
156<div class="section" id="job-manager">
157<h2>Job Manager<a class="headerlink" href="#job-manager" title="Permalink to this headline">¶</a></h2>
158<div class="section" id="concurrent-jobs">
159<h3>concurrent_jobs<a class="headerlink" href="#concurrent-jobs" title="Permalink to this headline">¶</a></h3>
160<p>Default: 4</p>
161<p>This is the number of concurrent jobs the indiviudal job manager should execute
162at a time. If you are using the multiprocess or threading model this number
163becomes important as you will want to control the load on your server. If the
164load equals the number of cores on the server, processes will begin waiting for
165cpu cycles and things will begin to slow down.</p>
166<p>A safe number to choose if your jobs block a lot would be (2 * cores). If your
167jobs are cpu intensive you will want to set this number to the number of cores
168you have or (cores - 1) to leave cycles for the os and other processes. This is
169something that will have to be tuned based on the jobs that are
170running. Grouping similar jobs in named queues will help you tune this number.</p>
171</div>
172<div class="section" id="queues">
173<h3>queues<a class="headerlink" href="#queues" title="Permalink to this headline">¶</a></h3>
174<p>Default: (10, default)</p>
175<p>Semi-colon seperated list of queues to process jobs for with thier
176weights. Example: <code class="docutils literal"><span class="pre">queues=(10,</span> <span class="pre">data_process);</span> <span class="pre">(15,</span> <span class="pre">email)</span></code>. With these
177weights and the <code class="docutils literal"><span class="pre">CONCURRENT_JOBS</span></code> setting, you should be able to tune managers
178running jobs locally pretty efficiently. If you have a larger box with a weight
179of 50 on q1 and 8 concurrent jobs and a smaller box with a weight 30 and 4
180concurrent jobs, the q1 jobs will be sent to the large box until it is no longer
181accepting jobs. At this point jobs will start to be sent to the next highest
182number until the large box is ready to accept another q1 job.</p>
183<div class="admonition note">
184<p class="first admonition-title">Note</p>
185<p class="last">It is recommended that you have some workers listening for jobs on your
186default queue so that anything that is not explicitly assigned will still be
187run.</p>
188</div>
189</div>
190</div>
191</div>
192
193
194 </div>
195 </div>
196 <footer>
197
198 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
199
200 <a href="api.html" class="btn btn-neutral float-right" title="API Documentation" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
201
202
203 <a href="using.html" class="btn btn-neutral" title="Using EventMQ" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
204
205 </div>
206
207
208 <hr/>
209
210 <div role="contentinfo">
211 <p>
212 &copy; Copyright 2016, eventboard.io.
213
214 </p>
215 </div>
216 Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
217
218</footer>
219
220 </div>
221 </div>
222
223 </section>
224
225 </div>
226
227
228
229
230
231 <script type="text/javascript">
232 var DOCUMENTATION_OPTIONS = {
233 URL_ROOT:'./',
234 VERSION:'0',
235 COLLAPSE_INDEX:false,
236 FILE_SUFFIX:'.html',
237 HAS_SOURCE: true
238 };
239 </script>
240 <script type="text/javascript" src="_static/jquery.js"></script>
241 <script type="text/javascript" src="_static/underscore.js"></script>
242 <script type="text/javascript" src="_static/doctools.js"></script>
243
244
245
246
247
248 <script type="text/javascript" src="_static/js/theme.js"></script>
249
250
251
252
253 <script type="text/javascript">
254 jQuery(function () {
255 SphinxRtdTheme.StickyNav.enable();
256 });
257 </script>
258
259
260</body>
261</html> \ No newline at end of file
diff --git a/using.html b/using.html
new file mode 100644
index 0000000..56471af
--- /dev/null
+++ b/using.html
@@ -0,0 +1,217 @@
1
2
3<!DOCTYPE html>
4<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
5<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
6<head>
7 <meta charset="utf-8">
8
9 <meta name="viewport" content="width=device-width, initial-scale=1.0">
10
11 <title>Using EventMQ &mdash; EventMQ 0 documentation</title>
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
28
29
30
31
32
33 <link rel="top" title="EventMQ 0 documentation" href="index.html"/>
34 <link rel="next" title="Settings" href="settings_file.html"/>
35 <link rel="prev" title="EventMQ Documentation" href="index.html"/>
36
37
38 <script src="_static/js/modernizr.min.js"></script>
39
40</head>
41
42<body class="wy-body-for-nav" role="document">
43
44 <div class="wy-grid-for-nav">
45
46
47 <nav data-toggle="wy-nav-shift" class="wy-nav-side">
48 <div class="wy-side-scroll">
49 <div class="wy-side-nav-search">
50
51
52
53 <a href="index.html" class="icon icon-home"> EventMQ
54
55
56
57 </a>
58
59
60
61
62 <div class="version">
63 0.2.1
64 </div>
65
66
67
68
69<div role="search">
70 <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
71 <input type="text" name="q" placeholder="Search docs" />
72 <input type="hidden" name="check_keywords" value="yes" />
73 <input type="hidden" name="area" value="default" />
74 </form>
75</div>
76
77
78 </div>
79
80 <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
81
82
83
84 <ul class="current">
85<li class="toctree-l1 current"><a class="current reference internal" href="">Using EventMQ</a><ul>
86<li class="toctree-l2"><a class="reference internal" href="settings_file.html">Settings</a></li>
87</ul>
88</li>
89<li class="toctree-l1"><a class="reference internal" href="api.html">API Documentation</a></li>
90<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to EventMQ</a></li>
91</ul>
92
93
94
95 </div>
96 </div>
97 </nav>
98
99 <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
100
101
102 <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
103 <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
104 <a href="index.html">EventMQ</a>
105 </nav>
106
107
108
109 <div class="wy-nav-content">
110 <div class="rst-content">
111
112
113
114
115
116
117<div role="navigation" aria-label="breadcrumbs navigation">
118 <ul class="wy-breadcrumbs">
119 <li><a href="index.html">Docs</a> &raquo;</li>
120
121 <li>Using EventMQ</li>
122 <li class="wy-breadcrumbs-aside">
123
124
125 <a href="_sources/using.txt" rel="nofollow"> View page source</a>
126
127
128 </li>
129 </ul>
130 <hr/>
131</div>
132 <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
133 <div itemprop="articleBody">
134
135 <div class="section" id="using-eventmq">
136<h1>Using EventMQ<a class="headerlink" href="#using-eventmq" title="Permalink to this headline">¶</a></h1>
137<div class="toctree-wrapper compound">
138<ul>
139<li class="toctree-l1"><a class="reference internal" href="settings_file.html">Settings</a><ul>
140<li class="toctree-l2"><a class="reference internal" href="settings_file.html#router">Router</a></li>
141<li class="toctree-l2"><a class="reference internal" href="settings_file.html#scheduler">Scheduler</a></li>
142<li class="toctree-l2"><a class="reference internal" href="settings_file.html#job-manager">Job Manager</a></li>
143</ul>
144</li>
145</ul>
146</div>
147</div>
148
149
150 </div>
151 </div>
152 <footer>
153
154 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
155
156 <a href="settings_file.html" class="btn btn-neutral float-right" title="Settings" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
157
158
159 <a href="index.html" class="btn btn-neutral" title="EventMQ Documentation" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
160
161 </div>
162
163
164 <hr/>
165
166 <div role="contentinfo">
167 <p>
168 &copy; Copyright 2016, eventboard.io.
169
170 </p>
171 </div>
172 Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
173
174</footer>
175
176 </div>
177 </div>
178
179 </section>
180
181 </div>
182
183
184
185
186
187 <script type="text/javascript">
188 var DOCUMENTATION_OPTIONS = {
189 URL_ROOT:'./',
190 VERSION:'0',
191 COLLAPSE_INDEX:false,
192 FILE_SUFFIX:'.html',
193 HAS_SOURCE: true
194 };
195 </script>
196 <script type="text/javascript" src="_static/jquery.js"></script>
197 <script type="text/javascript" src="_static/underscore.js"></script>
198 <script type="text/javascript" src="_static/doctools.js"></script>
199
200
201
202
203
204 <script type="text/javascript" src="_static/js/theme.js"></script>
205
206
207
208
209 <script type="text/javascript">
210 jQuery(function () {
211 SphinxRtdTheme.StickyNav.enable();
212 });
213 </script>
214
215
216</body>
217</html> \ No newline at end of file
diff --git a/utils/classes.html b/utils/classes.html
index 7a43ac8..a18e66e 100644
--- a/utils/classes.html
+++ b/utils/classes.html
@@ -31,9 +31,9 @@
31 31
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="utils - Utilities" href="index.html"/> 34 <link rel="up" title="utils Utilities" href="index.html"/>
35 <link rel="next" title="messages – Message Utilities" href="messages.html"/> 35 <link rel="next" title="devices – Device Utilities" href="devices.html"/>
36 <link rel="prev" title="utils - Utilities" href="index.html"/> 36 <link rel="prev" title="utils Utilities" href="index.html"/>
37 37
38 38
39 <script src="../_static/js/modernizr.min.js"></script> 39 <script src="../_static/js/modernizr.min.js"></script>
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,11 +92,12 @@
91<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> 92<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>
92<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> 93<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>
93<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> 94<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>
94<li class="toctree-l2 current"><a class="reference internal" href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> - Utilities</a><ul class="current"> 95<li class="toctree-l2 current"><a class="reference internal" href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a><ul class="current">
95<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li> 96<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li>
97<li class="toctree-l3"><a class="reference internal" href="devices.html"><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li>
96<li class="toctree-l3"><a class="reference internal" href="messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li> 98<li class="toctree-l3"><a class="reference internal" href="messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li>
99<li class="toctree-l3"><a class="reference internal" href="settings.html"><code class="docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities</a></li>
97<li class="toctree-l3"><a class="reference internal" href="timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li> 100<li class="toctree-l3"><a class="reference internal" href="timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li>
98<li class="toctree-l3"><a class="reference internal" href="index.html#id1"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a></li>
99</ul> 101</ul>
100</li> 102</li>
101</ul> 103</ul>
@@ -133,7 +135,7 @@
133 135
134 <li><a href="../api.html">API Documentation</a> &raquo;</li> 136 <li><a href="../api.html">API Documentation</a> &raquo;</li>
135 137
136 <li><a href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> - Utilities</a> &raquo;</li> 138 <li><a href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a> &raquo;</li>
137 139
138 <li><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</li> 140 <li><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</li>
139 <li class="wy-breadcrumbs-aside"> 141 <li class="wy-breadcrumbs-aside">
@@ -224,27 +226,45 @@ as the first arguments.</p>
224 226
225<dl class="method"> 227<dl class="method">
226<dt id="eventmq.utils.classes.EMQPService.send_inform"> 228<dt id="eventmq.utils.classes.EMQPService.send_inform">
227<code class="descname">send_inform</code><span class="sig-paren">(</span><em>queue=None</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.classes.EMQPService.send_inform" title="Permalink to this definition">¶</a></dt> 229<code class="descname">send_inform</code><span class="sig-paren">(</span><em>queues=()</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.classes.EMQPService.send_inform" title="Permalink to this definition">¶</a></dt>
228<dd><p>Queues an INFORM command to <cite>self.outgoing</cite>.</p> 230<dd><p>Notify the router that this job manager is online and and ready for
231work. This includes a list of queues the router should forward messages
232for.</p>
229<table class="docutils field-list" frame="void" rules="none"> 233<table class="docutils field-list" frame="void" rules="none">
230<col class="field-name" /> 234<col class="field-name" />
231<col class="field-body" /> 235<col class="field-body" />
232<tbody valign="top"> 236<tbody valign="top">
233<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple"> 237<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
234<li><strong>type</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Either &#8216;worker&#8217; or &#8216;scheduler&#8217;</li> 238<li><strong>type</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Either &#8216;worker&#8217; or &#8216;scheduler&#8217;</li>
235<li><strong>queue</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; <ul> 239<li><strong>queues</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#list" title="(in Python v2.7)"><em>list</em></a>) &#8211; <ul>
236<li>For &#8216;worker&#8217; type, the queues the worker is listening on</li> 240<li>For &#8216;worker&#8217; type, the queues the worker is listening on and
241their weights.<dl class="docutils">
242<dt>Example:</dt>
243<dd>([10, &#8216;default&#8217;], [15, &#8216;push_notifications&#8217;])</dd>
244</dl>
245</li>
237<li>Ignored for &#8216;scheduler&#8217; type</li> 246<li>Ignored for &#8216;scheduler&#8217; type</li>
238</ul> 247</ul>
239</li> 248</li>
240</ul> 249</ul>
241</td> 250</td>
242</tr> 251</tr>
243<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><code class="xref py py-exc docutils literal"><span class="pre">ValueError</span></code> &#8211; When <cite>type_</cite> does not match a specified type</p> 252<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><p class="first"><code class="xref py py-exc docutils literal"><span class="pre">ValueError</span></code> &#8211; When <cite>type_</cite> does not match a specified type</p>
253</td>
254</tr>
255<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">ID of the message</p>
256</td>
257</tr>
258<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></p>
244</td> 259</td>
245</tr> 260</tr>
246</tbody> 261</tbody>
247</table> 262</table>
263<div class="admonition note">
264<p class="first admonition-title">Note</p>
265<p class="last">Passing a single string for queues is supported for backward
266compatibility and not recommended for new apps.</p>
267</div>
248</dd></dl> 268</dd></dl>
249 269
250<dl class="method"> 270<dl class="method">
@@ -515,6 +535,10 @@ False</td>
515<tbody valign="top"> 535<tbody valign="top">
516<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; The eMQP socket to send the message to</td> 536<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>socket</strong> (<a class="reference external" href="https://docs.python.org/library/socket.html#module-socket" title="(in Python v2.7)"><em>socket</em></a>) &#8211; The eMQP socket to send the message to</td>
517</tr> 537</tr>
538<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">ID of the message</td>
539</tr>
540<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></td>
541</tr>
518</tbody> 542</tbody>
519</table> 543</table>
520</dd></dl> 544</dd></dl>
@@ -612,10 +636,10 @@ specify the the recipient id of the remote socket</li>
612 636
613 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> 637 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
614 638
615 <a href="messages.html" class="btn btn-neutral float-right" title="messages – Message Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 639 <a href="devices.html" class="btn btn-neutral float-right" title="devices – Device Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
616 640
617 641
618 <a href="index.html" class="btn btn-neutral" title="utils - Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 642 <a href="index.html" class="btn btn-neutral" title="utils – Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
619 643
620 </div> 644 </div>
621 645
@@ -624,7 +648,7 @@ specify the the recipient id of the remote socket</li>
624 648
625 <div role="contentinfo"> 649 <div role="contentinfo">
626 <p> 650 <p>
627 &copy; Copyright 2015, eventboard.io. 651 &copy; Copyright 2016, eventboard.io.
628 652
629 </p> 653 </p>
630 </div> 654 </div>
diff --git a/utils/devices.html b/utils/devices.html
index b5d254a..ab3b6ce 100644
--- a/utils/devices.html
+++ b/utils/devices.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -95,6 +96,7 @@
95<li class="toctree-l3"><a class="reference internal" href="classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li> 96<li class="toctree-l3"><a class="reference internal" href="classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li>
96<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li> 97<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li>
97<li class="toctree-l3"><a class="reference internal" href="messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li> 98<li class="toctree-l3"><a class="reference internal" href="messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li>
99<li class="toctree-l3"><a class="reference internal" href="settings.html"><code class="docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities</a></li>
98<li class="toctree-l3"><a class="reference internal" href="timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li> 100<li class="toctree-l3"><a class="reference internal" href="timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li>
99</ul> 101</ul>
100</li> 102</li>
@@ -191,7 +193,7 @@ causes errors when setting the IDENTITY of the ZMQ socket.</p>
191 193
192 <div role="contentinfo"> 194 <div role="contentinfo">
193 <p> 195 <p>
194 &copy; Copyright 2015, eventboard.io. 196 &copy; Copyright 2016, eventboard.io.
195 197
196 </p> 198 </p>
197 </div> 199 </div>
diff --git a/utils/index.html b/utils/index.html
index d58c3a3..0a370e0 100644
--- a/utils/index.html
+++ b/utils/index.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -177,6 +178,20 @@ like creating message more simple.</p>
177</dd></dl> 178</dd></dl>
178 179
179<dl class="function"> 180<dl class="function">
181<dt id="eventmq.utils.tuplify">
182<code class="descclassname">eventmq.utils.</code><code class="descname">tuplify</code><span class="sig-paren">(</span><em>v</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.tuplify" title="Permalink to this definition">¶</a></dt>
183<dd><p>Recursively convert lists to tuples.</p>
184<table class="docutils field-list" frame="void" rules="none">
185<col class="field-name" />
186<col class="field-body" />
187<tbody valign="top">
188<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>v</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#object" title="(in Python v2.7)"><em>object</em></a>) &#8211; any value of interest</td>
189</tr>
190</tbody>
191</table>
192</dd></dl>
193
194<dl class="function">
180<dt id="eventmq.utils.zero_index_cmp"> 195<dt id="eventmq.utils.zero_index_cmp">
181<code class="descclassname">eventmq.utils.</code><code class="descname">zero_index_cmp</code><span class="sig-paren">(</span><em>a</em>, <em>b</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.zero_index_cmp" title="Permalink to this definition">¶</a></dt> 196<code class="descclassname">eventmq.utils.</code><code class="descname">zero_index_cmp</code><span class="sig-paren">(</span><em>a</em>, <em>b</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.zero_index_cmp" title="Permalink to this definition">¶</a></dt>
182<dd><p>same as <code class="docutils literal"><span class="pre">cmp</span></code> but using the 0-index in a list as the compare value. Used 197<dd><p>same as <code class="docutils literal"><span class="pre">cmp</span></code> but using the 0-index in a list as the compare value. Used
@@ -204,7 +219,7 @@ when sorting the values in <code class="xref py py-attr docutils literal"><span
204 219
205 <div role="contentinfo"> 220 <div role="contentinfo">
206 <p> 221 <p>
207 &copy; Copyright 2015, eventboard.io. 222 &copy; Copyright 2016, eventboard.io.
208 223
209 </p> 224 </p>
210 </div> 225 </div>
diff --git a/utils/messages.html b/utils/messages.html
index 08a6c1e..6ecfa47 100644
--- a/utils/messages.html
+++ b/utils/messages.html
@@ -31,9 +31,9 @@
31 31
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="utils – Utilities" href="../utils.html"/> 34 <link rel="up" title="utils – Utilities" href="index.html"/>
35 <link rel="next" title="timeutils – Time Utilites" href="timeutils.html"/> 35 <link rel="next" title="settings – Settings Utilities" href="settings.html"/>
36 <link rel="prev" title="classes – Utility Classes" href="classes.html"/> 36 <link rel="prev" title="devices – Device Utilities" href="devices.html"/>
37 37
38 38
39 <script src="../_static/js/modernizr.min.js"></script> 39 <script src="../_static/js/modernizr.min.js"></script>
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,9 +92,11 @@
91<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> 92<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>
92<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> 93<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>
93<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> 94<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>
94<li class="toctree-l2 current"><a class="reference internal" href="../utils.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a><ul class="current"> 95<li class="toctree-l2 current"><a class="reference internal" href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a><ul class="current">
95<li class="toctree-l3"><a class="reference internal" href="classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li> 96<li class="toctree-l3"><a class="reference internal" href="classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li>
97<li class="toctree-l3"><a class="reference internal" href="devices.html"><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li>
96<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li> 98<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li>
99<li class="toctree-l3"><a class="reference internal" href="settings.html"><code class="docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities</a></li>
97<li class="toctree-l3"><a class="reference internal" href="timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li> 100<li class="toctree-l3"><a class="reference internal" href="timeutils.html"><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li>
98</ul> 101</ul>
99</li> 102</li>
@@ -132,7 +135,7 @@
132 135
133 <li><a href="../api.html">API Documentation</a> &raquo;</li> 136 <li><a href="../api.html">API Documentation</a> &raquo;</li>
134 137
135 <li><a href="../utils.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a> &raquo;</li> 138 <li><a href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a> &raquo;</li>
136 139
137 <li><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</li> 140 <li><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</li>
138 <li class="wy-breadcrumbs-aside"> 141 <li class="wy-breadcrumbs-aside">
@@ -154,6 +157,20 @@
154<dt id="eventmq.utils.messages.fwd_emqp_router_message"> 157<dt id="eventmq.utils.messages.fwd_emqp_router_message">
155<code class="descclassname">eventmq.utils.messages.</code><code class="descname">fwd_emqp_router_message</code><span class="sig-paren">(</span><em>socket</em>, <em>recipient_id</em>, <em>payload</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.messages.fwd_emqp_router_message" title="Permalink to this definition">¶</a></dt> 158<code class="descclassname">eventmq.utils.messages.</code><code class="descname">fwd_emqp_router_message</code><span class="sig-paren">(</span><em>socket</em>, <em>recipient_id</em>, <em>payload</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.messages.fwd_emqp_router_message" title="Permalink to this definition">¶</a></dt>
156<dd><p>Forwards <cite>payload</cite> to socket untouched.</p> 159<dd><p>Forwards <cite>payload</cite> to socket untouched.</p>
160<table class="docutils field-list" frame="void" rules="none">
161<col class="field-name" />
162<col class="field-body" />
163<tbody valign="top">
164<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
165<li><strong>socket</strong> &#8211; socket to send the message with</li>
166<li><strong>recipient_id</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; the id of the connected device to reply to</li>
167<li><strong>payload</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#tuple" title="(in Python v2.7)"><em>tuple</em></a>) &#8211; The message to send. The first frame should be an
168empty string</li>
169</ul>
170</td>
171</tr>
172</tbody>
173</table>
157</dd></dl> 174</dd></dl>
158 175
159<dl class="function"> 176<dl class="function">
@@ -222,6 +239,16 @@ parts.</p>
222</tbody> 239</tbody>
223</table> 240</table>
224<p>Raises:</p> 241<p>Raises:</p>
242<table class="docutils field-list" frame="void" rules="none">
243<col class="field-name" />
244<col class="field-body" />
245<tbody valign="top">
246<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">Message id for this message</td>
247</tr>
248<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)">str</a></td>
249</tr>
250</tbody>
251</table>
225</dd></dl> 252</dd></dl>
226 253
227<dl class="function"> 254<dl class="function">
@@ -243,8 +270,10 @@ used by a <code class="xref py py-attr docutils literal"><span class="pre">zmq.R
243</tr> 270</tr>
244</tbody> 271</tbody>
245</table> 272</table>
246<p>Raises:</p> 273<dl class="docutils">
247<p>Returns</p> 274<dt>Returns</dt>
275<dd>str: Message id for this message</dd>
276</dl>
248</dd></dl> 277</dd></dl>
249 278
250</div> 279</div>
@@ -256,10 +285,10 @@ used by a <code class="xref py py-attr docutils literal"><span class="pre">zmq.R
256 285
257 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> 286 <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
258 287
259 <a href="timeutils.html" class="btn btn-neutral float-right" title="timeutils – Time Utilites" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a> 288 <a href="settings.html" class="btn btn-neutral float-right" title="settings – Settings Utilities" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
260 289
261 290
262 <a href="classes.html" class="btn btn-neutral" title="classes – Utility Classes" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 291 <a href="devices.html" class="btn btn-neutral" title="devices – Device Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
263 292
264 </div> 293 </div>
265 294
@@ -268,7 +297,7 @@ used by a <code class="xref py py-attr docutils literal"><span class="pre">zmq.R
268 297
269 <div role="contentinfo"> 298 <div role="contentinfo">
270 <p> 299 <p>
271 &copy; Copyright 2015, eventboard.io. 300 &copy; Copyright 2016, eventboard.io.
272 301
273 </p> 302 </p>
274 </div> 303 </div>
diff --git a/utils/settings.html b/utils/settings.html
index 65fa6ff..a209af0 100644
--- a/utils/settings.html
+++ b/utils/settings.html
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -154,8 +155,16 @@
154<h1><code class="xref py py-mod docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities<a class="headerlink" href="#settings-settings-utilities" title="Permalink to this headline">¶</a></h1> 155<h1><code class="xref py py-mod docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities<a class="headerlink" href="#settings-settings-utilities" title="Permalink to this headline">¶</a></h1>
155<dl class="function"> 156<dl class="function">
156<dt id="eventmq.utils.settings.import_settings"> 157<dt id="eventmq.utils.settings.import_settings">
157<code class="descclassname">eventmq.utils.settings.</code><code class="descname">import_settings</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.settings.import_settings" title="Permalink to this definition">¶</a></dt> 158<code class="descclassname">eventmq.utils.settings.</code><code class="descname">import_settings</code><span class="sig-paren">(</span><em>section='global'</em><span class="sig-paren">)</span><a class="headerlink" href="#eventmq.utils.settings.import_settings" title="Permalink to this definition">¶</a></dt>
158<dd><p>Import settings and apply to configuration globals</p> 159<dd><p>Import settings and apply to configuration globals</p>
160<table class="docutils field-list" frame="void" rules="none">
161<col class="field-name" />
162<col class="field-body" />
163<tbody valign="top">
164<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>section</strong> (<a class="reference external" href="https://docs.python.org/library/functions.html#str" title="(in Python v2.7)"><em>str</em></a>) &#8211; Name of the INI section to import</td>
165</tr>
166</tbody>
167</table>
159</dd></dl> 168</dd></dl>
160 169
161</div> 170</div>
@@ -179,7 +188,7 @@
179 188
180 <div role="contentinfo"> 189 <div role="contentinfo">
181 <p> 190 <p>
182 &copy; Copyright 2015, eventboard.io. 191 &copy; Copyright 2016, eventboard.io.
183 192
184 </p> 193 </p>
185 </div> 194 </div>
diff --git a/utils/timeutils.html b/utils/timeutils.html
index 087322b..0815b80 100644
--- a/utils/timeutils.html
+++ b/utils/timeutils.html
@@ -31,9 +31,9 @@
31 31
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="utils – Utilities" href="../utils.html"/> 34 <link rel="up" title="utils – Utilities" href="index.html"/>
35 <link rel="next" title="Contributing to EventMQ" href="../contributing.html"/> 35 <link rel="next" title="Contributing to EventMQ" href="../contributing.html"/>
36 <link rel="prev" title="messages – Message Utilities" href="messages.html"/> 36 <link rel="prev" title="settings – Settings Utilities" href="settings.html"/>
37 37
38 38
39 <script src="../_static/js/modernizr.min.js"></script> 39 <script src="../_static/js/modernizr.min.js"></script>
@@ -61,7 +61,7 @@
61 61
62 62
63 <div class="version"> 63 <div class="version">
64 0 64 0.2.1
65 </div> 65 </div>
66 66
67 67
@@ -83,6 +83,7 @@
83 83
84 84
85 <ul class="current"> 85 <ul class="current">
86<li class="toctree-l1"><a class="reference internal" href="../using.html">Using EventMQ</a></li>
86<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current"> 87<li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Documentation</a><ul class="current">
87<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li> 88<li class="toctree-l2"><a class="reference internal" href="../client.html"><code class="docutils literal"><span class="pre">client</span></code> &#8211; Client Utilities</a></li>
88<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li> 89<li class="toctree-l2"><a class="reference internal" href="../exceptions.html"><code class="docutils literal"><span class="pre">exceptions</span></code> &#8211; Exceptions</a></li>
@@ -91,9 +92,11 @@
91<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> 92<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>
92<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> 93<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>
93<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> 94<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>
94<li class="toctree-l2 current"><a class="reference internal" href="../utils.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a><ul class="current"> 95<li class="toctree-l2 current"><a class="reference internal" href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a><ul class="current">
95<li class="toctree-l3"><a class="reference internal" href="classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li> 96<li class="toctree-l3"><a class="reference internal" href="classes.html"><code class="docutils literal"><span class="pre">classes</span></code> &#8211; Utility Classes</a></li>
97<li class="toctree-l3"><a class="reference internal" href="devices.html"><code class="docutils literal"><span class="pre">devices</span></code> &#8211; Device Utilities</a></li>
96<li class="toctree-l3"><a class="reference internal" href="messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li> 98<li class="toctree-l3"><a class="reference internal" href="messages.html"><code class="docutils literal"><span class="pre">messages</span></code> &#8211; Message Utilities</a></li>
99<li class="toctree-l3"><a class="reference internal" href="settings.html"><code class="docutils literal"><span class="pre">settings</span></code> &#8211; Settings Utilities</a></li>
97<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li> 100<li class="toctree-l3 current"><a class="current reference internal" href=""><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</a></li>
98</ul> 101</ul>
99</li> 102</li>
@@ -132,7 +135,7 @@
132 135
133 <li><a href="../api.html">API Documentation</a> &raquo;</li> 136 <li><a href="../api.html">API Documentation</a> &raquo;</li>
134 137
135 <li><a href="../utils.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a> &raquo;</li> 138 <li><a href="index.html"><code class="docutils literal"><span class="pre">utils</span></code> &#8211; Utilities</a> &raquo;</li>
136 139
137 <li><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</li> 140 <li><code class="docutils literal"><span class="pre">timeutils</span></code> &#8211; Time Utilites</li>
138 <li class="wy-breadcrumbs-aside"> 141 <li class="wy-breadcrumbs-aside">
@@ -224,7 +227,7 @@ time.time()</p>
224 <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> 227 <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>
225 228
226 229
227 <a href="messages.html" class="btn btn-neutral" title="messages – Message Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a> 230 <a href="settings.html" class="btn btn-neutral" title="settings – Settings Utilities" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
228 231
229 </div> 232 </div>
230 233
@@ -233,7 +236,7 @@ time.time()</p>
233 236
234 <div role="contentinfo"> 237 <div role="contentinfo">
235 <p> 238 <p>
236 &copy; Copyright 2015, eventboard.io. 239 &copy; Copyright 2016, eventboard.io.
237 240
238 </p> 241 </p>
239 </div> 242 </div>