357 lines
No EOL
20 KiB
HTML
357 lines
No EOL
20 KiB
HTML
<!doctype html>
|
|
<html class="default no-js">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<title>botserver</title>
|
|
<meta name="description" content="">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<link rel="stylesheet" href="assets/css/main.css">
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<div class="tsd-page-toolbar">
|
|
<div class="container">
|
|
<div class="table-wrap">
|
|
<div class="table-cell" id="tsd-search" data-index="assets/js/search.js" data-base=".">
|
|
<div class="field">
|
|
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
|
|
<input id="tsd-search-field" type="text" />
|
|
</div>
|
|
<ul class="results">
|
|
<li class="state loading">Preparing search index...</li>
|
|
<li class="state failure">The search index is not available</li>
|
|
</ul>
|
|
<a href="index.html" class="title">botserver</a>
|
|
</div>
|
|
<div class="table-cell" id="tsd-widgets">
|
|
<div id="tsd-filter">
|
|
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
|
|
<div class="tsd-filter-group">
|
|
<div class="tsd-select" id="tsd-filter-visibility">
|
|
<span class="tsd-select-label">All</span>
|
|
<ul class="tsd-select-list">
|
|
<li data-value="public">Public</li>
|
|
<li data-value="protected">Public/Protected</li>
|
|
<li data-value="private" class="selected">All</li>
|
|
</ul>
|
|
</div>
|
|
<input type="checkbox" id="tsd-filter-inherited" checked />
|
|
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
|
|
<input type="checkbox" id="tsd-filter-externals" checked />
|
|
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
|
|
<input type="checkbox" id="tsd-filter-only-exported" />
|
|
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
|
|
</div>
|
|
</div>
|
|
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="tsd-page-title">
|
|
<div class="container">
|
|
<ul class="tsd-breadcrumb">
|
|
<li>
|
|
<a href="globals.html">Globals</a>
|
|
</li>
|
|
</ul>
|
|
<h1> botserver</h1>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
<div class="container container-main">
|
|
<div class="row">
|
|
<div class="col-8 col-content">
|
|
<div class="tsd-panel tsd-typography">
|
|
<h1 id="general-bots-community-edition-preview">General Bots Community Edition Preview</h1>
|
|
<p><img src="https://github.com/pragmatismo-io/BotServer/blob/master/logo.png" alt="General Bots Logo"></p>
|
|
<h2 id="welcome-to-general-bots-">Welcome to General Bots!</h2>
|
|
<p>General Bots is a package based chat bot server focused in convention
|
|
over configuration and code-less approaches, which brings software packages<br>and application server concepts to help parallel bot development.</p>
|
|
<p>Also, everyone can create bots copying and pasting some files and using their
|
|
favorite tools like Excel (or any .tsv editor) or Photoshop (or any .png
|
|
editor).</p>
|
|
<h3 id="what-is-bot-server-">What is Bot Server?</h3>
|
|
<p>Bot Server accelerates the process of developing a bot. It provisions all code
|
|
base, resources and deployment to the cloud, and gives you templates you can
|
|
choose from when you create a bot. Uses a database and tables as backend and
|
|
allow you to further modify your bot package directly downloading it in a ZIP
|
|
file and editing it and uploading it back to the server (deploying process).
|
|
Besides providing a framework to develop bot packages in a more advanced
|
|
editor like Visual Studio Code, Atom or Brackets.</p>
|
|
<h3 id="the-same-build-process-for-everyone">The same build process for everyone</h3>
|
|
<p>GeneralBots aims to delivery bots in azure in a very easy and fast fashion. Use
|
|
Office tools like Word or Excel to edit your Bot - using code (JavaScript or TypeScript) just to empower custom requirements.</p>
|
|
<h2 id="how-to">How To</h2>
|
|
<h3 id="updating-the-bot-knoledge-base-gbkb-folder-">Updating the Bot Knoledge Base (.gbkb folder)</h3>
|
|
<p>The subjects.json file contains all information related to the subject tree and can be used to build the menu carrousel as well give a set of words to be used as subject catcher in the conversation. A hierarchy can be specified.</p>
|
|
<h3 id="creating-a-new-theme-folder-gbtheme-folder-">Creating a new Theme folder (.gbtheme folder)</h3>
|
|
<p>A theme is composed of some CSS files and images. That set of files can change
|
|
everything in the General Bots UI. Use them extensively before going to change
|
|
the UI application itself (HTML & JS).</p>
|
|
<h2 id="package-types">Package Types</h2>
|
|
<h3 id="-gbai">.gbai</h3>
|
|
<p>Embraces all packages types (content, logic & conversation) into a pluggable bot
|
|
directory.</p>
|
|
<h3 id="-gbapp">.gbapp</h3>
|
|
<p>The artificial intelligence extensions in form of pluggable apps. Dialogs,
|
|
Services and all model related to data. A set of interactions, use cases,
|
|
integrations in form of conversationals dialogs.
|
|
The .gbapp adds the General Bots base library (botlib) for building Node.js TypeScript Apps packages.</p>
|
|
<p>Four components builds up a General Bots App:</p>
|
|
<ul>
|
|
<li>dialogs</li>
|
|
<li>models</li>
|
|
<li>services</li>
|
|
<li>tests</li>
|
|
</ul>
|
|
<h4 id="dialogs">Dialogs</h4>
|
|
<p>All code contained in a dialog builds the flow to custom conversations in
|
|
built-in and additional packages .</p>
|
|
<h4 id="models">Models</h4>
|
|
<p>Models builds the foundation of data relationships in form of entities.</p>
|
|
<h4 id="services">Services</h4>
|
|
<p>Services are a façade for bot back-end logic and other custom processing.</p>
|
|
<h4 id="tests">Tests</h4>
|
|
<p>Tests try to automate code execution validation before crashing in production.</p>
|
|
<h3 id="-gbot">.gbot</h3>
|
|
<p>An expression of an artificial inteligence entity. A .gbot file defines
|
|
all bots dependencies related to services and other resources.</p>
|
|
<h3 id="-gbtheme">.gbtheme</h3>
|
|
<p>A theme of a bot at a given time. CSS files & images that can compose all UI
|
|
presentation and using it a branding can be done.</p>
|
|
<h3 id="-gbkb">.gbkb</h3>
|
|
<p>A set of subjects that bot knows.</p>
|
|
<h3 id="-gblib">.gblib</h3>
|
|
<p>Shared code that can be used across bot apps.</p>
|
|
<h2 id="reference">Reference</h2>
|
|
<h3 id="generalbots-admin-commands">GeneralBots admin commands</h3>
|
|
<p>General Bots can be controlled by the same chat window people talk to, so
|
|
here is a list of admin commands related to deploying .gb* files.</p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Command</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>deployPackage</td>
|
|
<td>Deploy a KB package. Usage <strong>deployPackage</strong> [package-name]. Then, you need to run rebuildIndex.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>undeployPackage</td>
|
|
<td>Undeploy a KB. Usage <strong>undeployPackage</strong> [package-name].</td>
|
|
</tr>
|
|
<tr>
|
|
<td>redeployPackage</td>
|
|
<td>Undeploy and then deploys the KB. Usage <strong>redeployPackage</strong> [package-name]. Then, you need to run rebuildIndex.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>rebuildIndex</td>
|
|
<td>Rebuild Azure Search indexes, must be run after <strong>deployPackage</strong> or <strong>redeployPackage</strong>.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h3 id="credits-inspiration">Credits & Inspiration</h3>
|
|
<ul>
|
|
<li>Rodrigo Rodriguez (<a href="mailto:me@rodrigorodriguez.com">me@rodrigorodriguez.com</a>) - Coding, Docs & Architecture.</li>
|
|
<li>David Lerner (<a href="mailto:david.lerner@hotmail.com">david.lerner@hotmail.com</a>) - UI, UX & Theming</li>
|
|
<li>Eduardo Romeiro (<a href="mailto:eromeirosp@outlook.com">eromeirosp@outlook.com</a>) - Content & UX</li>
|
|
</ul>
|
|
<p>Powered by Microsoft <a href="https://dev.botframework.com/">BOT Framework</a> and <a href="http://www.azure.com">Azure</a>.</p>
|
|
<p>General Bots Code Name is <a href="https://en.wikipedia.org/wiki/Guaribas">Guaribas</a>, the name of a city in Brasil, state of Piaui.
|
|
<a href="http://www.robertounger.com/en/">Roberto Mangabeira Unger</a>: "No one should have to do work that can be done by a machine".</p>
|
|
<h2 id="license-warranty">License & Warranty</h2>
|
|
<p> General Bots Copyright (c) Pragmatismo.io. All rights reserved.<br> Licensed under the AGPL-3.0. </p>
|
|
<p> According to our dual licensing model, this program can be used either
|
|
under the terms of the GNU Affero General Public License, version 3,<br> or under a proprietary license. </p>
|
|
<p> The texts of the GNU Affero General Public License with an additional
|
|
permission and of our proprietary license can be found at and<br> in the LICENSE file you have received along with this program. </p>
|
|
<p> This program is distributed in the hope that it will be useful,<br> but WITHOUT ANY WARRANTY; without even the implied warranty of<br> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the<br> GNU Affero General Public License for more details. </p>
|
|
<p> "General Bots" is a registered trademark of Pragmatismo.io.<br> The licensing of the program under the AGPLv3 does not imply a<br> trademark license. Therefore any rights, title and interest in<br> our trademarks remain entirely with us. </p>
|
|
</div>
|
|
</div>
|
|
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
|
|
<nav class="tsd-navigation primary">
|
|
<ul>
|
|
<li class="globals ">
|
|
<a href="globals.html"><em>Globals</em></a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_admin_gbapp_dialogs_admindialog_.html">"deploy/admin.gbapp/dialogs/<wbr>Admin<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_admin_gbapp_dialogs_uploadpackagedialog_.html">"deploy/admin.gbapp/dialogs/<wbr>Upload<wbr>Package<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_admin_gbapp_index_.html">"deploy/admin.gbapp/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_analytics_gblib_index_.html">"deploy/analytics.gblib/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_analytics_gblib_models_index_.html">"deploy/analytics.gblib/models/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_analytics_gblib_services_analyticsservice_.html">"deploy/analytics.gblib/services/<wbr>Analytics<wbr>Service"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_dialogs_welcomedialog_.html">"deploy/core.gbapp/dialogs/<wbr>Welcome<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_dialogs_whoamidialog_.html">"deploy/core.gbapp/dialogs/<wbr>Who<wbr>AmIDialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_index_.html">"deploy/core.gbapp/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_models_gbmodel_.html">"deploy/core.gbapp/models/GBModel"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_services_gbconfigservice_.html">"deploy/core.gbapp/services/GBConfig<wbr>Service"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_services_gbconversationalservice_.html">"deploy/core.gbapp/services/GBConversational<wbr>Service"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_services_gbcoreservice_.html">"deploy/core.gbapp/services/GBCore<wbr>Service"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_services_gbdeployer_.html">"deploy/core.gbapp/services/GBDeployer"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_services_gbimporter_.html">"deploy/core.gbapp/services/GBImporter"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_services_gbminservice_.html">"deploy/core.gbapp/services/GBMin<wbr>Service"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_core_gbapp_test_example_test_.html">"deploy/core.gbapp/test/example.test"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_customer_satisfaction_gbapp_dialogs_feedbackdialog_.html">"deploy/customer-<wbr>satisfaction.gbapp/dialogs/<wbr>Feedback<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_customer_satisfaction_gbapp_dialogs_qualitydialog_.html">"deploy/customer-<wbr>satisfaction.gbapp/dialogs/<wbr>Quality<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_customer_satisfaction_gbapp_index_.html">"deploy/customer-<wbr>satisfaction.gbapp/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_customer_satisfaction_gbapp_models_index_.html">"deploy/customer-<wbr>satisfaction.gbapp/models/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_customer_satisfaction_gbapp_services_csservice_.html">"deploy/customer-<wbr>satisfaction.gbapp/services/CSService"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_kb_gbapp_dialogs_askdialog_.html">"deploy/kb.gbapp/dialogs/<wbr>Ask<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_kb_gbapp_dialogs_faqdialog_.html">"deploy/kb.gbapp/dialogs/<wbr>Faq<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_kb_gbapp_dialogs_menudialog_.html">"deploy/kb.gbapp/dialogs/<wbr>Menu<wbr>Dialog"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_kb_gbapp_index_.html">"deploy/kb.gbapp/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_kb_gbapp_models_index_.html">"deploy/kb.gbapp/models/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_kb_gbapp_services_kbservice_.html">"deploy/kb.gbapp/services/KBService"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_security_gblib_index_.html">"deploy/security.gblib/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_security_gblib_models_index_.html">"deploy/security.gblib/models/index"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_deploy_security_gblib_services_secservice_.html">"deploy/security.gblib/services/<wbr>Sec<wbr>Service"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_src_app_.html">"src/app"</a>
|
|
</li>
|
|
<li class=" tsd-kind-external-module">
|
|
<a href="modules/_src_logger_.html">"src/logger"</a>
|
|
</li>
|
|
</ul>
|
|
</nav>
|
|
<nav class="tsd-navigation secondary menu-sticky">
|
|
<ul class="before-current">
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<footer class="with-border-bottom">
|
|
<div class="container">
|
|
<h2>Legend</h2>
|
|
<div class="tsd-legend-group">
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
|
|
<li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
|
|
<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
|
|
<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
|
|
<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
|
|
<li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
|
|
<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
|
|
<li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
|
|
<li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
|
|
<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
|
|
<li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
|
|
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
|
|
<li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
|
|
<li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
|
|
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
|
|
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
|
|
<li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
|
|
<li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
|
|
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
|
|
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
|
|
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
|
|
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
|
|
<li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
<div class="container tsd-generator">
|
|
<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
|
|
</div>
|
|
<div class="overlay"></div>
|
|
<script src="assets/js/main.js"></script>
|
|
<script>if (location.protocol == 'file:') document.write('<script src="assets/js/search.js"><' + '/script>');</script>
|
|
</body>
|
|
</html> |