����JFIF��x�x����'
Server IP : 78.140.185.180 / Your IP : 216.73.216.168 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/builderbox/www/vendor/rackspace/php-opencloud/doc/_build/html/services/queues/ |
Upload File : |
<!DOCTYPE html> <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]--> <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]--> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Messages — php-opencloud 1.12.1 documentation</title> <link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'> <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" /> <link rel="top" title="php-opencloud 1.12.1 documentation" href="../../index.html"/> <link rel="up" title="Queues v1" href="index.html"/> <link rel="next" title="Claims" href="claims.html"/> <link rel="prev" title="Queues" href="queues.html"/> <script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js"></script> </head> <body class="wy-body-for-nav" role="document"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-nav-search"> <a href="../../index.html" class="fa fa-home"> php-opencloud</a> <div role="search"> <form id ="rtd-search-form" class="wy-form" action="../../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div> <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> <ul class="current"> <li class="toctree-l1"><a class="reference internal" href="../autoscale/index.html">Auto Scale v2</a><ul> <li class="toctree-l2"><a class="reference internal" href="../autoscale/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../autoscale/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../autoscale/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../autoscale/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../compute/index.html">Compute v2</a><ul> <li class="toctree-l2"><a class="reference internal" href="../compute/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../compute/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../compute/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../compute/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../database/index.html">Databases v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../database/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../database/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../database/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../database/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../dns/index.html">DNS v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../dns/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../dns/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../dns/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../dns/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../identity/index.html">Identity v2</a><ul> <li class="toctree-l2"><a class="reference internal" href="../identity/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../identity/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../identity/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../identity/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../image/index.html">Images v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../image/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../image/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../image/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../image/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../load-balancer/index.html">Load Balancer v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../load-balancer/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../load-balancer/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../load-balancer/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../load-balancer/index.html#further-links">Further Links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../monitoring/index.html">Monitoring v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../monitoring/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../monitoring/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../monitoring/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../monitoring/index.html#further-links">Further links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../networking/index.html">Networking v2</a><ul> <li class="toctree-l2"><a class="reference internal" href="../networking/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../networking/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../networking/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../networking/index.html#further-links">Further links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../object-store/index.html">Object Store v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../object-store/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../object-store/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../object-store/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../object-store/index.html#further-links">Further links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../orchestration/index.html">Orchestration v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../orchestration/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../orchestration/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../orchestration/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../orchestration/index.html#further-links">Further links</a></li> </ul> </li> <li class="toctree-l1 current"><a class="reference internal" href="index.html">Queues v1</a><ul class="current"> <li class="toctree-l2"><a class="reference internal" href="index.html#setup">Setup</a></li> <li class="toctree-l2 current"><a class="reference internal" href="index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="index.html#further-links">Further links</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../volume/index.html">Volumes v1</a><ul> <li class="toctree-l2"><a class="reference internal" href="../volume/index.html#setup">Setup</a></li> <li class="toctree-l2"><a class="reference internal" href="../volume/index.html#operations">Operations</a></li> <li class="toctree-l2"><a class="reference internal" href="../volume/index.html#glossary">Glossary</a></li> <li class="toctree-l2"><a class="reference internal" href="../volume/index.html#further-links">Further links</a></li> </ul> </li> </ul> <ul> <li class="toctree-l1"><a class="reference internal" href="../../debugging.html">Debugging</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../debugging.html#strategy-1-meaningful-exception-handling">Strategy 1: Meaningful exception handling</a></li> <li class="toctree-l2"><a class="reference internal" href="../../debugging.html#strategy-2-wire-logging">Strategy 2: Wire logging</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../caching-creds.html">Caching credentials</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../caching-creds.html#filesystem-example">Filesystem example</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../iterators.html">Iterators</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../iterators.html#common-behaviour">Common behaviour</a></li> <li class="toctree-l2"><a class="reference internal" href="../../iterators.html#very-important-note">Very important note</a></li> <li class="toctree-l2"><a class="reference internal" href="../../iterators.html#using-paginated-collections">Using paginated collections</a></li> <li class="toctree-l2"><a class="reference internal" href="../../iterators.html#setting-up-a-paginatediterator">Setting up a PaginatedIterator</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../regions.html">Rackspace regions</a></li> <li class="toctree-l1"><a class="reference internal" href="../../url-types.html">URL types</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../url-types.html#internalurl">internalURL</a></li> <li class="toctree-l2"><a class="reference internal" href="../../url-types.html#publicurl">publicURL</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../logging.html">Logging</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../logging.html#logger-injection">Logger injection</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../http-clients.html">HTTP Clients</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../http-clients.html#default-http-headers">Default HTTP headers</a></li> <li class="toctree-l2"><a class="reference internal" href="../../http-clients.html#user-agents">User agents</a></li> <li class="toctree-l2"><a class="reference internal" href="../../http-clients.html#other-functionality">Other functionality</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../auth.html">Authentication</a><ul> <li class="toctree-l2"><a class="reference internal" href="../../auth.html#service-catalog">Service Catalog</a></li> </ul> </li> </ul> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> <nav class="wy-nav-top" role="navigation" aria-label="top navigation"> <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../../index.html">php-opencloud</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="breadcrumbs navigation"> <ul class="wy-breadcrumbs"> <li><a href="../../index.html">Docs</a> »</li> <li><a href="index.html">Queues v1</a> »</li> <li>Messages</li> <li class="wy-breadcrumbs-aside"> <a href="../../_sources/services/queues/messages.txt" rel="nofollow"> View page source</a> </li> </ul> <hr/> </div> <div role="main"> <div class="section" id="messages"> <h1>Messages<a class="headerlink" href="#messages" title="Permalink to this headline">¶</a></h1> <div class="section" id="setup"> <h2>Setup<a class="headerlink" href="#setup" title="Permalink to this headline">¶</a></h2> <p>In order to work with messages, you must first retrieve a queue by its name:</p> <div class="highlight-php"><div class="highlight"><pre><span class="nv">$queue</span> <span class="o">=</span> <span class="nv">$service</span><span class="o">-></span><span class="na">getQueue</span><span class="p">(</span><span class="s1">'{queueName}'</span><span class="p">);</span> </pre></div> </div> </div> <div class="section" id="post-new-message"> <h2>Post new message<a class="headerlink" href="#post-new-message" title="Permalink to this headline">¶</a></h2> <p>This operation posts the specified message or messages. You can submit up to 10 messages in a single request.</p> <p>When posting new messages, you specify only the <tt class="docutils literal"><span class="pre">body</span></tt> and <tt class="docutils literal"><span class="pre">ttl</span></tt> for the message. The API will insert metadata, such as ID and age.</p> <p>How you pass through the array structure depends on whether you are executing multiple or single posts, but the keys are the same:</p> <ul class="simple"> <li>The <tt class="docutils literal"><span class="pre">body</span></tt> attribute specifies an arbitrary document that constitutes the body of the message being sent. The size of this body is limited to 256 KB, excluding whitespace.</li> <li>The <tt class="docutils literal"><span class="pre">ttl</span></tt> attribute specifies how long the server waits before marking the message as expired and removing it from the queue. The value of ttl must be between 60 and 1209600 seconds (14 days). Note that the server might not actually delete the message until its age has reached up to (ttl + 60) seconds, to allow for flexibility in storage implementations.</li> </ul> <div class="section" id="posting-a-single-message"> <h3>Posting a single message<a class="headerlink" href="#posting-a-single-message" title="Permalink to this headline">¶</a></h3> <div class="highlight-php"><div class="highlight"><pre><span class="k">use</span> <span class="nx">OpenCloud\Common\Constants\Datetime</span><span class="p">;</span> <span class="nv">$queue</span><span class="o">-></span><span class="na">createMessage</span><span class="p">(</span><span class="k">array</span><span class="p">(</span> <span class="s1">'body'</span> <span class="o">=></span> <span class="p">(</span><span class="nx">object</span><span class="p">)</span> <span class="k">array</span><span class="p">(</span> <span class="s1">'event'</span> <span class="o">=></span> <span class="s1">'BackupStarted'</span><span class="p">,</span> <span class="s1">'deadline'</span> <span class="o">=></span> <span class="s1">'26.12.2013'</span><span class="p">,</span> <span class="p">),</span> <span class="s1">'ttl'</span> <span class="o">=></span> <span class="mi">2</span> <span class="o">*</span> <span class="nx">Datetime</span><span class="o">::</span><span class="na">DAY</span> <span class="p">));</span> </pre></div> </div> <p><a class="reference external" href="https://raw.githubusercontent.com/rackspace/php-opencloud/master/samples/Queues/add-message.php">Get the executable PHP script for this example</a></p> </div> <div class="section" id="post-a-batch-of-messages"> <h3>Post a batch of messages<a class="headerlink" href="#post-a-batch-of-messages" title="Permalink to this headline">¶</a></h3> <p>Please note that the list of messages will be truncated at 10. For more, please execute another method call.</p> <div class="highlight-php"><div class="highlight"><pre><span class="k">use</span> <span class="nx">OpenCloud\Common\Constants\Datetime</span><span class="p">;</span> <span class="nv">$messages</span> <span class="o">=</span> <span class="k">array</span><span class="p">(</span> <span class="k">array</span><span class="p">(</span> <span class="s1">'body'</span> <span class="o">=></span> <span class="p">(</span><span class="nx">object</span><span class="p">)</span> <span class="k">array</span><span class="p">(</span> <span class="s1">'play'</span> <span class="o">=></span> <span class="s1">'football'</span> <span class="p">),</span> <span class="s1">'ttl'</span> <span class="o">=></span> <span class="mi">2</span> <span class="o">*</span> <span class="nx">Datetime</span><span class="o">::</span><span class="na">DAY</span> <span class="p">),</span> <span class="k">array</span><span class="p">(</span> <span class="s1">'body'</span> <span class="o">=></span> <span class="p">(</span><span class="nx">object</span><span class="p">)</span> <span class="k">array</span><span class="p">(</span> <span class="s1">'play'</span> <span class="o">=></span> <span class="s1">'tennis'</span> <span class="p">),</span> <span class="s1">'ttl'</span> <span class="o">=></span> <span class="mi">50</span> <span class="o">*</span> <span class="nx">Datetime</span><span class="o">::</span><span class="na">HOUR</span> <span class="p">)</span> <span class="p">);</span> <span class="nv">$queue</span><span class="o">-></span><span class="na">createMessages</span><span class="p">(</span><span class="nv">$messages</span><span class="p">);</span> </pre></div> </div> </div> </div> <div class="section" id="get-messages"> <h2>Get messages<a class="headerlink" href="#get-messages" title="Permalink to this headline">¶</a></h2> <p>This operation gets the message or messages in the specified queue.</p> <p>Message IDs and markers are opaque strings. Clients should make no assumptions about their format or length. Furthermore, clients should assume that there is no relationship between markers and message IDs (that is, one cannot be derived from the other). This allows for a wide variety of storage driver implementations.</p> <p>Results are ordered by age, oldest message first.</p> <div class="section" id="parameters"> <h3>Parameters<a class="headerlink" href="#parameters" title="Permalink to this headline">¶</a></h3> <p>When retrieving messages, you can filter using these options:</p> <div class="highlight-php"><div class="highlight"><pre><span class="nv">$messages</span> <span class="o">=</span> <span class="nv">$queue</span><span class="o">-></span><span class="na">listMessages</span><span class="p">(</span><span class="k">array</span><span class="p">(</span> <span class="s1">'marker'</span> <span class="o">=></span> <span class="s1">'51db6f78c508f17ddc924357'</span><span class="p">,</span> <span class="s1">'limit'</span> <span class="o">=></span> <span class="mi">20</span><span class="p">,</span> <span class="s1">'echo'</span> <span class="o">=></span> <span class="k">true</span> <span class="p">));</span> <span class="k">foreach</span> <span class="p">(</span><span class="nv">$messages</span> <span class="k">as</span> <span class="nv">$message</span><span class="p">)</span> <span class="p">{</span> <span class="k">echo</span> <span class="nv">$message</span><span class="o">-></span><span class="na">getId</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span> <span class="p">}</span> </pre></div> </div> </div> </div> <div class="section" id="get-a-set-of-messages-by-id"> <h2>Get a set of messages by ID<a class="headerlink" href="#get-a-set-of-messages-by-id" title="Permalink to this headline">¶</a></h2> <p>This operation provides a more efficient way to query multiple messages compared to using a series of individual GET. Note that the list of IDs cannot exceed 20. If a malformed ID or a nonexistent message ID is provided, it is ignored, and the remaining messages are returned.</p> <div class="section" id="id1"> <h3>Parameters<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3> <div class="highlight-php"><div class="highlight"><pre><span class="nv">$ids</span> <span class="o">=</span> <span class="k">array</span><span class="p">(</span><span class="s1">'id_1'</span><span class="p">,</span> <span class="s1">'id_2'</span><span class="p">);</span> <span class="nv">$messages</span> <span class="o">=</span> <span class="nv">$queue</span><span class="o">-></span><span class="na">listMessages</span><span class="p">(</span><span class="k">array</span><span class="p">(</span><span class="s1">'ids'</span> <span class="o">=></span> <span class="nv">$ids</span><span class="p">));</span> <span class="k">foreach</span> <span class="p">(</span><span class="nv">$messages</span> <span class="k">as</span> <span class="nv">$message</span><span class="p">)</span> <span class="p">{</span> <span class="k">echo</span> <span class="nv">$message</span><span class="o">-></span><span class="na">getId</span><span class="p">()</span> <span class="o">.</span> <span class="nx">PHP_EOL</span><span class="p">;</span> <span class="p">}</span> </pre></div> </div> </div> </div> <div class="section" id="delete-a-set-of-messages-by-id"> <h2>Delete a set of messages by ID<a class="headerlink" href="#delete-a-set-of-messages-by-id" title="Permalink to this headline">¶</a></h2> <p>This operation immediately deletes the specified messages. If any of the message IDs are malformed or non-existent, they are ignored. The remaining valid messages IDs are deleted.</p> <div class="highlight-php"><div class="highlight"><pre><span class="nv">$ids</span> <span class="o">=</span> <span class="k">array</span><span class="p">(</span><span class="s1">'id_1'</span><span class="p">,</span> <span class="s1">'id_2'</span><span class="p">);</span> <span class="nv">$response</span> <span class="o">=</span> <span class="nv">$queue</span><span class="o">-></span><span class="na">deleteMessages</span><span class="p">(</span><span class="nv">$ids</span><span class="p">);</span> </pre></div> </div> </div> <div class="section" id="get-a-specific-message"> <h2>Get a specific message<a class="headerlink" href="#get-a-specific-message" title="Permalink to this headline">¶</a></h2> <p>This operation gets the specified message from the specified queue.</p> <div class="highlight-php"><div class="highlight"><pre><span class="sd">/** @var $message OpenCloud\Queues\Message */</span> <span class="nv">$message</span> <span class="o">=</span> <span class="nv">$queue</span><span class="o">-></span><span class="na">getMessage</span><span class="p">(</span><span class="s1">'{messageId}'</span><span class="p">);</span> </pre></div> </div> <p>Once you have access to the <tt class="docutils literal"><span class="pre">Message</span></tt> object, you access its attributes:</p> <table border="1" class="docutils"> <colgroup> <col width="8%" /> <col width="10%" /> <col width="82%" /> </colgroup> <thead valign="bottom"> <tr class="row-odd"><th class="head">attribute</th> <th class="head">method</th> <th class="head">description</th> </tr> </thead> <tbody valign="top"> <tr class="row-even"><td>href</td> <td><tt class="docutils literal"><span class="pre">getHref</span></tt></td> <td>An opaque relative URI that the client can use to uniquely identify a message resource and interact with it.</td> </tr> <tr class="row-odd"><td>ttl</td> <td><tt class="docutils literal"><span class="pre">getTtl</span></tt></td> <td>The TTL that was set on the message when it was posted. The message expires after (ttl - age) seconds.</td> </tr> <tr class="row-even"><td>age</td> <td><tt class="docutils literal"><span class="pre">getAge</span></tt></td> <td>The number of seconds relative to the server’s clock.</td> </tr> <tr class="row-odd"><td>body</td> <td><tt class="docutils literal"><span class="pre">getBody</span></tt></td> <td>The arbitrary document that was submitted with the original request to post the message.</td> </tr> </tbody> </table> </div> <div class="section" id="delete-message"> <h2>Delete message<a class="headerlink" href="#delete-message" title="Permalink to this headline">¶</a></h2> <div class="highlight-php"><div class="highlight"><pre><span class="nv">$message</span><span class="o">-></span><span class="na">delete</span><span class="p">();</span> </pre></div> </div> </div> </div> </div> <footer> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <a href="claims.html" class="btn btn-neutral float-right" title="Claims"/>Next <span class="fa fa-arrow-circle-right"></span></a> <a href="queues.html" class="btn btn-neutral" title="Queues"><span class="fa fa-arrow-circle-left"></span> Previous</a> </div> <hr/> <div role="contentinfo"> <p> © Copyright 2015, Jamie Hannaford, Shaunak Kashyap. </p> </div> <a href="https://github.com/snide/sphinx_rtd_theme">Sphinx theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a> </footer> </div> </div> </section> </div> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT:'../../', VERSION:'1.12.1', COLLAPSE_INDEX:false, FILE_SUFFIX:'.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../../_static/jquery.js"></script> <script type="text/javascript" src="../../_static/underscore.js"></script> <script type="text/javascript" src="../../_static/doctools.js"></script> <script type="text/javascript" src="../../_static/js/theme.js"></script> <script type="text/javascript"> jQuery(function () { SphinxRtdTheme.StickyNav.enable(); }); </script> </body> </html>