# Hosting

The dydu solution is available in SaaS (*Software as a Service*). It means the dialog engine is hosted by the dydu infrastructure.

The dialog box is generated by javascript code. This, as well as image files accompanying it can be hosted either by dydu, or by the client himself.

If the client hosts its own dialog box, each modification, in design or function, requires a package that has to be tested on the customer's acceptance test environments before being published.

The diagrams below explain the network flows when a user connects to the customer's site and chats with the bot.

Whatever the product (automatic chat, Livechat,dynamic FAQ, static FAQ), the hosting issue is essential.

Two alternatives are possible:

* External hosting;
* Internal hosting.

### External Hosting

Most of the time, hosting is not managed by the customer's infrastructure but by dydu infrastructure.

External hosting allows, without making any change on the client-side integration, take advantage of the following developments:

* Aesthetic improvements;
* New pushing rules;
* Bug Fixes;
* Added context variables (user information).

The deliverable is then the link to the dialog box / Dynamic FAQ / Static FAQ to integrate as defined in *Integration / Source Code* of each of these products.

### Internal hosting

If, for reasons of security or accessibility to the network, the dialog box must be hosted by the client, dydu provides a package containing all the necessary files.

* **Dialog box / Dynamic FAQ**

  In this case, the dialog box and/or the dynamic FAQ is delivered in the form of a zip file with compressed elements and contains the following files:

  * **assembly.min.js**
  * assembly.js
  * sample.debug.html
  * **pushrules\_angular.js**
  * **surveys\_angular.js**
  * backup.zip
  * **files/...** Only files / folders in bold must be deployed in production. Others are useful for test, debug, or restore purposes.
* **Static FAQ**

  In the case of the static FAQ, a zip archive containing the HTML/CSS/JS file tree is provided and must be implemented on a web server.

The dydu solution is available in SaaS (*Software as a Service*). It means the dialog engine is hosted by the dydu infrastructure.

The dialog box is generated by javascript code. This, as well as image files accompanying it can be hosted either by dydu, or by the client himself.

If the client hosts its own dialog box, each modification, in design or function, requires a package that has to be tested on the customer's acceptance test environments before being published.

The diagrams below explain the network flows when a user connects to the customer's site and chats with the bot.

### Hosting the dialog box by dydu[​](https://dev.docs.dydu.ai/docs/Others/Technical_aspects/hosting#hosting-the-dialog-box-by-dydu) <a href="#hosting-the-dialog-box-by-dydu" id="hosting-the-dialog-box-by-dydu"></a>

![](/files/OWMHJ6fPw9NOmdsuLzvQ)

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAtCAIAAABauh7zAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABAlJREFUWIXNmL9v20YUxx9/iHRE1UEESJYABnAtoEsGAZkKa449V1kr7k7G/FiSf6Atsta7lKFL1VlJhy72EiCIWgToEAYGwlZSFbi1QDE+kkd2OId3pESJpGzY300C+fi59+69e+843/fhssVfNgDAFYEQM7yjW97hMe5PMACYrq9bHgDU8nxB5ABguyjU14VaPsXyuOR7Yoj8jmH3J3iElr+yIXP1daGlShWZOx8IE8MvA6dt2Ilgw9JU6ZtqriCsBtEbu/tHaIozAJxJEWBvU94txYZ+CUTHmOMARYD6urBdFCsytyHzxOFD5I+QN0T+4bHbn+BZaE2VWmouHYSJYf8IvRi77J9lidNuSgvWFKg3dtsf7H/skPGdkri3Kc+GJhbiBz1EoAigqVKzOn8pcWobdnfgsF7ZKYmPanIiiLZhdwyHJXh261qqrAukW96Dt59Yjpaa01SJfWaO3d7YZQm28vzz20o2AgCo5fnnt5Ut5vWO4fTCUY6aJlsh+El8sDjBlqogwLNb1xTGyP4RMhnfRCG6Aztw3bkQzOWYYugOaNKFIIbIZwOhqVLmKMyqlufZfd0xnOHnyhv6BlsSyhKXNheWSlOlskSrePC5EMTvExoo7WZoAy/QX6f+d+8Q68JFHIzZ4HMUQre84GRSBEhSkQDg1X/4/h/Wrx/dNxN3+dMAuyUx2BkjdHYCU4iDY2qlvp5oN/70t/Pkz9NTL8mzVKzx/gkOQfSZWGwXl7vB8eG3j+4XIsxWwMVijR/860JcU5OkCchx8PSrNYED5KXrUmeNU0+wrcqGnCgz1TWuKnNpO2XSgBFN3XiIJJ7ILLb2RDfmJYpCsGVkmKCLzCyyeiJysFGIyhqFGKGUaZdGpktXWBAB4sJxoZ6YNU4hGjdouh4eJyp/2cQaJx+lEPXrTCGbrNBcLxNrnHyUrr6W58sSR1rTKYbe2E14fHyZ519+rSQk6I3doF8pS1wtsjEh7IxOplFnqVizjc/1OwTB9p8j5GcbuRaobdhsSQz6lRBERebY+aQ7cNicXlG65XUHtOdoqbmgLkdTtFmV2E7wwdtP5nnsURMD2/grAjSr1OtRiIIAe5v0aJ5ieLgyh4nhYXj0iMxhc4rVbklkg6Jb3revp5njMvt6S81F8i52DPxeRy/DY+DdauxEG6eO4fzMzBAAcKckPk44BgKAieHHoxAHAGzInKZKOwnqx4uxG8kFQnAv1UBMFBlKicjVQKMoVmReEc/6A93ypi4MkXcQczUwO4ImhYCrcElCZGLoDua4JIlaaq5ZlVa9Lgo0RH7bsPsnOHL1MVdliWsUxWY1d24XZxHpltc/waRbN114b3kAsJXnSYfSuCHWr1/YFeLF6Uo0uv8DlF71sqncdxwAAAAASUVORK5CYII=) **Login to web site**

The user connects to the website, hosted in the customer's infrastructure.

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAArCAIAAACM4/3uAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABKlJREFUWIXNWM1v22Qc/vkjdhNH2RaRL+SWkuwyJhapHJAaiVszLhOQaTdqcULqNE5by2F/wNBgFw5U2jHZYRfCuUPs1h6RgrQNaTLrVI8kpAo0cpz447U5uMSvnTh22kzjUS6J8r7v8/4+n99LWJYFbxrkmyYAAECfYI2omHtd1OghAJANS1RMACjEyDhNAMBqkiomqEJshusR4d3RUq2apDV6qK0GL8mwRDFBrfNMliXmQ0JG8FNTr0paKLJuCDzzWS4Sp05HYqdjbO+rfXQCAsfgKNhYZi+nfF0fQKImTTAAR0ExQa0m6SxLZFjSNnhLtdqq2VKtva7R6KFx0gLPrPOR2UjICLb31UcdA/8xzRDCIjPlTiPsdIzqgfaX5tq8nKI3ltlx1/iS+FZ0MeAoEHimkpt8FT9UJa3e1HGrlFP0ZoENRaIqaTVJxxncuxidKetGEBXz5pMBzmOdjwg8g/9nwr47HQNnkI+RD1a4kzEAgEKMfLDC5bHlNUnfcXvZu7UdCqOvtg2mJ1gg4hTcuxjlsE2291UZs42XRL2pjUw3FwYTefQR1JtO0rlItFQLd4TAMyf2wjgKMRKP65qkt/6rvK4z8JKQZohZcyEQAs+kGaeKj45zZfxvPcdRwqIrgCfCBNjtokYP6aa1FCU/Tke4IN8Ji8x3ouo5ziEhKuaoM3EUBFak533zzvPhwdDJ8Iev9LvvLbw71YOXU/SoCbRVS1TMQox0Fux2nbQpJoKjsatbB0Nr7S36mwsL2+9HP0pS/xjW/ZfBTQ7fvHGEAI+JBuaL1WRwYf7wLHX/UnTrPPvBGeo8R36VZwHgmRzc6PDNd/82wE9ZhREBAIBbfogAADgqeOH45s4uuFTJsDNn5i+HBgCsnA32oy3AbPQNfxIhLTHCC8V8+EqjCbiWC84pvPbY0nAOtaitWrd/Hw5NuL7MLkWD2Y+HjUMC7zF4kE5HV7e2ng06mnXt7ciVTCjZLGIt9VKCdJGIYzvIribniyMDtp4O/xxan2QjXy4FO8JGa0wnOyTwYBSVYEv0EXz9dPByYF7J0DeWwzIAgLZqeg51ro8H4zjZcXz/QrXD6vGh8fjQMd0Xi8yn2WlNR+w7JOxDnduXsBqy1zUCq05PPybaR66Pbk5bJSNXwNmHOgcXYmSaIWxpavd7jwjz4M6FhQCak4DrlXyMtNPVlaJXsd5db+ohSvBskBHUm45eGfVIF4ky1os94mcu8Mi2cjoygUScgorbGHbozQWiYuJmqGCzobdiVnIMboybTwZzcYqMABf+HAUVrMB7ScQp2Cw4EddHcOvUPGQEt9yjx2ZhAdfPE3pHKUnhQ6OomJ//2j+xX8aXb7zDlJKuZus7Bt4V1Z/dY+DVnO9E64eapP+IBSMArKXorZBjIADICH7Yd/EAgAxLCDxTDjEQP+oYVUnzPKespejrMw3ENjxDqQ37aaCUpLMsydHH+kBUzL4BLdXc9XkaGB9Bw5KA/8MjiQ0ZQb05wSRhsM5HKjnmtM9FI7RUqyppjSPkefqYiDRDlJJ0JReZ28OZB6JiNo6QrdZlA/5QTADIx0hbFpXO0cUzr+0J8fXhX0/8TX/ySzAPAAAAAElFTkSuQmCC) **Downloading the dialog box**

The HTML code of the page that includes the dialog box tells the browser to download the javascript code and images from the dialog box.

These are hosted by the **dydu** infrastructure, specifically by a web server.

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAArCAIAAACM4/3uAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABNRJREFUWIXNWE1oI2UYfuYn3zRJN7sNJk1kKt0GVrDQSGFBGjxui7fdgjcTD16seOsKngSPor14sCoepFkQL/GcdVlQaL0JKW6FxSxxDZt0082y2cmkk8yPhwkzXyaTziTpos8t4Zv3e7735/ne92MMw8B/DX6s1WVZP2hqpZYGQFKNsqwDSIXYWZ4BsBbl0hEuFWLHJcH48URdMfLVbqmlHSvei+cFJh3hsiJJCMz5kJA0/FTr7VW7Ps3RyInkRjIwy01HothQdytKW5uAQB9hDluLwkbMI+gjSeSrLg4Ic0hHuLUonxCYeYE1HV5XjGNFryvGQVMttbRh0jmRZMXAeCQkDbsV5XZDpf+MEya3QDzPBKDYUPf+6T7uDphdj/Fbi8Ko0LiQ+Lw8wCDMISeSzeRZRxnGXrVbqPVor6zH+I9Sgi8Se9VuvtqjGewsByeoOgBlWd++16F5ZMVATiTDKwesFxsqzWApxN5aDU/GAEAqxN5aDS9Rn+erveJglJ0kzFSwfpo+8FNgZ2CWw85yMEwZ2a0o0lDm2iQKta7lunNh4MqjraFQcxZdn0RdMehA5EQycRSGkQqxdF7nq736oPL2d6IlIU6YcWvBEzmRxImt4g4F6tf9YcsOVG7BJYEdkDT88kS9L2k68LLAXovxLxGPmyK3QL4oK8Pb9UmUZd26mcIcPBXpzon65QOlo9v/5KvdT67MvDF3VhJtxHjrEjhWjLKsWxFnAew37bJJR7yzUWAZnsW7Itl5LfjNSvB6ItAz8PXfiueHtPHSM9sZLIAS5Zy1qLcwvxnlflgNvyMGViLsUoh97xUCoO7jlqeN7z+1T+4sAZ9NgEB99+sTFcBi0LuaRhnnAdCtyrzgqzJ14LO/FM1A7VS/39YjPD687H4v0DAbMBNtSjmdJHx6wjBw96RvhgVSYS7oQ9lo7TFbQ5vEBOAYfLsS1IFm17h7ot45UT/+8/T710PhiUSWBxAnjHX91xXDpzMuh1gAqRCuXuIenepHkn70XLt66SwW9Onpi40FkJixdz1WdIyPCzwDQNY8CkRS7QWzVAycaein0n581PvjuW6tK7W0359pAK543XijjPMAMnP8Yasv5gdN1VMxf3uqfvewG2SRmGE7mmGavp4IJL3ieECpYmbO3oUHkL5ICVnLu7l+O0kI26vI+sOOThgsX2DfigfWfbSftHF6Ux5AKsRaudnWUGx4OCMT5TLRscug2FCtfiVOmJQjMR288hONOp6gzdLb2STo/vNYMSYbuc7AXrVLS6Kj3e2TSAjMjYTdyBRqPbqmp0RZ1gs1u23LigGHFNmByS0QuhPcvtcZ7kgngKSBbvzDHDaTzqbJJjHLYWvRvoTaGm5OzUPScHNw9HCdwwbEaiPG00NjWdbfP5Qnjsvw51kx4Fp3LmPg9lHnsDWw8dYi2UyM1/oW6r3dykB2r81xn74647rYfSD+qqL8PDgqzQtMTiR+FOl2Q3XUAoBrMf6DsQZiE46h1IT5NJCJ8gmBjQuM9TTwWDHqir4/4mlg1AjqTQL/h0cSE5KGQs3FJX6QFQObSTLtc5GFumIUar39pup4+nBFnDCZKL+ZdCrStCQslGW99Ewzu3VJxQNZB7AUYs0OJTPHpy++sCfEF41zG72nwb8raEohq9DGJAAAAABJRU5ErkJggg==) **Querying the bot**

When the user asks the bot a question, the request is sent to the dydu web server.

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAsCAIAAABzOtYvAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABItJREFUWIXNWD1sG2UYfu7Hd40duY2FHRtd1cgWLKWy1KmKuyGSmbBi72HpkMLEgsREFTGVSEgsdpG6YAYW0nZhSCSWIlfKQrmSwqk+x2mKje32O98Pw7l339mXu7OTKjybT+f3fb7373veYyzLwpmCPVv3/wsG/FRvywNz98hodA0AKjFbxAJQiLPzPANgOcUVk1whPt2pmCh1oBKrpmiNrmG7DMaiyBSTXFkSsiJzCgx6Bn5sDquKFsXWGCqS8GEuNs+dgMF2W9/aJ31jBu8jJDisL4mr6aBcH8ugpvgcPcGhmOSWU3xWZBZF1o6zSqwWMVVi7R7pja4xybgiCWUpNgWDnoGtfXKvrdMPMwJTuSgEn8bGdluv/q0daB6zK2l+fUn0zYgPg1uyx32CQ0US1nLHHsIXVUWrN4d0PFbS/KcFMZxBVdFqypB2v3l5btoGsyEPzI29lzSJshSrSMLYax7T222ddp+Ps3euJmZzD6AQZ+9cTeSpv9eU4bY3uR4Gdvqdn/bpQ3spGPMcNi/PJSgjW/uk5y1Vl0G9qTkROxX3viT6BupNT4uNGKjEouNfkYSZgz+JQpylC7mmDFVqto7c0K2fEZhpKz8UFUnICO6Qpt2NGDzqusmpXBwv12B895f25WPyR98MIUGZpd2xAOSB6Vw5CQ5Rxo6DB4f63WfDX57rh1rIpbWa5p1qaBFLHpgug50jt0OKySnK77lm3f6ThL/nZ7zRMVwGDSomy6kpAvD1E9IzcGkuas3Sxnde6C4DGhEvdQA/H+i//mNcT3FXklEZ+BpnAdC6Y1GMZO5As7aekgs8cyMv6pGlri2lbPRfZ36cQcQYbMpkYOBGXrzAR40ZAHrGeCpxWvzU0h92jPff4q+nTmFq8gAyAuNc5yqxgsPQ0fHtUwLgaGh98fsrAI/7JoC7z7QHh+zn7/jcvw6ccwNwbiweQPacy6BFzKwYdLLO0HplAsBvHc8Ns/evycJEIIMeVTLzr9tivPdUYhUDbABZkbl9ZY5+8r2i7b4w1i8J74XNEtVPavMASgv8o+5oUO8e6cEzUWDxbsJTPckYA+Dtc+zY80nsUqOvtDDywgIonqdGVfcE0jgMtHHHKQugEGedi6tvYFLGBGMjL96/lri2EJKC7bbu6I+MwDidyY4xAlCbaT8JBW22RI3nEQNaQLaINduSFICqotFzj9YfIwZZkaGXinpzSPfuCSEPzHrTFWBlKUaPHLd613ICreY29l72TqMoewZozZ7gsJbzKCCXwTyH9SV3nvQN3DwxiZ6Bm96VYXJz8nTwapqncyEPzI8f9mdOx+Tfy1Jsctj4bG1fyeS+d2v7KBe0evqipgx/oOQ/gA/S/GdRtjYAPQPf7HtIAFgUmYokrESQkPfa+ljl2+4/ib652hhbIG3Y23spxWdFNsGP7nt5YPZ1qMTcOWZ7910XwxngzL9g2OgZqDd9ghEFZSm2lhNO9BXHgUqsqqI1OsZB2FIAICMwpRS/loudzpesMcgDs9ExbKHd0/FkYALIx1lbbpQW+OL5N/M1743iP6uYMfJVPePxAAAAAElFTkSuQmCC) **Transmission of the request to the dialog engine**

The web server acts as a reverse proxy and sends the request to the dialog engine that deals with the question and provides the matching answer.

### Hosting the dialog box by the client[​](https://dev.docs.dydu.ai/docs/Others/Technical_aspects/hosting#hosting-the-dialog-box-by-the-client) <a href="#hosting-the-dialog-box-by-the-client" id="hosting-the-dialog-box-by-the-client"></a>

![](/files/fJpAEG0Zm8livRCX9zYb)

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAtCAIAAABauh7zAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABAlJREFUWIXNmL9v20YUxx9/iHRE1UEESJYABnAtoEsGAZkKa449V1kr7k7G/FiSf6Atsta7lKFL1VlJhy72EiCIWgToEAYGwlZSFbi1QDE+kkd2OId3pESJpGzY300C+fi59+69e+843/fhssVfNgDAFYEQM7yjW97hMe5PMACYrq9bHgDU8nxB5ABguyjU14VaPsXyuOR7Yoj8jmH3J3iElr+yIXP1daGlShWZOx8IE8MvA6dt2Ilgw9JU6ZtqriCsBtEbu/tHaIozAJxJEWBvU94txYZ+CUTHmOMARYD6urBdFCsytyHzxOFD5I+QN0T+4bHbn+BZaE2VWmouHYSJYf8IvRi77J9lidNuSgvWFKg3dtsf7H/skPGdkri3Kc+GJhbiBz1EoAigqVKzOn8pcWobdnfgsF7ZKYmPanIiiLZhdwyHJXh261qqrAukW96Dt59Yjpaa01SJfWaO3d7YZQm28vzz20o2AgCo5fnnt5Ut5vWO4fTCUY6aJlsh+El8sDjBlqogwLNb1xTGyP4RMhnfRCG6Aztw3bkQzOWYYugOaNKFIIbIZwOhqVLmKMyqlufZfd0xnOHnyhv6BlsSyhKXNheWSlOlskSrePC5EMTvExoo7WZoAy/QX6f+d+8Q68JFHIzZ4HMUQre84GRSBEhSkQDg1X/4/h/Wrx/dNxN3+dMAuyUx2BkjdHYCU4iDY2qlvp5oN/70t/Pkz9NTL8mzVKzx/gkOQfSZWGwXl7vB8eG3j+4XIsxWwMVijR/860JcU5OkCchx8PSrNYED5KXrUmeNU0+wrcqGnCgz1TWuKnNpO2XSgBFN3XiIJJ7ILLb2RDfmJYpCsGVkmKCLzCyyeiJysFGIyhqFGKGUaZdGpktXWBAB4sJxoZ6YNU4hGjdouh4eJyp/2cQaJx+lEPXrTCGbrNBcLxNrnHyUrr6W58sSR1rTKYbe2E14fHyZ519+rSQk6I3doF8pS1wtsjEh7IxOplFnqVizjc/1OwTB9p8j5GcbuRaobdhsSQz6lRBERebY+aQ7cNicXlG65XUHtOdoqbmgLkdTtFmV2E7wwdtP5nnsURMD2/grAjSr1OtRiIIAe5v0aJ5ieLgyh4nhYXj0iMxhc4rVbklkg6Jb3revp5njMvt6S81F8i52DPxeRy/DY+DdauxEG6eO4fzMzBAAcKckPk44BgKAieHHoxAHAGzInKZKOwnqx4uxG8kFQnAv1UBMFBlKicjVQKMoVmReEc/6A93ypi4MkXcQczUwO4ImhYCrcElCZGLoDua4JIlaaq5ZlVa9Lgo0RH7bsPsnOHL1MVdliWsUxWY1d24XZxHpltc/waRbN114b3kAsJXnSYfSuCHWr1/YFeLF6Uo0uv8DlF71sqncdxwAAAAASUVORK5CYII=) **Login to web site**

The user connects to the website, hosted in the customer's infrastructure.

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAArCAIAAACM4/3uAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABKlJREFUWIXNWM1v22Qc/vkjdhNH2RaRL+SWkuwyJhapHJAaiVszLhOQaTdqcULqNE5by2F/wNBgFw5U2jHZYRfCuUPs1h6RgrQNaTLrVI8kpAo0cpz447U5uMSvnTh22kzjUS6J8r7v8/4+n99LWJYFbxrkmyYAAECfYI2omHtd1OghAJANS1RMACjEyDhNAMBqkiomqEJshusR4d3RUq2apDV6qK0GL8mwRDFBrfNMliXmQ0JG8FNTr0paKLJuCDzzWS4Sp05HYqdjbO+rfXQCAsfgKNhYZi+nfF0fQKImTTAAR0ExQa0m6SxLZFjSNnhLtdqq2VKtva7R6KFx0gLPrPOR2UjICLb31UcdA/8xzRDCIjPlTiPsdIzqgfaX5tq8nKI3ltlx1/iS+FZ0MeAoEHimkpt8FT9UJa3e1HGrlFP0ZoENRaIqaTVJxxncuxidKetGEBXz5pMBzmOdjwg8g/9nwr47HQNnkI+RD1a4kzEAgEKMfLDC5bHlNUnfcXvZu7UdCqOvtg2mJ1gg4hTcuxjlsE2291UZs42XRL2pjUw3FwYTefQR1JtO0rlItFQLd4TAMyf2wjgKMRKP65qkt/6rvK4z8JKQZohZcyEQAs+kGaeKj45zZfxvPcdRwqIrgCfCBNjtokYP6aa1FCU/Tke4IN8Ji8x3ouo5ziEhKuaoM3EUBFak533zzvPhwdDJ8Iev9LvvLbw71YOXU/SoCbRVS1TMQox0Fux2nbQpJoKjsatbB0Nr7S36mwsL2+9HP0pS/xjW/ZfBTQ7fvHGEAI+JBuaL1WRwYf7wLHX/UnTrPPvBGeo8R36VZwHgmRzc6PDNd/82wE9ZhREBAIBbfogAADgqeOH45s4uuFTJsDNn5i+HBgCsnA32oy3AbPQNfxIhLTHCC8V8+EqjCbiWC84pvPbY0nAOtaitWrd/Hw5NuL7MLkWD2Y+HjUMC7zF4kE5HV7e2ng06mnXt7ciVTCjZLGIt9VKCdJGIYzvIribniyMDtp4O/xxan2QjXy4FO8JGa0wnOyTwYBSVYEv0EXz9dPByYF7J0DeWwzIAgLZqeg51ro8H4zjZcXz/QrXD6vGh8fjQMd0Xi8yn2WlNR+w7JOxDnduXsBqy1zUCq05PPybaR66Pbk5bJSNXwNmHOgcXYmSaIWxpavd7jwjz4M6FhQCak4DrlXyMtNPVlaJXsd5db+ohSvBskBHUm45eGfVIF4ky1os94mcu8Mi2cjoygUScgorbGHbozQWiYuJmqGCzobdiVnIMboybTwZzcYqMABf+HAUVrMB7ScQp2Cw4EddHcOvUPGQEt9yjx2ZhAdfPE3pHKUnhQ6OomJ//2j+xX8aXb7zDlJKuZus7Bt4V1Z/dY+DVnO9E64eapP+IBSMArKXorZBjIADICH7Yd/EAgAxLCDxTDjEQP+oYVUnzPKespejrMw3ENjxDqQ37aaCUpLMsydHH+kBUzL4BLdXc9XkaGB9Bw5KA/8MjiQ0ZQb05wSRhsM5HKjnmtM9FI7RUqyppjSPkefqYiDRDlJJ0JReZ28OZB6JiNo6QrdZlA/5QTADIx0hbFpXO0cUzr+0J8fXhX0/8TX/ySzAPAAAAAElFTkSuQmCC) **Downloading the dialog box**

The HTML code of the page that includes the dialog box tells the browser to download the javascript code and images from the dialog box.

These are hosted by the **client's** infrastructure.

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAArCAIAAACM4/3uAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABNRJREFUWIXNWE1oI2UYfuYn3zRJN7sNJk1kKt0GVrDQSGFBGjxui7fdgjcTD16seOsKngSPor14sCoepFkQL/GcdVlQaL0JKW6FxSxxDZt0082y2cmkk8yPhwkzXyaTziTpos8t4Zv3e7735/ne92MMw8B/DX6s1WVZP2hqpZYGQFKNsqwDSIXYWZ4BsBbl0hEuFWLHJcH48URdMfLVbqmlHSvei+cFJh3hsiJJCMz5kJA0/FTr7VW7Ps3RyInkRjIwy01HothQdytKW5uAQB9hDluLwkbMI+gjSeSrLg4Ic0hHuLUonxCYeYE1HV5XjGNFryvGQVMttbRh0jmRZMXAeCQkDbsV5XZDpf+MEya3QDzPBKDYUPf+6T7uDphdj/Fbi8Ko0LiQ+Lw8wCDMISeSzeRZRxnGXrVbqPVor6zH+I9Sgi8Se9VuvtqjGewsByeoOgBlWd++16F5ZMVATiTDKwesFxsqzWApxN5aDU/GAEAqxN5aDS9Rn+erveJglJ0kzFSwfpo+8FNgZ2CWw85yMEwZ2a0o0lDm2iQKta7lunNh4MqjraFQcxZdn0RdMehA5EQycRSGkQqxdF7nq736oPL2d6IlIU6YcWvBEzmRxImt4g4F6tf9YcsOVG7BJYEdkDT88kS9L2k68LLAXovxLxGPmyK3QL4oK8Pb9UmUZd26mcIcPBXpzon65QOlo9v/5KvdT67MvDF3VhJtxHjrEjhWjLKsWxFnAew37bJJR7yzUWAZnsW7Itl5LfjNSvB6ItAz8PXfiueHtPHSM9sZLIAS5Zy1qLcwvxnlflgNvyMGViLsUoh97xUCoO7jlqeN7z+1T+4sAZ9NgEB99+sTFcBi0LuaRhnnAdCtyrzgqzJ14LO/FM1A7VS/39YjPD687H4v0DAbMBNtSjmdJHx6wjBw96RvhgVSYS7oQ9lo7TFbQ5vEBOAYfLsS1IFm17h7ot45UT/+8/T710PhiUSWBxAnjHX91xXDpzMuh1gAqRCuXuIenepHkn70XLt66SwW9Onpi40FkJixdz1WdIyPCzwDQNY8CkRS7QWzVAycaein0n581PvjuW6tK7W0359pAK543XijjPMAMnP8Yasv5gdN1VMxf3uqfvewG2SRmGE7mmGavp4IJL3ieECpYmbO3oUHkL5ICVnLu7l+O0kI26vI+sOOThgsX2DfigfWfbSftHF6Ux5AKsRaudnWUGx4OCMT5TLRscug2FCtfiVOmJQjMR288hONOp6gzdLb2STo/vNYMSYbuc7AXrVLS6Kj3e2TSAjMjYTdyBRqPbqmp0RZ1gs1u23LigGHFNmByS0QuhPcvtcZ7kgngKSBbvzDHDaTzqbJJjHLYWvRvoTaGm5OzUPScHNw9HCdwwbEaiPG00NjWdbfP5Qnjsvw51kx4Fp3LmPg9lHnsDWw8dYi2UyM1/oW6r3dykB2r81xn74647rYfSD+qqL8PDgqzQtMTiR+FOl2Q3XUAoBrMf6DsQZiE46h1IT5NJCJ8gmBjQuM9TTwWDHqir4/4mlg1AjqTQL/h0cSE5KGQs3FJX6QFQObSTLtc5GFumIUar39pup4+nBFnDCZKL+ZdCrStCQslGW99Ewzu3VJxQNZB7AUYs0OJTPHpy++sCfEF41zG72nwb8raEohq9DGJAAAAABJRU5ErkJggg==) **Querying the bot**

When the user asks the bot a question, the request is sent to the dydu web server.

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAsCAIAAABzOtYvAAAAA3NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3JlZW5zaG907wO/PgAABItJREFUWIXNWD1sG2UYfu7Hd40duY2FHRtd1cgWLKWy1KmKuyGSmbBi72HpkMLEgsREFTGVSEgsdpG6YAYW0nZhSCSWIlfKQrmSwqk+x2mKje32O98Pw7l339mXu7OTKjybT+f3fb7373veYyzLwpmCPVv3/wsG/FRvywNz98hodA0AKjFbxAJQiLPzPANgOcUVk1whPt2pmCh1oBKrpmiNrmG7DMaiyBSTXFkSsiJzCgx6Bn5sDquKFsXWGCqS8GEuNs+dgMF2W9/aJ31jBu8jJDisL4mr6aBcH8ugpvgcPcGhmOSWU3xWZBZF1o6zSqwWMVVi7R7pja4xybgiCWUpNgWDnoGtfXKvrdMPMwJTuSgEn8bGdluv/q0daB6zK2l+fUn0zYgPg1uyx32CQ0US1nLHHsIXVUWrN4d0PFbS/KcFMZxBVdFqypB2v3l5btoGsyEPzI29lzSJshSrSMLYax7T222ddp+Ps3euJmZzD6AQZ+9cTeSpv9eU4bY3uR4Gdvqdn/bpQ3spGPMcNi/PJSgjW/uk5y1Vl0G9qTkROxX3viT6BupNT4uNGKjEouNfkYSZgz+JQpylC7mmDFVqto7c0K2fEZhpKz8UFUnICO6Qpt2NGDzqusmpXBwv12B895f25WPyR98MIUGZpd2xAOSB6Vw5CQ5Rxo6DB4f63WfDX57rh1rIpbWa5p1qaBFLHpgug50jt0OKySnK77lm3f6ThL/nZ7zRMVwGDSomy6kpAvD1E9IzcGkuas3Sxnde6C4DGhEvdQA/H+i//mNcT3FXklEZ+BpnAdC6Y1GMZO5As7aekgs8cyMv6pGlri2lbPRfZ36cQcQYbMpkYOBGXrzAR40ZAHrGeCpxWvzU0h92jPff4q+nTmFq8gAyAuNc5yqxgsPQ0fHtUwLgaGh98fsrAI/7JoC7z7QHh+zn7/jcvw6ccwNwbiweQPacy6BFzKwYdLLO0HplAsBvHc8Ns/evycJEIIMeVTLzr9tivPdUYhUDbABZkbl9ZY5+8r2i7b4w1i8J74XNEtVPavMASgv8o+5oUO8e6cEzUWDxbsJTPckYA+Dtc+zY80nsUqOvtDDywgIonqdGVfcE0jgMtHHHKQugEGedi6tvYFLGBGMjL96/lri2EJKC7bbu6I+MwDidyY4xAlCbaT8JBW22RI3nEQNaQLaINduSFICqotFzj9YfIwZZkaGXinpzSPfuCSEPzHrTFWBlKUaPHLd613ICreY29l72TqMoewZozZ7gsJbzKCCXwTyH9SV3nvQN3DwxiZ6Bm96VYXJz8nTwapqncyEPzI8f9mdOx+Tfy1Jsctj4bG1fyeS+d2v7KBe0evqipgx/oOQ/gA/S/GdRtjYAPQPf7HtIAFgUmYokrESQkPfa+ljl2+4/ib652hhbIG3Y23spxWdFNsGP7nt5YPZ1qMTcOWZ7910XwxngzL9g2OgZqDd9ghEFZSm2lhNO9BXHgUqsqqI1OsZB2FIAICMwpRS/loudzpesMcgDs9ExbKHd0/FkYALIx1lbbpQW+OL5N/M1743iP6uYMfJVPePxAAAAAElFTkSuQmCC) **Transmission of the request to the dialog engine**

The web server acts as a reverse proxy and sends the request to the dialog engine that deals with the question and provides the matching answer.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-en.dydu.ai/other/technical-aspects/hosting.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
