https://github.com/codeforequity-at/botium-connector-liveperson
Botium Connector for Liveperson
https://github.com/codeforequity-at/botium-connector-liveperson
Last synced: about 1 year ago
JSON representation
Botium Connector for Liveperson
- Host: GitHub
- URL: https://github.com/codeforequity-at/botium-connector-liveperson
- Owner: codeforequity-at
- License: mit
- Created: 2021-09-20T12:29:55.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-12-11T19:14:57.000Z (over 1 year ago)
- Last Synced: 2025-02-03T06:35:27.599Z (over 1 year ago)
- Language: JavaScript
- Size: 37.1 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Botium Connector for Live Person
[](https://nodei.co/npm/botium-connector-liveperson/)
[](https://app.codeship.com/projects/408148)
[](https://badge.fury.io/js/botium-connector-liveperson)
[]()
This is a [Botium](https://github.com/codeforequity-at/botium-core) connector for testing your [Live Person chatbot](https://www.liveperson.com/).
__Did you read the [Botium in a Nutshell](https://medium.com/@floriantreml/botium-in-a-nutshell-part-1-overview-f8d0ceaf8fb4) articles? Be warned, without prior knowledge of Botium you won't be able to properly use this library!__
## How it works
Botium connects to the API of your Live person chatbot.
It can be used as any other Botium connector with all Botium Stack components:
* [Botium CLI](https://github.com/codeforequity-at/botium-cli/)
* [Botium Bindings](https://github.com/codeforequity-at/botium-bindings/)
* [Botium Box](https://www.botium.at)
## Requirements
* **Node.js and NPM**
* a **Live Person bot**
* a **project directory** on your workstation to hold test cases and Botium configuration
## Install Botium and Live Person Connector
When using __Botium CLI__:
```
> npm install -g botium-cli
> npm install -g botium-connector-liveperson
> botium-cli init
> botium-cli run
```
When using __Botium Bindings__:
```
> npm install -g botium-bindings
> npm install -g botium-connector-liveperson
> botium-bindings init mocha
> npm install && npm run mocha
```
When using __Botium Box__:
_Already integrated into Botium Box, no setup required_
## Connecting Live Person chatbot to Botium
First of all you have to login and install a new application on Live Person [Connector App Hub](https://connector-api.dev.liveperson.net/).
During the installation please set up the webhook endpoint field according to your server endpoint (from localhost you can use [ngrok](https://ngrok.com/), see later)
After the installation you will see a new row in the application installations list.
Create a `botium.json` file and copy the following values in:
You have to copy the id value from the `Application Name & id` column into the `LIVEPERSON_CLIENT_ID`.
You have to copy the `secret` column value into the
```
{
"botium": {
"Capabilities": {
"PROJECTNAME": "",
"CONTAINERMODE": "liveperson",
"LIVEPERSON_CLIENT_ID": "018908a5-aa8f-4f2a-bae4-1efe1f092e27",
"LIVEPERSON_CLIENT_SECRET": "s8r6ttaar0m5ev2qaqhkbs9m5",
"LIVEPERSON_ACCOUNT_ID": "72165163"
}
}
}
```
To check the configuration, run the emulator (Botium CLI required) to bring up a chat interface in your terminal window:
```
> botium-cli emulator
```
Botium setup is ready, you can begin to write your [BotiumScript](https://botium.atlassian.net/wiki/spaces/BOTIUM/pages/491664/Botium+Scripting+-+BotiumScript) files.
## How to start samples
There is a small demo in [samples](./samples) with Botium Bindings.
By changing the corresponding capabilities you can use it with the default Live Person chatbot.
### Live Person chatbot sample
* Install the dependencies and botium-core as peerDependency:
```
> npm install && npm install --no-save botium-core
```
* Navigate into the _samples/real_ directory
* Install the dependencies
```
> cd ./samples/real
> npm install
```
* Adapt botium.json in the sample directory:
* Change `LIVEPERSON_CLIENT_ID` with your installed application id
* Change `LIVEPERSON_CLIENT_SECRET` with your installed application secret
* Change `LIVEPERSON_ACCOUNT_ID` with your accound id
* Start `inbound-proxy` (it will listen on `http://127.0.0.1:45100/`):
```
> npm run inbound
```
* In your installed application you need to set `Webhook endpoint` according to the previous step set up inbound-proxy url.
(To make this localhost url public you can use e.g. [ngrok](https://ngrok.com/))
* Finally run the test
```
> npm test
```
## Supported Capabilities
Set the capability __CONTAINERMODE__ to __liveperson__ to activate this connector.
### LIVEPERSON_CLIENT_ID*
Live Person installed application id
### LIVEPERSON_CLIENT_SECRET*
Live Person installed application secret
### LIVEPERSON_ACCOUNT_ID*
Your account id
### LIVEPERSON_CAMPAIGN_ID
Filling `campaignId` and `engagementId` you can route your conversation to a specific bot.
### LIVEPERSON_ENGAGEMENT_ID
Filling `campaignId` and `engagementId` you can route your conversation to a specific bot.
### LIVEPERSON_CLIENT_PROPERTIES
You can define a client properties object, which is sent in the header of the request at open conversion.
E.g.:
```
{
"type": "ClientProperties",
"features": [
"AUTO_MESSAGES"
]
}
```
### LIVEPERSON_USER_PROFILE
You can define a user profile object.
E.g.:
```
{
"firstName": "Botium",
"lastName": "",
"role": "consumer",
"description": ""
}
```