Cisco Spark Bot for ServiceDesk
- Q&A chatbot integrated on redis db
- DB can be loaded with csv file
- User can be put in a new room with ServiceDesk (keyword:
joinsd
) - Tranlsation integrated in 107 languages with auto or manual mode (keyword:
translate help
) - Based on node-flint (nodejs)
- Logstash connector to send all messages in BigData db
- ITSM (servicenow) integration to list, create, update ticket
- Flash message management to inform about current global outage
All words other than the keywaord used for the command are used to be searched in the KB source(s)
-
joinsd
To open a chat group space with the Service Desk. Because we can't let the enduser without door. Create automatically an ITSM incident with the content coming from local chat. New group chat space is create and one ServiceDesk guy is involved to help the end user. -
joinsd help
The SD's help page.
Manage CSV file as source of KM
-
csv load
Load current CSV file as source of data. Useful to update quickly the KB source. -
csv test
Test current CSV file vs local DB. Run the production safly! -
csv help
The CSV's help page.
Manage the ITSM ticket:
- incident
- problem
- task
-
task list
List ITSM tasks. To follow the last event, update... -
task list create [title] [comments]
Create your task by chat. -
task update [id] [comments]
Update the task. -
task help
The Task's help page.
-
problem list
List ITSM problems. To follow the last event, update... -
problem list create [title] [comments]
Create your problem by chat. -
problem update [id] [comments]
Update the problem. -
problem help
The Problem's help page.
-
incident list
List ITSM incidents. To follow the last event, update... -
incident list create [title] [comments]
Create your incident by chat. -
incident update [id] [comments]
Update the incident. -
incident help
The Incident's help page.
-
translate state
Display the current state of the auto translation. -
translate on
Activate the auto translation. -
translate off
Deactivate the auto translation. -
translate config
Display the current config. -
translate config [lang in] [lang out]
Change the current config. The config is also updated when the user perform an manual translation. -
translate help
The Translate's help page.
Display and update the flash message
-
flash
Display the flash messasge. -
flash update [\/*phrase}
Update the flash message. -
flash help
The Flash's help page.
help
Display the global helpful messsage
-
Clone localy
git clone https://github.com/guillain/ServiceDeskBot.git
-
Go into the folder
cd ServiceDeskBot
-
Put your CSV file (named km.csv) in the conf folder (key->txt structure)
cp [your CSV file] app/conf/km.csv
-
Config your app with your spark bot
vi app/config.js
If you want to use the run.sh
shell script, change the path of the install folder:
vi run.sh
APP_DIR='/home/ec2-user/ServiceDeskBot/app'
-
Install dependencies
cd app
npm install
-
Run the application, two configuration availables
-
1/ For the dev, node is used
./run.sh manual
-
2/ For the prod, pm2 is used (install also this dependency)
./run.sh [start|stop|restart|show|status|log]
-
Add the bot in 1:1 or in chat group room
Provided also for Docker env. with the Dockerfile for the standalone builder
To build the image:
docker build -t bot/servicedesk .
To run the image:
docker run -d -p 8083:3333 bot/servicedesk
To go in the container:
docker exec -it bot/servicedesk /bin/bash
To check the logs
docker logs bot/servicedesk --details -f
Settings is done to send all chat messages formatted properly to a log stash system.
Thanks to active it in the configuration file
config.js
> config.bigdata.enable = true;
ITSM
create title comments` callback fct to fix (manual creation of incident, problem and task impacted)- flint Redis storage (issue: flint-bot/flint#22). Thanks to use the old redis.js file as workaround.
- http://developer.ciscospark.com/
- https://github.com/flint-bot/flint
- https://github.com/flint-bot/sparky
Have fun