SparkBot.py

Spark Bot in Python

2

Votes

#!/usr/bin/env python
import json
import requests
import sys

# Disable Certificate warning
try:
    requests.packages.urllib3.disable_warnings()
except:
    pass

# ############################################################################
# Variables below
# ############################################################################
TODAYS_SESSION = 'DevNet Springboard Event'

SPARK_ROOM_NAME = 'Spark Tropo Omnichannel'
SPARK_ROOM_ID = 'Y2lzY29zcGFyazovL3VzL1JPT00vMGFhNTBmODAtNDYwMS0xMWU2LWJlNjMtNmRkMjM0MjNjNzZj'

SPARK_BASE = 'https://api.ciscospark.com/v1'
SPARK_MESSAGES = '%s/messages' % SPARK_BASE
SPARK_ROOMS = '%s/rooms' % SPARK_BASE
SPARK_MEMBERSHIPS = '%s/memberships' % SPARK_BASE

# Get your access token:
# 1) Login to developer.ciscospark.com
# 2) Copy the Access Token from top-right corner portrait icon
# 3) replace YOUR-ACCESS-TOKEN-HERE in the line below, leave preceding "Bearer " intact
SPARK_TOKEN = 'Bearer YOURTOKEN'
SPARK_HEADERS = {'Content-type': 'application/json', 'Authorization': SPARK_TOKEN}

# ############################################################################
# Find Room ID
# ############################################################################
r = requests.get(SPARK_ROOMS, headers=SPARK_HEADERS, verify=False)
# print('Spark Response: ' + r.text)
j = json.loads(r.text)

for tmproom in j['items']:
    if tmproom['title'] == SPARK_ROOM_NAME:
        SPARK_ROOM_ID = tmproom['id']
        print("Found room ID for '" + SPARK_ROOM_NAME + "' : " + SPARK_ROOM_ID)
        break

if SPARK_ROOM_ID is None:
    print("Failed to find room ID for '" + SPARK_ROOM_NAME + "'")
    sys.exit(1)

# ############################################################################
# List Users in Spark Room
# ############################################################################
m = "roomId=" + SPARK_ROOM_ID
r = requests.get(SPARK_MEMBERSHIPS, params=m, headers=SPARK_HEADERS)
j = json.loads(r.text)

for tmpmember in j['items']:
    print('Member Name: ' + tmpmember['personDisplayName'])
    print('Member Id: ' + tmpmember['personId'])
    print('Member Email Address: '+ tmpmember['personEmail'])


# ############################################################################
# Post to Spark Room
# ############################################################################
m = json.dumps({'roomId': SPARK_ROOM_ID, 'text': 'Hello, test Message'})
print('Spark Request: ' + SPARK_MESSAGES + m)
r = requests.post(SPARK_MESSAGES, data=m, headers=SPARK_HEADERS, verify=False)
print('Spark Response: ' + r.text)

# ############################################################################
# EOF
# ############################################################################

Vote Here

You must earn at least 1 vote on your snippets to be allowed to vote

Terms Of Use

Privacy Policy

Featured snippets are MIT license

Gears & Masters

Advertise

DevOpsnipp.com © 2020

medium.png