Skip to content

Basic example of a Webex bot that uses Websockets to communicate with the cloud. Great for testing and 'behind the firewall' deployments.

License

Notifications You must be signed in to change notification settings

DJF3/Webex-Bot-with-Websockets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

published

Webex-Bot-with-Websockets

Basic example of a Webex bot that uses Websockets to communicate with the cloud. Great for testing and 'behind the firewall' deployments.

Time to setup: if you have setup a bot and have Python installed you can get this to work in 5-10 minutes.

A Prepare

  • Create a bot (on developer.webex.com)
  • Download the code (above)
  • Check if you have python: python -V The version should be 3.9 or higher
  • Check if you have pip: python -m pip -V 'pip' is used to install Python libraries

B Create a folder** for the bot and copy the bot files to this folder

  • mkdir webex-bot-ws
  • cd webex-bot-ws
  • copy bot files to this folder (webexwebsocket.py, webex-bot-ws.py) (When using Pipenv, also copy "Pipfile")

______________ BELOW: C/D/E/F only if you use Pipenv ______________

C Install "Pipenv" (if not installed)

  • Check if you have pipenv: pipenv -V
  • If not, install it: python -m pip install pipenv

D Create Pipfile (or use the provided Pipfile)

  • (Mac) touch Pipfile (or create a file called "Pipfile")
  • Edit Pipfile
  • Paste content below in the Pipfile and save it. The folder now contains 1 file: "Pipfile" and Pipenv is ready to do its job.
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "webex-bot-using-websocket"
[dev-packages]
[packages]
uuid = "*"
webexteamssdk = "*"
websockets = "*"
[requires]
python_version = "3.9"

E Setup virtual environment

  • Pipenv install
  • Based on the Pipfile, this creates a local environment with the required packages.

F Activate the created virtual environment

  • Pipenv shell
  • Your prompt changes to indicate you are in the "isolated" setup.

NOTE: When you start the bot, you need to be in the Pipenv shell. Otherwise, it will not have the right libraries available. alternatively: type pipenv run python webex-bot-ws.py This directly runs the python code inside the pipenv environment.

______________ ABOVE: C/D/E/F only if you use Pipenv ______________

G Set bot token environment variable

  • (MacOS): export MY_BOT_TOKEN='YOUR_TOKEN_HERE'
  • (Windows): set MY_BOT_TOKEN=YOUR_TOKEN_HERE

H Run the Bot (Python code)

  • python webex-bot-ws.py
  • When the ___Bot_started_____ message appears, test the bot!

I Test the bot

  • Send test to the bot.
  • It should repeat your message.
  • Send hello to the bot. The not should respond differently.

FAQ

  • Does this work inside the corporate firewall? Yes, it most likely will!

  • I don't want to/can use Websockets check out my alternative solution: Webex Bot using Ngrok

More Webex Development resources?

Article: "Using Websockets with the Webex JavaScript SDK"

Go to cs.co/webexdevinfo

About

Basic example of a Webex bot that uses Websockets to communicate with the cloud. Great for testing and 'behind the firewall' deployments.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages