Deployment for v 0.9.7

pull/41/head
Hieromon Ikasamo 5 years ago
parent 4ba5c3aa65
commit 43454cdb0d
  1. 24
      docs/achandling.html
  2. 2
      docs/acintro.html
  3. 9
      docs/api.html
  4. 10
      docs/changelog.html
  5. 18
      docs/datatips.html
  6. 49
      docs/images/process_begin.svg
  7. 28
      docs/lsbegin.html
  8. 2
      docs/search/search_index.json
  9. BIN
      docs/sitemap.xml.gz

@ -629,8 +629,8 @@
</li>
<li class="md-nav__item">
<a href="#restrictions" title="Restrictions" class="md-nav__link">
Restrictions
<a href="#limitations" title="Limitations" class="md-nav__link">
Limitations
</a>
</li>
@ -1017,8 +1017,8 @@
</li>
<li class="md-nav__item">
<a href="#restrictions" title="Restrictions" class="md-nav__link">
Restrictions
<a href="#limitations" title="Limitations" class="md-nav__link">
Limitations
</a>
</li>
@ -1369,7 +1369,7 @@ AutoConnectElements contained in AutoConnectAux object are uniquely identified b
<p>To retrieve the values entered in a custom Web page you need to access the AutoConnectElement of the page that caused the request to this page and to do this, you use the <a href="api.html#where">AutoConnect::where</a> function. The <code>AutoConnect::where</code> function returns a pointer to the AutoConnectAux object of the custom Web page that caused the HTTP request.</p>
<div class="admonition note">
<p class="admonition-title">The where() function is available for only AutoConnectAux.</p>
<p>The <code>AutoConnect::where</code> function is available only for the AutoConnectAux object. It is invalid for HTTP requests from individual pages registered with the <strong>on</strong> handler of ESP8266WebServer/ESP32. In other words, the <code>AutoConnect::where</code> function only returns the last AutoConnecAux page called.</p>
<p>The <code>AutoConnect::where</code> function is available only for the AutoConnectAux object. It is invalid for HTTP requests from individual pages registered with the <strong>on</strong> handler of ESP8266WebServer/WebServer for ESP32. In other words, the <code>AutoConnect::where</code> function only returns the last AutoConnecAux page called.</p>
</div>
<h3 id="when-setting-the-initial-values"><i class="fa fa-desktop"></i> When setting the initial values<a class="headerlink" href="#when-setting-the-initial-values" title="Permanent link">&para;</a></h3>
<p>An AutoConnectAux page is dynamically created by AutoConnect when its uri is requested. The initial value of AutoConnectElements can be set before its page request. It is also possible during <code>loop()</code>. To set the initial value when the page is accessed it needs by the handler of its page.</p>
@ -1581,8 +1581,8 @@ ESP8266WebServer class will parse the query string and rebuilds its arguments wh
<h3 id="the-uri-of-the-custom-web-pages">The URI of the custom Web pages<a class="headerlink" href="#the-uri-of-the-custom-web-pages" title="Permanent link">&para;</a></h3>
<p>The transition of the custom Web page follows the URI of the page, but the ESP8266WebServer class does not know the URI of an AutoConnectAux page. (Registering a custom Web page does not use the <em>ESP8266WebServer::on</em>/<em>WebServer::on</em> function.) Therefore ESP8266WebServer class does not detect its URI access. If you want to detect an http request to AutoConnectAux's custom Web page, you need to register its URI with the <a href="apiaux.html#on">AutoConnectAux::on</a> function.</p>
<p>In addition to this, there are restrictions in the handler for the custom Web page as shown in the following section.</p>
<h3 id="restrictions">Restrictions<a class="headerlink" href="#restrictions" title="Permanent link">&para;</a></h3>
<p>The custom Web pages handler has the following restrictions.</p>
<h3 id="limitations">Limitations<a class="headerlink" href="#limitations" title="Permanent link">&para;</a></h3>
<p>The custom Web pages handler has the following limitations.</p>
<ul>
<li>
<p>Do not send HTTP responses from the handler.</p>
@ -1597,13 +1597,13 @@ ESP8266WebServer class will parse the query string and rebuilds its arguments wh
<p>During the connection attempt, the web browser of the client will send a probe for a captive portal. Its request will cause unintended custom Web page transitions.</p>
</li>
<li>
<p>Can not place URI of the custom Web pages to AUTOCONNECT_URI].</p>
<p>Can not place URI of the custom Web pages to AUTOCONNECT_URI.</p>
<p>AutoConnect will not work if you place a custom Web page to <a href="api.html#defined-macros">AUTOCONNECT_URI</a>.</p>
</li>
</ul>
<div class="admonition hint">
<p class="admonition-title">302 Redirect Alternatives</p>
<p>To transition from a custom Web page to a sketch owned page, execute the link function of JavaScript with the AutoConnectElement element.</p>
<div class="admonition caution">
<p class="admonition-title">Do not handle for the same page</p>
<p>Do not duplicate AutoConnect::on with ESP8266WebServer::on (also WebServer::on) for the same custom web page.</p>
</div>
<script>
window.onload = function() {
@ -1618,7 +1618,7 @@ ESP8266WebServer class will parse the query string and rebuilds its arguments wh
<p>The valid scope of the name is within an AutoConnectAux.&#160;<a class="footnote-backref" href="#fnref:1" rev="footnote" title="Jump back to footnote 1 in the text">&#8617;</a></p>
</li>
<li id="fn:2">
<p>The pattern of AutoConnectInput conforms to javascript specification.&#160;<a class="footnote-backref" href="#fnref:2" rev="footnote" title="Jump back to footnote 2 in the text">&#8617;</a></p>
<p>Regular expression specification as a pattern of AutoConnectInput is <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions">JavaScript compliant</a>.&#160;<a class="footnote-backref" href="#fnref:2" rev="footnote" title="Jump back to footnote 2 in the text">&#8617;</a></p>
</li>
</ol>
</div>

@ -855,7 +855,7 @@ AutoConnect can handle custom Web pages prepared by user sketches individually.
<p align="center"><img align="center" width="560px" src="images/ac_objects.svg"></p>
AutoConnectAux is a container for AutoConnectElements. To make a custom Web page, create elements that make up the page and put it in the AutoConnectAux object. Joining its AutoConnectAux object to AutoConnect will integrate the custom Web page into the AutoConnect menu.</p>
<p><img src="images/ac_declaration.svg"></p>
<p>The above figure shows a code sequence that declares AutoConnectElements and put in the AutoConnectAux container and integrates those into AutoConnect. It declares two text elements named <em>header</em> and <em>caption</em>, adds them to the AutoConnectAux object as <em>aux</em>, binds to an AutoConnect object named <em>portal</em>. This sequence is the basic procedure for creating custom Web pages with the sketch. Also, further explanation of AutoConnectElements is the <a href="acelements.html">documentation</a>.</p>
<p>The above figure shows a code sequence that declares AutoConnectElements and put in the AutoConnectAux container and integrates those into AutoConnect. It declares two text elements named <em>header</em> and <em>caption</em>, adds them to the AutoConnectAux object as <em>aux</em>, binds to an AutoConnect object named <em>portal</em>. This sequence is the basic procedure for creating custom Web pages with the sketch. The further explanation is available in section <a href="acelements.html">AutoConnectElements</a> also.</p>
<h2 id="custom-web-pages-in-autoconnect-menu">Custom Web pages in AutoConnect menu<a class="headerlink" href="#custom-web-pages-in-autoconnect-menu" title="Permanent link">&para;</a></h2>
<ul class="horizontal-list">
<li><img style="margin:0 20px 0 -20px;float:left;width:300px;" src="images/ac_auxmenu.png">

@ -1294,7 +1294,7 @@ Register the function which will call from AutoConnect at the start of the capti
<dl class="apidl">
<dt><strong>Parameters</strong></dt>
<dd><span class="apidef">softapIP</span><span class="apidesc">An IP address of SoftAP for the captive portal.</span></dd>
<dt><strong>Retuen value</strong></dt>
<dt><strong>Return value</strong></dt>
<dd><span class="apidef">true</span><span class="apidesc">Continues captive portal handling.</span></dd>
<dd><span class="apidef">false</span><span class="apidesc">Cancel the captive portal. AutoConnect::begin function will return with a false.</span></dd>
</dl></p>
@ -1318,11 +1318,14 @@ Register the handler function for undefined URL request detected.
<h3 id="where"><i class="fa fa-caret-right"></i> where<a class="headerlink" href="#where" title="Permanent link">&para;</a></h3>
<p><div class="codehilite" style="background: #272822"><pre style="line-height: 125%"><span></span><span style="color: #f8f8f2">AutoConenctAux</span><span style="color: #f92672">*</span> <span style="color: #f8f8f2">where(</span><span style="color: #66d9ef">void</span><span style="color: #f8f8f2">)</span>
</pre></div>
Returns a pointer to the AutoConnectAux object of the custom Web page that caused the request to that page. This function is available only for the AutoConnectAux object. It is invalid for HTTP requests from individual pages registered with the <strong>on</strong> handler of ESP8266WebServer/ESP32. In other words, this function only returns the last AutoConnecAux page called.
Returns a pointer to the AutoConnectAux object of the custom Web page that caused the request to the page.<br>
AutoConnect identifies the URI (ie. the referrer URI) that caused the request each time from the client occurs and will save the URI If the request source is a custom Web page of AutoConnectAux. The <strong>where</strong> function returns a pointer of AutoConnectAux which is a URI of a least recent request from the custom Web page.<br>
This function is provided to access the fields (ie. the AutoConnectElements) with a custom Web page handler of a page and is available only for request source that is the custom Web pages. It is invalid for HTTP requests from individual pages registered with the <strong>on</strong> handler of ESP8266WebServer/WebServer for ESP32. In other words, this function only returns the AutoConnecAux page which is a least recently displayed.
<dl class="apidl">
<dt><strong>Retuen value</strong></dt>
<dt><strong>Return value</strong></dt>
<dd>A pointer to the AutoConnectAux that caused the request the page.</dd>
</dl></p>
<p>The <strong>where</strong> function usage is described in the section <a href="achandling.html#where-to-pick-up-the-values"><em>Where to pick up the values</em></a>.</p>

@ -691,8 +691,8 @@
</li>
<li class="md-nav__item">
<a href="#096-sep27-2018" title="[0.9.6] Sep.27, 2018." class="md-nav__link">
[0.9.6] Sep.27, 2018.
<a href="#096-sept27-2018" title="[0.9.6] Sept.27, 2018." class="md-nav__link">
[0.9.6] Sept.27, 2018.
</a>
</li>
@ -781,8 +781,8 @@
</li>
<li class="md-nav__item">
<a href="#096-sep27-2018" title="[0.9.6] Sep.27, 2018." class="md-nav__link">
[0.9.6] Sep.27, 2018.
<a href="#096-sept27-2018" title="[0.9.6] Sept.27, 2018." class="md-nav__link">
[0.9.6] Sept.27, 2018.
</a>
</li>
@ -853,7 +853,7 @@
<li>Supports <a href="apiconfig.html#hostname"><strong>AutoConnectConfig::hostName</strong></a>. It activates <code>WiFi.hostname()</code>/<code>WiFi.setHostName()</code>.</li>
<li>Supports the captive portal time-out. It can be controlled by <a href="apiconfig.html#portaltimeout"><strong>AutoConnectConfig::portalTimeout</strong></a> and <a href="apiconfig.html#retainportal"><strong>AutoConnectConfig::retainPortal</strong></a>.</li>
</ul>
<h4 id="096-sep27-2018">[0.9.6] Sep.27, 2018.<a class="headerlink" href="#096-sep27-2018" title="Permanent link">&para;</a></h4>
<h4 id="096-sept27-2018">[0.9.6] Sept.27, 2018.<a class="headerlink" href="#096-sept27-2018" title="Permanent link">&para;</a></h4>
<ul>
<li>Improvement of RSSI detection for saved SSIDs.</li>
<li>Fixed disconnection SoftAP completely at the first connection phase of the <a href="api.html#begin"><strong>AutoConnect::begin</strong></a>.</li>

@ -652,8 +652,8 @@
</li>
<li class="md-nav__item">
<a href="#ip-adderss" title=" IP adderss" class="md-nav__link">
IP adderss
<a href="#ip-address" title=" IP address" class="md-nav__link">
IP address
</a>
</li>
@ -693,7 +693,7 @@
</li>
<li class="md-nav__item">
<a href="#ip-address" title=" IP Address" class="md-nav__link">
<a href="#ip-address_1" title=" IP Address" class="md-nav__link">
IP Address
</a>
@ -847,8 +847,8 @@
</li>
<li class="md-nav__item">
<a href="#ip-adderss" title=" IP adderss" class="md-nav__link">
IP adderss
<a href="#ip-address" title=" IP address" class="md-nav__link">
IP address
</a>
</li>
@ -888,7 +888,7 @@
</li>
<li class="md-nav__item">
<a href="#ip-address" title=" IP Address" class="md-nav__link">
<a href="#ip-address_1" title=" IP Address" class="md-nav__link">
IP Address
</a>
@ -958,7 +958,7 @@
<span style="color: #f8f8f2">tm.Second</span> <span style="color: #f92672">=</span> <span style="color: #f8f8f2">Second;</span>
</pre></div>
<h3 id="ip-adderss"><i class="fa fa-exchange"></i> IP adderss<a class="headerlink" href="#ip-adderss" title="Permanent link">&para;</a></h3>
<h3 id="ip-address"><i class="fa fa-exchange"></i> IP address<a class="headerlink" href="#ip-address" title="Permanent link">&para;</a></h3>
<p>To convert a String to an IP address, use <strong>IPAddress::fromString</strong>. To stringize an instance of an IP address, use <strong>IPAddress::toString</strong>.</p>
<div class="codehilite" style="background: #272822"><pre style="line-height: 125%"><span></span><span style="color: #f8f8f2">IPAddress</span> <span style="color: #f8f8f2">ip;</span>
<span style="color: #f8f8f2">AutoConnectInput</span><span style="color: #f92672">&amp;</span> <span style="color: #f8f8f2">input</span> <span style="color: #f8f8f2">aux.getElement</span><span style="color: #f92672">&lt;</span><span style="color: #f8f8f2">AutoConnectInput</span><span style="color: #f92672">&gt;</span><span style="color: #f8f8f2">(</span><span style="color: #e6db74">&quot;INPUT&quot;</span><span style="color: #f8f8f2">);</span>
@ -1055,7 +1055,7 @@
<div class="codehilite" style="background: #272822"><pre style="line-height: 125%"><span></span>^[a-zA-Z0-9.!#$%&amp;&#39;*+\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$
</pre></div>
<h3 id="ip-address"><img src="images/regexp.png" align="top"> IP Address<a class="headerlink" href="#ip-address" title="Permanent link">&para;</a></h3>
<h3 id="ip-address_1"><img src="images/regexp.png" align="top"> IP Address<a class="headerlink" href="#ip-address_1" title="Permanent link">&para;</a></h3>
<div class="codehilite" style="background: #272822"><pre style="line-height: 125%"><span></span>^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
</pre></div>
@ -1074,7 +1074,7 @@
<p>The ssanf library function cannot be used with the old Arduino core.&#160;<a class="footnote-backref" href="#fnref:1" rev="footnote" title="Jump back to footnote 1 in the text">&#8617;</a></p>
</li>
<li id="fn:2">
<p>This regular expressiondoes not fully support the format of the e-mail address requested in <a href="https://tools.ietf.org/html/rfc5322">RFC5322</a>.&#160;<a class="footnote-backref" href="#fnref:2" rev="footnote" title="Jump back to footnote 2 in the text">&#8617;</a></p>
<p>This regular expression does not fully support the format of the e-mail address requested in <a href="https://tools.ietf.org/html/rfc5322">RFC5322</a>.&#160;<a class="footnote-backref" href="#fnref:2" rev="footnote" title="Jump back to footnote 2 in the text">&#8617;</a></p>
</li>
<li id="fn:3">
<p>This regular expression does not consider semantic constraints. It is not possible to detect errors that do not exist as actual dates.&#160;<a class="footnote-backref" href="#fnref:3" rev="footnote" title="Jump back to footnote 3 in the text">&#8617;</a></p>

@ -234,7 +234,7 @@
inkscape:pageshadow="2"
inkscape:zoom="1.4142136"
inkscape:cx="350.72493"
inkscape:cy="534.72635"
inkscape:cy="591.29489"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="true"
@ -272,7 +272,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@ -386,7 +386,7 @@
sodipodi:role="line">WiFi.scanNetworks</tspan></text>
</g>
<g
id="g11063">
id="g1026">
<rect
ry="0.26458257"
rx="0.26458332"
@ -406,7 +406,7 @@
y="95.511253"
x="42.913143"
id="tspan9136-4-0-7"
sodipodi:role="line">Load</tspan><tspan
sodipodi:role="line">Load BSSID</tspan><tspan
id="tspan9414"
style="line-height:1em;stroke-width:0.26458332"
y="98.686256"
@ -414,28 +414,27 @@
sodipodi:role="line">matched credential</tspan></text>
</g>
<g
id="g9476"
transform="translate(-43.65625,-2.6458341)">
id="g1014">
<rect
ry="0.26458257"
rx="0.26458332"
y="106.49999"
x="75.40625"
y="103.85416"
x="31.75"
height="7.9375019"
width="52.916668"
id="rect9134-4-7-5"
style="opacity:0.66000001;vector-effect:none;fill:#e7f3ff;fill-opacity:1;stroke:#000000;stroke-width:0.26458329;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" />
<text
id="text9138-7-3-3"
y="111.34698"
x="77.640999"
y="108.70114"
x="34.534584"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:3.17499995px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
xml:space="preserve"><tspan
style="stroke-width:0.26458332"
y="111.34698"
x="77.640999"
y="108.70114"
x="34.534584"
id="tspan9136-4-0-4"
sodipodi:role="line">WiFi.begin(SSID, PASSWORD)</tspan></text>
sodipodi:role="line">WiFi.begin(SSID,PASSWORD)</tspan></text>
</g>
<g
id="g9353-2"
@ -637,7 +636,7 @@
sodipodi:role="line">portalTimeout</tspan></text>
</g>
<g
id="g10490">
id="g1006">
<rect
ry="0.26458257"
rx="0.26458332"
@ -646,7 +645,7 @@
height="10.583351"
width="37.041668"
id="rect9134-4-7-4-6-9"
style="opacity:0.66000001;vector-effect:none;fill:#e7f3ff;fill-opacity:1;stroke:#000000;stroke-width:0.26458329;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" />
style="opacity:0.66000001;vector-effect:none;fill:#e7f3ff;fill-opacity:1;stroke:#000000;stroke-width:0.26499999;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill" />
<text
id="text9138-7-3-9-0-0"
y="207.53156"
@ -663,17 +662,17 @@
y="211.50031"
x="41.894592"
sodipodi:role="line">processNextRequest</tspan></text>
<path
inkscape:connector-curvature="0"
id="path9865"
d="m 41.0104,203.33749 v 10.58334"
style="fill:none;stroke:#000000;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;opacity:0.66" />
<path
inkscape:connector-curvature="0"
id="path9865-8"
d="m 75.40623,203.3375 v 10.58334"
style="fill:none;stroke:#000000;stroke-width:0.26458333;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none;opacity:0.66" />
</g>
<path
style="fill:none;stroke:#000000;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 41.0104,203.33749 v 10.58334"
id="path9865"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 75.40623,203.3375 v 10.58334"
id="path9865-8"
inkscape:connector-curvature="0" />
<g
id="g9353-2-8"
transform="translate(-15.875002,88.900003)">

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

@ -139,7 +139,7 @@
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
<a href="#autocoonnectbegin-logic-sequence" tabindex="1" class="md-skip">
<a href="#autoconnectbegin-logic-sequence" tabindex="1" class="md-skip">
Skip to content
</a>
@ -660,8 +660,8 @@
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="#autocoonnectbegin-logic-sequence" title="AutoCoonnect::begin logic sequence" class="md-nav__link">
AutoCoonnect::begin logic sequence
<a href="#autoconnectbegin-logic-sequence" title="AutoConnect::begin logic sequence" class="md-nav__link">
AutoConnect::begin logic sequence
</a>
</li>
@ -732,8 +732,8 @@
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="#autocoonnectbegin-logic-sequence" title="AutoCoonnect::begin logic sequence" class="md-nav__link">
AutoCoonnect::begin logic sequence
<a href="#autoconnectbegin-logic-sequence" title="AutoConnect::begin logic sequence" class="md-nav__link">
AutoConnect::begin logic sequence
</a>
</li>
@ -757,8 +757,8 @@
<h1>Appendix</h1>
<h2 id="autocoonnectbegin-logic-sequence">AutoCoonnect::begin logic sequence<a class="headerlink" href="#autocoonnectbegin-logic-sequence" title="Permanent link">&para;</a></h2>
<p>Several parameters of <a href="apiconfig.html">AutoConnectConfig</a> affect the behavior of <a href="api.html#begin">AutoConnect::begin</a> function. Each parameter affects the behaves in complicated order and apply the followings with the priority in the logic sequence of AutoConnect::begin.<sup id="fnref:1"><a class="footnote-ref" href="#fn:1" rel="footnote">1</a></sup></p>
<h2 id="autoconnectbegin-logic-sequence">AutoConnect::begin logic sequence<a class="headerlink" href="#autoconnectbegin-logic-sequence" title="Permanent link">&para;</a></h2>
<p>Several parameters as follows of <a href="apiconfig.html">AutoConnectConfig</a> affect the behavior of <a href="api.html#begin">AutoConnect::begin</a> function. Each parameter affects the behaves in interacted order with the priority and apply to the logic sequence of AutoConnect::begin.</p>
<ul>
<li><a href="apiconfig.html#immediatestart">immediateStart</a> : The captive portal start immediately, without first WiFi.begin.</li>
<li><a href="apiconfig.html#autoreconnect">autoReconenct</a> : Attempt re-connect with past SSID by saved credential.</li>
@ -767,16 +767,12 @@
</ul>
<p>You can use these parameters in combination with sketch requirements and need to understand correctly the behavior caused by the parameters. The following chart shows the AutoConnect::begin logic sequence including the effect of these parameters.</p>
<p><img align="center" src="images/process_begin.svg"></p>
<p>For example, AutoConnect::begin will not exits without the portalTimeout while the connection not establishes, but WebServer will start to work. So, your sketch may work seemingly, but it will close with inside a loop of the AutoConnect::begin function. Especially when invoking AutoConnect::begin in the <strong>setup()</strong>, execution control does not pass to the <strong>loop()</strong>.</p>
<p>As different scenes, you may use the immediateStart effectively. Equipped the external switch to activate the captive portal with the ESP module, combined with the portalTime and the retainPortal it will become WiFi active connection feature. You can start AutoConnect::begin at any point in the <strong>loop()</strong>, which allows your sketch can behave both the offline mode and the online mode.</p>
<p>For example, AutoConnect::begin will not exits without the <strong>portalTimeout</strong> while the connection not establishes, but WebServer will start to work. So, your sketch may work seemingly, but it will close with inside a loop of the AutoConnect::begin function. Especially when invoking AutoConnect::begin in the <strong>setup()</strong>, execution control does not pass to the <strong>loop()</strong>.</p>
<p>As different scenes, you may use the <strong>immediateStart</strong> effectively. Equipped the external switch to activate the captive portal with the ESP module, combined with the <strong>portalTime</strong> and the <strong>retainPortal</strong> it will become WiFi active connection feature. You can start AutoConnect::begin at any point in the <strong>loop()</strong>, which allows your sketch can behave both the offline mode and the online mode.</p>
<p>Please consider these kinds of influence when you make sketches.</p>
<div class="footnote">
<hr />
<ol>
<li id="fn:1">
<p>Another parameter as the <a href="api.html#begin">3<sup>rd</sup> parameter</a> of AutoConnect::begin related to timeout constrains the connection wait time after WiFi.begin. It is the <strong>CONNECTED</strong> judgment of the above chart that it has an effect.&#160;<a class="footnote-backref" href="#fnref:1" rev="footnote" title="Jump back to footnote 1 in the text">&#8617;</a></p>
</li>
</ol>
<div class="admonition info">
<p class="admonition-title">The AutoConnect::begin 3<sup>rd</sup> parameter</p>
<p>Another parameter as the <a href="api.html#begin">3<sup>rd</sup> parameter</a> of AutoConnect::begin related to timeout constrains the connection wait time after WiFi.begin. It is the <strong>CONNECTED</strong> judgment of the above chart that it has an effect.</p>
</div>

File diff suppressed because one or more lines are too long

Binary file not shown.
Loading…
Cancel
Save