An open API service indexing awesome lists of open source software.

https://github.com/nandkumar1000/flight-ticket-booking-bot

This project is a smart flight booking chatbot built using Microsoft Bot Framework v4 with Azure CLU integration. It allows users to book flights through natural language conversations by understanding origin, destination, and travel date inputs. Designed for scalability and clarity, the bot showcases best practices in conversational AI development
https://github.com/nandkumar1000/flight-ticket-booking-bot

cors dotenv javascript microsoft-azure nodejs npm-package

Last synced: about 2 months ago
JSON representation

This project is a smart flight booking chatbot built using Microsoft Bot Framework v4 with Azure CLU integration. It allows users to book flights through natural language conversations by understanding origin, destination, and travel date inputs. Designed for scalability and clarity, the bot showcases best practices in conversational AI development

Awesome Lists containing this project

README

          

## โœˆ๏ธ Flight Booking Bot with CLU (JavaScript)

A conversational bot built using **Microsoft Bot Framework v4** and integrated with **Conversational Language Understanding (CLU)** to demonstrate intelligent flight booking interactions using natural language.

---

### ๐Ÿ“ฆ Project Name

`Flight Booking Bot`

---

### ๐Ÿง  Features

* โœจ Natural language understanding with **Azure CLU**
* ๐Ÿงณ Book flights by extracting origin, destination, and date
* ๐Ÿค– Built on **Bot Framework SDK v4**
* ๐Ÿ”„ Reusable dialogs for booking, date resolution, and help
* ๐Ÿ› ๏ธ Structured code for scalability and modularity

---

### ๐Ÿš€ Getting Started

#### 1. Clone the Repository

```bash
git clone https://github.com/nandkumar1000/Flight-Ticket-Booking-Bot.git
cd Flight-Ticket-Booking-Bot
```

#### 2. Install Dependencies

```bash
npm install
```

#### 3. Configure Environment

Create a `.env` file in the root directory and add the following:

```env
CluAPIKey=your_clu_api_key
CluAPIHostName=your_clu_endpoint_url
```

> You can create a CLU resource via [Azure Language Studio](https://language.azure.com/).

#### 4. Run the Bot

```bash
npm start
```

The bot will be hosted at:

```
http://localhost:3978/api/messages
```

---

### ๐Ÿ’ฌ Testing the Bot

Use the [Bot Framework Emulator](https://aka.ms/botframework-emulator):

1. Open Emulator
2. Click **Open Bot**
3. Enter:

```
http://localhost:3978/api/messages
```
4. Leave App ID and Password empty (unless configured)

---

### ๐Ÿงฉ Technologies Used

* **Node.js**
* **Microsoft Bot Framework v4**
* **Azure CLU (Conversational Language Understanding)**
* **Restify**
* **dotenv**
* **ESLint**, **Mocha**, **Nodemon**

---

### ๐Ÿงช Scripts

| Command | Description |
| --------------- | ----------------------------- |
| `npm start` | Start the bot |
| `npm run watch` | Start with nodemon (dev mode) |
| `npm run lint` | Run ESLint checks |

---

### ๐Ÿ“ Project Structure (Simplified)

```
.
โ”œโ”€โ”€ bots/
โ”œโ”€โ”€ clu/
โ”œโ”€โ”€ cognitiveModels/
โ”œโ”€โ”€ deploymentTemplates/
โ”œโ”€โ”€ dialogs/
โ”œโ”€โ”€ recognizer/
โ”œโ”€โ”€ resources/
โ”œโ”€โ”€ index.js
โ”œโ”€โ”€ .env
โ””โ”€โ”€ package.json
```

---

### ๐Ÿ“„ License

This project is licensed under the [MIT License](LICENSE).

---

### ๐Ÿ™Œ Acknowledgements

Built using the [Microsoft Bot Builder Yeoman Generator v4.17.0](https://github.com/microsoft/botframework-sdk), with integration for Azure's **Conversational Language Understanding (CLU)**.