# General Bots - Run and Talk to the Bot

### The bot development stack

![General Bot Logo](https://raw.githubusercontent.com/pragmatismo-io/BotServer/master/docs/images/general-bots-stack.png)


### Diagram Description

1. gbapp and gblib extensions which are folder extensions for the GeneralBots package type.
gbapp and gblib are responsible for GeneralBots services in a Back-end development environment.
Four components builds up a General Bot App: dialogs, models, services and tests; 

2. The .gbui extension is assigned to the GeneralBots front-end development environment. 
Angular, Riot, React and HTML are responsible for the dynamic functioning of GeneralBots services;

3. The .gtheme extension is responsible for the GeneralBots designer using css and PS technologies.
A theme is composed of some CSS files and images;

4. The .gbDialog is extension responsible for GeneralBots communication with the end user. Dialogues are bot services to users.
.gbkb is package for execution of various types of media;

5. The .gbot extension refers to the generalBots service product;

6. The .gbai is architecture construction of the GeneralBots application.

### The Bot Factory

![General Bots Block Architecture](https://raw.githubusercontent.com/pragmatismo-io/BotServer/master/docs/images/general-bots-block-architecture.png)

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.

## How To

### Run the server locally

1. Install [Node.js](https://www.npmjs.com/get-npm) the current generation General Bot code execution platform;
2. Open a **Terminal** on Linux and Mac or a **Command Prompt** and PowerShell window on Windows;
3. Type `npm install -g botserver` and press *ENTER*;
4. Type `gbot` to run the server core.

## Instalation by PowerShell or Command Prompt

![print instalation npm](https://user-images.githubusercontent.com/65977273/94572520-81e2f380-0247-11eb-9d69-ff70ad26b027.png)



Notes:

* [*nodejs.install* Chocolatey Package](https://chocolatey.org/packages/nodejs.install) is also available. (Chocolatey is windows package manager).
* The zip source code of General Bot is also available for [Download](https://codeload.github.com/pragmatismo-io/BotServer/zip/master);

### Running unit tests

1. Enter the BotServer root folder.
2. Run tests by `npm test`.



### Just copy the source code to your machine

1. [Download](https://codeload.github.com/pragmatismo-io/BotServer/zip/master) the Zip file.


## Omnichannel

Omnichannel allow the conversation to follow a sequence, regardless of whether the customer uses the same channel or not, because all calls record the consumer's history and profile.

## Spell Checker

Spell checker is when GeneralBots spell-checks text to find and correct any typographical errors.

## Speech to Text

User speech recognition directly with generalBots.

## Branding

Branding is linked to a company's brand management, everything that includes, as its name, ideas among all the corporate ties that have its identification.

## NLP

Means natural language processing.
Artificial intelligence creates a subfield for better interactions between humans and computers. GeneralBots understands data input, processing and output through natural language.

## Bot Factory
