A Hands-on Approach to Automation with Cisco Collaboration ...

25
#CiscoLive

Transcript of A Hands-on Approach to Automation with Cisco Collaboration ...

#CiscoLive

#CiscoLive

Baha Akman, [email protected] Giralt, [email protected] Schneider, [email protected]

A Hands-on Approach to Automation with Cisco Collaboration APIs

Agenda

#CiscoLive © 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public

• Introduction• Collaboration API’s Overview• Tools Overview• Provisioning Portal Overview• Getting Help

HOLCOL-2574 3

How much experience do you have with Python?

ⓘ Start presenting to display the poll results on this slide.

How much experience do you have with Collaboration APIs?

ⓘ Start presenting to display the poll results on this slide.

In 1-2 words, what do you want to get out of this lab?

ⓘ Start presenting to display the poll results on this slide.

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Why API’s? • Ability to automate provisioning

• Restrict administrative functions / provide more granular control

• Ability to monitor / manage a large system

• Allow users to self-provision

• Automation of test / heath checks

• Integration between systems that cannot natively communicate

• Diagnostics and Troubleshooting

HOLCOL-2574 7

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Provisioning Portal Architecture

Unified CM Cluster

Unity Connection

Monitoring and Provisioning Portal

AXL

PAWS

CMS APIUDS

SXML

Cisco MeetingServer

Webex App HTTP/REST

PAWS CUPI

HOLCOL-2574 8

Cisco Collaboration API’s

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Cisco DevNet• http://developer.cisco.com

• One-stop shop for all Cisco public API’s

• Sorted by Technology Area

• Documentation, Examples, and API References

• 43 API’s for Collaboration Products alone

HOLCOL-2574 10

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

SOAP APIs• The specification formerly known as Simple Object Access Protocol

• Exchange of structured and typed information based on XML

• SOAP specification defines• SOAP message format• How to send and receive messages• Data encoding

• Web Services Description Language (WSDL)• XML-based format (grammar) to describe web services• Defines four pieces of data:• Publicly available methods; interface description, formats• Data type information for requests and responses• Binding; which transport protocol• Address information – where to find the service

HOLCOL-2574 11

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

AXL API Introduction• The Administrative XML Web Service (AXL) is an XML/SOAP based

interface that provides a mechanism for inserting, retrieving, updating and removing data from the Unified Communication configuration database.

• https://developer.cisco.com/site/axl/

• Thick AXL – API defines specific objects that can be created, removed, queried, or updated

• Thin AXL – Provides a mechanism to perform direct SQL queries / updates

HOLCOL-2574 12

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Unified CM Serviceability APIs

• Real-Time Information (RisPort) – Provides the current connection status of phones, devices, and applications connected to Cisco Unified Communications Manager (Unified CM).

• Performance Monitoring (PerfMon) – Provides real-time event feeds to monitor the status and health of Cisco Unified CM.

• Service Control – Activate / Deactivate / Start / Stop Services

• CDRonDemand – SOAP/HTTPS interface to query the Unified CM Call Detail Records (CDR) Repository.

• Log Collection – Retrieval of trace files and logs

https://developer.cisco.com/site/sxml/

HOLCOL-2574 13

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Platform Administrative Web Services (PAWS)

• Various Platform-related services• Version Information• Cluster Status• Upgrade Platform• Change Network Settings• Import / Export Platform Configuration

• Available on all VOS-based platforms• Unified Communications Manager• Unity Connection• Unified Contact Center Express

https://developer.cisco.com/site/paws/

• Hardware Information• Installed Product Information• Restart / Switch Versions• Certificate / CSR Operations• Administer Backups

• Finesse• Emergency Responder• CUIC / VVB

HOLCOL-2574 14

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

REST APIs

• Leverages HTTP verbs to indicate operation

HTTP Verb DB Equivalent Description

GET SELECT Retrieve one or more objectsPOST INSERT Add an objectPUT UPDATE Update attributes on an existing objectDELETE DELETE Delete an object

https://host/api/v1/callsBase URI Resource

HOLCOL-2574 15

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Cisco Meeting Server REST API

• https://ciscocms.docs.apiary.io/

• Provides both Provisioning and Monitoring capabilities

• Many functions can only be accessed via API

/callBridges/callBridges/<call bridge id>

/callBridgeGroups/callBridgeGroups/<call bridge group id>

/calls/calls/<call id>/calls/<call id>/callLegs/calls/<call id>/diagnostics/calls/<call id>/participants/calls/<call id>/participants/*

HOLCOL-2574 16

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Cisco Unity Connection API’s

• Cisco Unity Connection Provisioning Interface (CUPI) – REST API for Administrative Provisioning Cisco Unity Connection

• CUPI for End Users – Building Custom end-user applications

• Cisco Unity Connection Messaging Interface (CUMI) – Access to user messages

• Cisco Unity Connection Telephony Interface (CUTI) – Play and record audio content over the phone

• Cisco Unity Connection Imaging Interface (CUII) – View message state and mailbox information visually using graphics icons

• Cisco Unity Connection Notification Interface (CUNI) – Notification for one or more users

http://docwiki.cisco.com/wiki/Cisco_Unity_Connection_APIs

HOLCOL-2574 17

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Webex APIs

• Allows for the creation of Bots, Integrations, Guest Issuer Apps• Can programmatically manage spaces, memberships, and interact via messages

https://developer.webex.com/docs/api/getting-started

HOLCOL-2574 18

Tools Overview:Soap UI and Postman

Tools Overview:VS Code

Provisioning Portal Overview

Lab Tips and Tricks

© 2021 Cisco and/or its affiliates. All rights reserved. Cisco Public#CiscoLive

Getting Helphttps://developer.cisco.com/site/devnet/support/

HOLCOL-2574 23

Ready,Set,Code

#CiscoLive