For a more detailed walkthorugh, see the companion blog post here
This is a very simple Webex node.JS bot application that serves as a template to be further extended. It features the webex-node-bot-framework that simplifies development for Webex bots by abstracting away some of the complexity of the API calls and registering for events.
Here is the bot in action:
-
node.js (minimum supported v8.0.0 & npm 2.14.12 and up)
-
Create a Webex bot (save the API access token and username): https://developer.webex.com/my-apps/new/bot
-
Copy the
.env.local
file to a file called.env
-
Edit
.env
with the following values:
- BOTTOKEN - Set this to the token for your bot that you got in step 1
-
Turn on your bot server with
npm start
-
Create a space in Webex
-
Add the bot (by its username) to the space in Webex
-
@ mention your bot with
help
to get your first response:@mybotname help
The webex-node-bot-framework supports WebSockets by default. If you would prefer your bot to operate via Webhooks, use these steps.
-
Sign up for nGrok, then connect and start it on your machine (save the port number and public web address): https://ngrok.com/download
-
After installing ngrok, run it on your local machine to get a public ip address, eg
ngrok http 3000 --region=eu
-
Copy the ip address displayed in the ngrok window, ie: : https://1234.eu.ngrok.io
-
Edit
.env
with the following values:
- PORT - Set this to the port you set when you started ngrok
- WEBHOOKURL - Set this to the ip address that you copied