cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 
cancel
Helmut Heise
Cisco Employee
Cisco Employee

Introducción

Los bots de Webex, son aplicaciones que tienen una interfaz por la cual se puede interactuar mediante una conversación de texto, tarjetas, contenido multimedia y dependiendo su función puede ser una conversación 1:1, un espacio o múltiples espacios.

 

Requisitos

  • Cuenta de Webex y acceso a developer.webex.com
  • Servidor / Instancia con dirección IP publica y puerto 5005 abierto
  • Python 3  

 

Componentes Utilizados

La información que contiene esta guía se basa en las siguientes versiones  de software

 

  • Instancia Linux (almalinux 8.5) en la nube (Azure)
  • Python 3.6.8

 

Configuración

 

Instalación de librerías

En la terminal de Linux:

 

pip3 install requests
pip3 install webexteamssdk
pip3 install flask

 

 

 

Crear el BOT

  1. Accede con tu cuenta de Webex a https://developer.webex.com/ 
  2. Crea una nueva aplicación > 

tempsnip.jpg

 

bot.jpg

 Guarda (copia y pega en algún editor de textos) el token de acceso:

 

churro-token.jpg

 

 

Configuración

Ejecuta el siguiente código una sola vez, usa tu token y el URL o direccion IP publica y puerto de tu instancia / servidor

 

import requests
import json
from webexteamssdk import WebexTeamsAPI, Webhook
from flask import Flask, request


BOT_TOKEN = "ODIxZmMtMyOGE0MWQ4NmYtMmQx_PF84_b2536220-1a37-4bc0-b154-201f3"

### Flask ###
app = Flask(__name__)

### Webex ###
webex = WebexTeamsAPI(access_token=BOT_TOKEN)

### Webhook ### solo se ejecuta una vez!
webhook_url = "http://tu-url-o-ip-publica:5005/"
webex.webhooks.create(name="Churro_wh", targetUrl=webhook_url, resource="messages", event="all")

 

 

Después comenta la linea:

 

#webex.webhooks.create(name="nombredelwh", targetUrl=webhook_url, resource="messages", event="all")

 

 

Una vez que se crea el WebHook, lanzamos la aplicación:

 

import requests
import json
from webexteamssdk import WebexTeamsAPI, Webhook
from flask import Flask, request


BOT_TOKEN = "g3ZS00MWI2LTg5YjItODAzZmM1YmJlOTIyOGE0MWQ4NmYtMmQ0-1a37-4bc0-b154-20"

### Flask ###
app = Flask(__name__)

### Webex ###
webex = WebexTeamsAPI(access_token=BOT_TOKEN)

### Webhook ### solo se ejecuta una vez!
webhook_url = "http://servidorUrl-ip:5005/"
#webex.webhooks.create(name="nombredelwh", targetUrl=webhook_url, resource="messages", event="all")


@app.route("/", methods=['POST', 'GET'])

def index():
    
    if request.method == 'POST':
        
        data_obj = Webhook(request.json)
        
        #Get Message
        message = webex.messages.get(data_obj.data.id)
        
        #Get Space
        chat_space = webex.rooms.get(data_obj.data.roomId)
        chat_space = chat_space.id
        
        #Get Person
        persona = webex.people.get(message.personId)
        churro = webex.people.me()
        
        if message.text == 'Hola!' and message.personId is not churro:
            
            saludo = 'Buen dia ' + persona.nickName
            
            print(webex.messages.create(roomId=chat_space, text=saludo))
    
    return "200"



### Run Flask ###
app.run(host='0.0.0.0', port=5005, use_reloader=True, debug=True)

 

Este bot responde al mensaje de 'Hola!'

 

mensaje.jpg

 

agradecimiento a Sari Fernandez y Yanid Perez quienes colaboraron en este proyecto.

1 Comentario
dulfranc1
Beginner
Beginner

Agradezco a @Helmut Heise por el material en castellano y a la experta @yperezro por su referencia

Vamos a comenzar

¡Conecte con otros expertos de Cisco y del mundo! Encuentre soluciones a sus problemas técnicos o comerciales, y aprenda compartiendo experiencias.

Queremos que su experiencia sea grata, le compartimos algunos links que le ayudarán a familiarizarse con la Comunidad de Cisco: