SlideShare a Scribd company logo
1 of 52
Build advanced
Voice Assistants and ChatBots
Stève SFARTZ
API Evangelist -Cisco DevNet
stsfartz@cisco.com, @SteveSfartz, github://ObjectIsadvantag
2
• Experience the CodeMotion Voice Machine & Cisco DevNet ChatBot
• Architecture
• Introduction to Tropo & Cisco Spark API
• Typical Bot Journey
• from Express to a bot framework
• what to consider
• T
• Ressources to go further
Agenda
+39 051 042 1150
!create an account on
http://tropo.com to go
hands-on live!
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
CodeMotion Milan 2016 IVR
Interactive Voice Responder
• Call +39 051 042 1150 and listen…
• Dial 1 to receive more details by SMS, 2 for next, 3 for previous
• Check you session details on your mobile phone
• Text your email to the caller (+1 414 999 0205) /! you’re texting US !!!
• Launch CiscoSpark, and meet the bot…
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
dials #1
{CodeMotion} Milan 2016 - Tropo IVR -
+39 051 042 1150
« Welcome »
details via SMS
ack
texts email address
/now
current events
calls
texts
« sparks »
IVR
JS script
Events
BotCisco Spark
POST
membership
reachs Support room
SMSBridge
JS library
/email
texted
Log2Spark
JS library
/new
logs
POST
message
« ChatOps »
Room
« Support »
Room
Voice Machine Responder
with Tropo
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
What is Tropo ?
Cloud APIs enabling developers to quickly
and easily embed communication capabilities
into their applications and business processes.
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
+
• Ask
• Call
• Conference
• Hangup
• Record
• Reject
• Say
• Transfer
Tropo in a nutshell
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
say("hello world");
Play an Audio File
say(“http://www.phono.com/audio/tropor
ocks.mp3");
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Outbound Voice Call
call("+14155550100");
say("Tag, you’re it!");
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Asking
a
Send a Text Message
call("+14155550100",
{network:"SMS"}
);
say("Tag, you’re it!");
Asking a Question
var result = ask("What's your favorite color?
Choose from red, blue or green.", {
choices:"red, blue, green"
});
say("You said " + result.value);
log("They said " + result.value);
Voicemail Application
record("Leave your message. Press pound when finished.", {
beep:true,
timeout:10,
silenceTimeout:7,
maxTime:60,
terminator:'#',
recordFormat:"audio/mp3",
recordURI:"ftp://example.com/1.mp3",
recordUser:"tropocloud", recordPassword:"password"
}
);
Record an Entire Call
startCallRecording("http://example.com/recording.js");
ask("What's your favorite color? Red, blue or green.", {
choices:"red, blue, green"
});
stopCallRecording();
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
• Local Numbers
• Toll Free
• 42+ countries
• SIP Addresses
Numbers
• Inbound
• Outbound
• Trunking
included
Voice
• Inbound
• Outbound
• Two-way
Texting
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
• Transfer
• Conference
• Headers
Call Control
• Speech
Recognition
• Text to Speech
• Audio playback
• Recording
Rich Media
• Redundant
data centers
• Auto-scaling
• Usage-based
Cloud
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Account Types
• Free for testing
• Low-volume
• Restricted use
• No production
usage
Developer
• Pre-paid
• Credit Card
• Self-service
signup
• Shared Cloud
• one minute billing
increments
Production
• Post-paid
invoices
• Contract
• SLA
• Account
Manager
• Shorter billing
increments
• Training
Enterprise
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
24x7 support
All features
Monitored, Managed Cloud
Developer Production Enterprise
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Globally available
Global Outgoing Calls & Messages
Numbers in 42 countries
80 speech languages
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
How to setup a custom IVR
• The IVR is composed of :
• a local phone number
• a custom script executed by the Tropo Scripting platform
dials #1
+39 051 042 1150
« Welcome »
details via SMS
calls
IVR
script
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Hands-on: let’s setup the DevNet Quiz IVR
• Create a new Tropo application
on http://tropo.com
• Point to the IVR script:
http://bit.ly/MILAN2016-1
• Save the application
22
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Hands-on: setup the DevNet Quiz IVR
• Add a phone number
• note : pick a Text-enabled phone number as we’ll leverage SMS later
• Call your IVR
23
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
IVR highlights
• Fork a new Tropo session to send a SMS
24
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
To go further…
• Personalize your IVR
• Modify the invites, play audio files
• Pick international voices
• Use SSML to enhance your User Experience
• Understand how the Tropo Scripting platform manages your files
• For development, host your scripts on an external URL for changes to reflect
instanlty
• As Tropo will fetch your script everytime it is invoked
• Host on Github gist, edit your favorite IDE
• https://www.tropo.com/2016/06/gists-can-help-tropo-scripting-development/
• When going live, host your scripts on Tropo Production File Servers
25
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Join the Cisco DevNet code labs
https://github.com/CiscoDevNet/codemotion-milan-2016
Cisco Spark ChatOps
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
What are ChatOps ?
28
“Follow your
Tropo application
real-time activity
in Cisco Spark”
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
How to setup Cisco Spark ChatOps
To stream logs into CiscoSpark
and get instant view about Tropo
activity:
1. Create a ChatOps room
2. Add an Incoming Webhook
3. Post messages from Tropo
Quiz
script
Spark
Log2Spark
library
/new
logs
POST
message
« ChatOps »
Room
1
2
3
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco Spark
Secure & Open
Complete & Simple
Spark for Developers
User Integrations, APIs/SDKs, etc.
Spark Hybrid Services
Cloud + Prem
Partner Services
Interconnect
Message Meeting Call
1:1 and team messaging in virtual rooms A Cloud-based phone systemAudio, video, and web meetings
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
What is so great about REST?
same concept, many Cisco APIs
Easy to Build
Web apps
Mobile apps
M2M, Bots…
REST API
31
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
‘Your App’
now with
Cisco Collab!
Spark APIs
Extend Cisco Collaboration Cloud
GET
POST
DELETE
PUT
/Rooms
/Memberships
/Messages
/Webhooks
/People
32
/Teams
https://developer.ciscospark.com/
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco Spark API v1 (July 2016)
/People /Rooms /Membership /Messages /Teams /Webhooks
List People List Rooms List Memberships List Messages List Teams List Webhooks
Create a Room Create a Membership Create a Message Create a Team Create a Webhook
Get Person Details Get Room details Get Membership details Get Message details Get Team details Get Webhook details
Update a Room Update a Membership Update a Team Update a Webhook
Delete a Room Delete a Membership Delete a Message Delete a Team Delete a Webhook
GET
POST
DELETE
PUT
DELETE DELETE DELETE
PUT PUT
POST POST POST
GET GET GET
GET GET
GET
GET GETGET
33
DELETE
PUT
POST
GET
GET
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
• Create a new Cisco Spark room from the CiscoSpark Developer Portal
34
https://developer.ciscospark.com/endpoint-rooms-post.html
DevNet Events Bot
Check upcoming events
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
How to connect the ‘DevNet Quiz’ Bot
/now
event details« sparks »
DevNet
Events BotCisco Spark
reaches the Support room « Support »
Room
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Join the Cisco DevNet code labs
https://github.com/CiscoDevNet/codemotion-milan-2016
Further considerations
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
• from the CodeMotion Conference page
• to a json payload provided by Andrea Ferlito
• created a REST API out of a Sails.js template
https://github.com/ObjectIsAdvantag/CodeMotionMilan2016
 Free your data, you cannot anticipate how much value is laying there,
unexploited.
 You may not have idea, but be faithful: the community will have a lot !!!
the CodeMotion IVR: a bit of history
39
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 40
Typical bot journey
• Built a few bot samples in NodeJS, starting with Express simple code
https://github.com/CiscoDevNet/node-sparkbot/blob/master/tests/express-spark-
webhook.js
• THEN start a library to abstract:
• Express boilerplate,
• Notifications listener,
• Account detection (human/bot),
• Commands interpreter,
• Bot Mentions triming
• Fallbacks
https://github.com/CiscoDevNet/node-sparkbot
 sounds familiar ?
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 41
Bot Frameworks survey
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
Typical bot journey
• Built a few bot samples, from Express simple code
• https://github.com/CiscoDevNet/node-sparkbot/blob/master/tests/express-
spark-webhook.js
• Created a bot framework to simplify repetitive tasks
• Express boilerplate, notifications listener, command interpreter, token
detection, bot mentions triming, fallbacks
• https://github.com/CiscoDevNet/node-sparkbot
>> always more opiniated, time for choices:
• Automation but not loose of control (no magic behind the scene)
• Metadata: about, healthcheck endpoint
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 43
Bot Metadata
About
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
Bot Metadata
HealthCheck
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
Typical bot journey
• Enrich the User Experience
• NLP, Conversations, Contexts storage
• 3rd party services or DIY approach
• BotKit does a pretty good job about conversations & context
• Other concerns
• What is this Bot code of conduct ? Are my permissions safe ? What is the usage of my
permissions (live info) ?
• OAUTH scopes too large, how to restrict ?
• All Web API classics apply: scalability, robustness, analytics, security
Next steps…
Let’s wrap it up
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
dials #1
{CodeMotion} Milan 2016 - Tropo IVR -
+39 051 042 1150
« Welcome »
details via SMS
ack
texts email address
/now
current events
calls
texts
« sparks »
IVR
JS script
Events
BotCisco Spark
POST
membership
reachs Support room
SMSBridge
JS library
/email
texted
Log2Spark
JS library
/new
logs
POST
message
« ChatOps »
Room
« Support »
Room
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 48
Key API Features and Use-Cases
• /rooms/people  automate room
creation and population
• /messages  app-driven
notifications and reports
• /teams  self-service rooms
• /webhooks  interactive assistants
(chat bots)
• TTS/Speech Recognition  voice
driven interactive customer service
• SMS  automated outbound
notifications, inbound SMS apps
• Recording/Transcription  voice
messaging and voice notes/records
• Telephony/Conferencing 
notifications and team voice comms
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 49
« Sparkers » community at Cisco DevNet
https://developer.cisco.com/site/spark/
https://learninglabs.cisco.com/tracks/collab-cloud
https://github.com/CiscoDevNet/awesome-ciscospark
Developer Portal
• Dev Centers
• Support Centers
400,000 Members
Learning labs
Springboards & Sandbox
Hackathons, CodeCamps
DevNet Express
Standards & Open Source
DevNet Zone at Cisco Lives
DevNet Kids, IEEE
Women in
Engineering
API Documentation
Projet Showcases
Forums, Community blogs
© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco's presence at CodeMotion 2016
Nov 25th
• 10:00: it's all about Developers, discover Cisco DevNet
• 11:30: from IoT to Human interactions (Drone Demo)
• 14:10: build advanced Voice Assistants and Chat Bots
• codelabs: build Chat Bots, create your own IVR (Voice Machine)
http://bit.ly/labs2511
Nov 26th
• 11:30: Embed Video and Messaging without being an expert
call +39-051-042-1150
to hear upcoming sessions
Thank you
@CiscoSparkDev
@CiscoDevNet
@SteveSfartz

More Related Content

What's hot

Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Cisco DevNet
 
OpenStack Enabling DevOps
OpenStack Enabling DevOpsOpenStack Enabling DevOps
OpenStack Enabling DevOpsCisco DevNet
 
How to Contribute to Ansible
How to Contribute to AnsibleHow to Contribute to Ansible
How to Contribute to AnsibleCisco DevNet
 
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap APIBuilding a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap APICisco DevNet
 
Device Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionDevice Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionCisco DevNet
 
UCS Management APIs A Technical Deep Dive
UCS Management APIs A Technical Deep DiveUCS Management APIs A Technical Deep Dive
UCS Management APIs A Technical Deep DiveCisco DevNet
 
DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet Express - Spark & Tropo API - Lisbon May 2016DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet Express - Spark & Tropo API - Lisbon May 2016Cisco DevNet
 
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016Cisco DevNet
 
Présentation cisco aci in action fundamentals - fcouderc - v6
Présentation cisco aci in action   fundamentals - fcouderc - v6Présentation cisco aci in action   fundamentals - fcouderc - v6
Présentation cisco aci in action fundamentals - fcouderc - v6Dig-IT
 
Swiss IPv6 Council: The Cisco-Journey to an IPv6-only Building
Swiss IPv6 Council: The Cisco-Journey to an IPv6-only BuildingSwiss IPv6 Council: The Cisco-Journey to an IPv6-only Building
Swiss IPv6 Council: The Cisco-Journey to an IPv6-only BuildingDigicomp Academy AG
 
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...Cisco DevNet
 
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabNSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabCisco Canada
 
CCIE Service Provider
CCIE Service ProviderCCIE Service Provider
CCIE Service ProviderCisco Canada
 
NetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsNetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsHank Preston
 
Javascript Essentials - Cisco Live Barcelona 2019
Javascript Essentials - Cisco Live Barcelona 2019Javascript Essentials - Cisco Live Barcelona 2019
Javascript Essentials - Cisco Live Barcelona 2019Cisco DevNet
 
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610Cisco DevNet
 
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019Cisco DevNet
 
Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019
Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019
Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019Cisco DevNet
 
DevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes IntegrationDevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes IntegrationHank Preston
 
Cisco Intelligent Branch - Enabling the Next Generation Branch
Cisco Intelligent Branch - Enabling the Next Generation BranchCisco Intelligent Branch - Enabling the Next Generation Branch
Cisco Intelligent Branch - Enabling the Next Generation BranchCisco Canada
 

What's hot (20)

Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
 
OpenStack Enabling DevOps
OpenStack Enabling DevOpsOpenStack Enabling DevOps
OpenStack Enabling DevOps
 
How to Contribute to Ansible
How to Contribute to AnsibleHow to Contribute to Ansible
How to Contribute to Ansible
 
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap APIBuilding a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
 
Device Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionDevice Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play Solution
 
UCS Management APIs A Technical Deep Dive
UCS Management APIs A Technical Deep DiveUCS Management APIs A Technical Deep Dive
UCS Management APIs A Technical Deep Dive
 
DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet Express - Spark & Tropo API - Lisbon May 2016DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet Express - Spark & Tropo API - Lisbon May 2016
 
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
 
Présentation cisco aci in action fundamentals - fcouderc - v6
Présentation cisco aci in action   fundamentals - fcouderc - v6Présentation cisco aci in action   fundamentals - fcouderc - v6
Présentation cisco aci in action fundamentals - fcouderc - v6
 
Swiss IPv6 Council: The Cisco-Journey to an IPv6-only Building
Swiss IPv6 Council: The Cisco-Journey to an IPv6-only BuildingSwiss IPv6 Council: The Cisco-Journey to an IPv6-only Building
Swiss IPv6 Council: The Cisco-Journey to an IPv6-only Building
 
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
 
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabNSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
 
CCIE Service Provider
CCIE Service ProviderCCIE Service Provider
CCIE Service Provider
 
NetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsNetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO Configurations
 
Javascript Essentials - Cisco Live Barcelona 2019
Javascript Essentials - Cisco Live Barcelona 2019Javascript Essentials - Cisco Live Barcelona 2019
Javascript Essentials - Cisco Live Barcelona 2019
 
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
 
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
Webex Devices xAPI - DEVNET_2071 - Cisco Live - San Diego 2019
 
Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019
Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019
Webex APIs for Administrators - DEVNET_2610 - Cisco Live 2019
 
DevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes IntegrationDevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes Integration
 
Cisco Intelligent Branch - Enabling the Next Generation Branch
Cisco Intelligent Branch - Enabling the Next Generation BranchCisco Intelligent Branch - Enabling the Next Generation Branch
Cisco Intelligent Branch - Enabling the Next Generation Branch
 

Viewers also liked

DEVNET-1121 Customizing Cisco Video Access for Guests
DEVNET-1121	Customizing Cisco Video Access for GuestsDEVNET-1121	Customizing Cisco Video Access for Guests
DEVNET-1121 Customizing Cisco Video Access for GuestsCisco DevNet
 
Design, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future ProblemsDesign, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future ProblemsCisco DevNet
 
DEVNET-1151 DevNet Sandbox 101
DEVNET-1151	DevNet Sandbox 101DEVNET-1151	DevNet Sandbox 101
DEVNET-1151 DevNet Sandbox 101Cisco DevNet
 
DEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and Python
DEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and PythonDEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and Python
DEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and PythonCisco DevNet
 
Application Visibility and Experience through Flexible Netflow
Application Visibility and Experience through Flexible NetflowApplication Visibility and Experience through Flexible Netflow
Application Visibility and Experience through Flexible NetflowCisco DevNet
 
NETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesNETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesCisco DevNet
 
Securing management, control & data plane
Securing management, control & data planeSecuring management, control & data plane
Securing management, control & data planeNetProtocol Xpert
 
Mobile Go Home - Welcome Multi-Context!
Mobile Go Home - Welcome Multi-Context!Mobile Go Home - Welcome Multi-Context!
Mobile Go Home - Welcome Multi-Context!Niels Anhalt
 
Chatbots to Disrupt Contact Centres
Chatbots to Disrupt Contact Centres Chatbots to Disrupt Contact Centres
Chatbots to Disrupt Contact Centres Joe Tawfik
 
hitachi-content-platform-portfolio-esg-validation-report
hitachi-content-platform-portfolio-esg-validation-reporthitachi-content-platform-portfolio-esg-validation-report
hitachi-content-platform-portfolio-esg-validation-reportIngrid Fernandez, PhD
 
first things first - why mobile first sucks
first things first - why mobile first sucksfirst things first - why mobile first sucks
first things first - why mobile first sucksNiels Anhalt
 
DEVNET-1126 APIC-EM API
DEVNET-1126	APIC-EM APIDEVNET-1126	APIC-EM API
DEVNET-1126 APIC-EM APICisco DevNet
 
Simplify Migration with RISC Network’s Complete App Analysis
Simplify Migration with RISC Network’s Complete App AnalysisSimplify Migration with RISC Network’s Complete App Analysis
Simplify Migration with RISC Network’s Complete App AnalysisAmazon Web Services
 
Call Center Operation
Call Center OperationCall Center Operation
Call Center OperationTaaham
 
Presentation cisco ucs director
Presentation   cisco ucs directorPresentation   cisco ucs director
Presentation cisco ucs directorsolarisyougood
 
How Discovery Migrated 80% of Their IT to AWS with Cloudreach
How Discovery Migrated 80% of Their IT to AWS with CloudreachHow Discovery Migrated 80% of Their IT to AWS with Cloudreach
How Discovery Migrated 80% of Their IT to AWS with CloudreachAmazon Web Services
 

Viewers also liked (18)

DEVNET-1121 Customizing Cisco Video Access for Guests
DEVNET-1121	Customizing Cisco Video Access for GuestsDEVNET-1121	Customizing Cisco Video Access for Guests
DEVNET-1121 Customizing Cisco Video Access for Guests
 
Design, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future ProblemsDesign, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future Problems
 
DEVNET-1151 DevNet Sandbox 101
DEVNET-1151	DevNet Sandbox 101DEVNET-1151	DevNet Sandbox 101
DEVNET-1151 DevNet Sandbox 101
 
DEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and Python
DEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and PythonDEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and Python
DEVNET-1001 Coding 101: How to Call REST APIs from a REST Client and Python
 
Application Visibility and Experience through Flexible Netflow
Application Visibility and Experience through Flexible NetflowApplication Visibility and Experience through Flexible Netflow
Application Visibility and Experience through Flexible Netflow
 
NETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesNETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network Devices
 
Securing management, control & data plane
Securing management, control & data planeSecuring management, control & data plane
Securing management, control & data plane
 
Mobile Go Home - Welcome Multi-Context!
Mobile Go Home - Welcome Multi-Context!Mobile Go Home - Welcome Multi-Context!
Mobile Go Home - Welcome Multi-Context!
 
Chatbots to Disrupt Contact Centres
Chatbots to Disrupt Contact Centres Chatbots to Disrupt Contact Centres
Chatbots to Disrupt Contact Centres
 
hitachi-content-platform-portfolio-esg-validation-report
hitachi-content-platform-portfolio-esg-validation-reporthitachi-content-platform-portfolio-esg-validation-report
hitachi-content-platform-portfolio-esg-validation-report
 
first things first - why mobile first sucks
first things first - why mobile first sucksfirst things first - why mobile first sucks
first things first - why mobile first sucks
 
Compresor de tornillo
Compresor de tornilloCompresor de tornillo
Compresor de tornillo
 
DEVNET-1126 APIC-EM API
DEVNET-1126	APIC-EM APIDEVNET-1126	APIC-EM API
DEVNET-1126 APIC-EM API
 
Simplify Migration with RISC Network’s Complete App Analysis
Simplify Migration with RISC Network’s Complete App AnalysisSimplify Migration with RISC Network’s Complete App Analysis
Simplify Migration with RISC Network’s Complete App Analysis
 
Chatbots
ChatbotsChatbots
Chatbots
 
Call Center Operation
Call Center OperationCall Center Operation
Call Center Operation
 
Presentation cisco ucs director
Presentation   cisco ucs directorPresentation   cisco ucs director
Presentation cisco ucs director
 
How Discovery Migrated 80% of Their IT to AWS with Cloudreach
How Discovery Migrated 80% of Their IT to AWS with CloudreachHow Discovery Migrated 80% of Their IT to AWS with Cloudreach
How Discovery Migrated 80% of Their IT to AWS with Cloudreach
 

Similar to How to Build Advanced Voice Assistants and Chatbots

Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...
Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...
Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...Codemotion
 
IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016
IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016
IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016Codemotion
 
Breizhcamp: Créer un bot, pas si simple. Faisons le point.
Breizhcamp: Créer un bot, pas si simple. Faisons le point.Breizhcamp: Créer un bot, pas si simple. Faisons le point.
Breizhcamp: Créer un bot, pas si simple. Faisons le point.Cisco DevNet
 
Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...
Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...
Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...Codemotion
 
From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...
From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...
From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...Codemotion
 
Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017
Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017
Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017Codemotion
 
Phone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo ServerlessPhone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo ServerlessCisco DevNet
 
Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896
Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896
Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896Cisco DevNet
 
Cisco Spark the Industry Challenge
Cisco Spark the Industry ChallengeCisco Spark the Industry Challenge
Cisco Spark the Industry ChallengeStefanie Maccarone
 
Embedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your appsEmbedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your appsCisco DevNet
 
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...Codemotion
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Cisco DevNet
 
Cisco Connect Halifax 2018 Cisco Spark hybrid services architectural design
Cisco Connect Halifax 2018   Cisco Spark hybrid services architectural designCisco Connect Halifax 2018   Cisco Spark hybrid services architectural design
Cisco Connect Halifax 2018 Cisco Spark hybrid services architectural designCisco Canada
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp
 
Emulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersEmulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersCisco DevNet
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Codemotion
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Codemotion
 
IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...
IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...
IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...Alexandre Brandão Lustosa
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningCisco DevNet
 
Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017
Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017
Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017Cisco
 

Similar to How to Build Advanced Voice Assistants and Chatbots (20)

Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...
Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...
Build advanced Voice Assistants and Chat Bots - Stève Sfartz - Codemotion Mil...
 
IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016
IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016
IoT to Human interactions - Stève Sfartz - Codemotion Milan 2016
 
Breizhcamp: Créer un bot, pas si simple. Faisons le point.
Breizhcamp: Créer un bot, pas si simple. Faisons le point.Breizhcamp: Créer un bot, pas si simple. Faisons le point.
Breizhcamp: Créer un bot, pas si simple. Faisons le point.
 
Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...
Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...
Building advanced Chats Bots and Voice Interactive Assistants - Stève Sfartz ...
 
From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...
From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...
From IoT to Human Interactions: Voice and Messages to the rescue - Stève Sfar...
 
Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017
Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017
Build advanced chat bots - Steve Sfartz - Codemotion Amsterdam 2017
 
Phone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo ServerlessPhone Communications in Javascript with Tropo Serverless
Phone Communications in Javascript with Tropo Serverless
 
Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896
Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896
Chatbots 101: design, code, deploy - Cisco Live Orlando 2018 - DEVNET-2896
 
Cisco Spark the Industry Challenge
Cisco Spark the Industry ChallengeCisco Spark the Industry Challenge
Cisco Spark the Industry Challenge
 
Embedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your appsEmbedding Messages and Video Calls in your apps
Embedding Messages and Video Calls in your apps
 
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
Steve Sfartz - How to embed Messaging and Video in your apps - Codemotion Mil...
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?
 
Cisco Connect Halifax 2018 Cisco Spark hybrid services architectural design
Cisco Connect Halifax 2018   Cisco Spark hybrid services architectural designCisco Connect Halifax 2018   Cisco Spark hybrid services architectural design
Cisco Connect Halifax 2018 Cisco Spark hybrid services architectural design
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
 
Emulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersEmulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API Providers
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
 
IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...
IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...
IoT Service Bus - High availability with Internet of Things (IoT)/ API Rest/ ...
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listening
 
Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017
Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017
Embed Spark calling SDK in Your App - Olivier PROFFIT - Cisco Live Berlin 2017
 

More from Cisco DevNet

Choosing PaaS: Cisco and Open Source Options: an overview
Choosing PaaS:  Cisco and Open Source Options: an overviewChoosing PaaS:  Cisco and Open Source Options: an overview
Choosing PaaS: Cisco and Open Source Options: an overviewCisco DevNet
 
Doing Business with Tropo
Doing Business with TropoDoing Business with Tropo
Doing Business with TropoCisco DevNet
 
Introduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVTIntroduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVTCisco DevNet
 
Introduction to Fog
Introduction to FogIntroduction to Fog
Introduction to FogCisco DevNet
 
CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...
CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...
CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...Cisco DevNet
 
Introduction to ACI APIs
Introduction to ACI APIsIntroduction to ACI APIs
Introduction to ACI APIsCisco DevNet
 
Flare: an overview
Flare: an overviewFlare: an overview
Flare: an overviewCisco DevNet
 
Enabling Fast IT using Containers, Microservices and DAVROS models: an overview
Enabling Fast IT using Containers, Microservices and DAVROS models: an overviewEnabling Fast IT using Containers, Microservices and DAVROS models: an overview
Enabling Fast IT using Containers, Microservices and DAVROS models: an overviewCisco DevNet
 
Cisco Managed Private Cloud in Your Data Center: Public cloud experience on ...
Cisco Managed Private Cloud in Your Data Center:  Public cloud experience on ...Cisco Managed Private Cloud in Your Data Center:  Public cloud experience on ...
Cisco Managed Private Cloud in Your Data Center: Public cloud experience on ...Cisco DevNet
 
Starting the DevOps Train
Starting the DevOps TrainStarting the DevOps Train
Starting the DevOps TrainCisco DevNet
 
Getting Started with OpenStack
Getting Started with OpenStackGetting Started with OpenStack
Getting Started with OpenStackCisco DevNet
 

More from Cisco DevNet (11)

Choosing PaaS: Cisco and Open Source Options: an overview
Choosing PaaS:  Cisco and Open Source Options: an overviewChoosing PaaS:  Cisco and Open Source Options: an overview
Choosing PaaS: Cisco and Open Source Options: an overview
 
Doing Business with Tropo
Doing Business with TropoDoing Business with Tropo
Doing Business with Tropo
 
Introduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVTIntroduction to the DevNet Sandbox and IVT
Introduction to the DevNet Sandbox and IVT
 
Introduction to Fog
Introduction to FogIntroduction to Fog
Introduction to Fog
 
CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...
CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...
CSTA - Cisco Security Technical Alliances, New Ecosystem Program Built on the...
 
Introduction to ACI APIs
Introduction to ACI APIsIntroduction to ACI APIs
Introduction to ACI APIs
 
Flare: an overview
Flare: an overviewFlare: an overview
Flare: an overview
 
Enabling Fast IT using Containers, Microservices and DAVROS models: an overview
Enabling Fast IT using Containers, Microservices and DAVROS models: an overviewEnabling Fast IT using Containers, Microservices and DAVROS models: an overview
Enabling Fast IT using Containers, Microservices and DAVROS models: an overview
 
Cisco Managed Private Cloud in Your Data Center: Public cloud experience on ...
Cisco Managed Private Cloud in Your Data Center:  Public cloud experience on ...Cisco Managed Private Cloud in Your Data Center:  Public cloud experience on ...
Cisco Managed Private Cloud in Your Data Center: Public cloud experience on ...
 
Starting the DevOps Train
Starting the DevOps TrainStarting the DevOps Train
Starting the DevOps Train
 
Getting Started with OpenStack
Getting Started with OpenStackGetting Started with OpenStack
Getting Started with OpenStack
 

Recently uploaded

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 

Recently uploaded (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 

How to Build Advanced Voice Assistants and Chatbots

  • 1. Build advanced Voice Assistants and ChatBots Stève SFARTZ API Evangelist -Cisco DevNet stsfartz@cisco.com, @SteveSfartz, github://ObjectIsadvantag
  • 2. 2 • Experience the CodeMotion Voice Machine & Cisco DevNet ChatBot • Architecture • Introduction to Tropo & Cisco Spark API • Typical Bot Journey • from Express to a bot framework • what to consider • T • Ressources to go further Agenda
  • 3. +39 051 042 1150 !create an account on http://tropo.com to go hands-on live!
  • 4. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public CodeMotion Milan 2016 IVR Interactive Voice Responder • Call +39 051 042 1150 and listen… • Dial 1 to receive more details by SMS, 2 for next, 3 for previous • Check you session details on your mobile phone • Text your email to the caller (+1 414 999 0205) /! you’re texting US !!! • Launch CiscoSpark, and meet the bot…
  • 5. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public dials #1 {CodeMotion} Milan 2016 - Tropo IVR - +39 051 042 1150 « Welcome » details via SMS ack texts email address /now current events calls texts « sparks » IVR JS script Events BotCisco Spark POST membership reachs Support room SMSBridge JS library /email texted Log2Spark JS library /new logs POST message « ChatOps » Room « Support » Room
  • 7. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public What is Tropo ? Cloud APIs enabling developers to quickly and easily embed communication capabilities into their applications and business processes.
  • 8. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public + • Ask • Call • Conference • Hangup • Record • Reject • Say • Transfer Tropo in a nutshell
  • 9. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public say("hello world");
  • 10. Play an Audio File say(“http://www.phono.com/audio/tropor ocks.mp3");
  • 11. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Outbound Voice Call call("+14155550100"); say("Tag, you’re it!");
  • 12. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Asking a Send a Text Message call("+14155550100", {network:"SMS"} ); say("Tag, you’re it!");
  • 13. Asking a Question var result = ask("What's your favorite color? Choose from red, blue or green.", { choices:"red, blue, green" }); say("You said " + result.value); log("They said " + result.value);
  • 14. Voicemail Application record("Leave your message. Press pound when finished.", { beep:true, timeout:10, silenceTimeout:7, maxTime:60, terminator:'#', recordFormat:"audio/mp3", recordURI:"ftp://example.com/1.mp3", recordUser:"tropocloud", recordPassword:"password" } );
  • 15. Record an Entire Call startCallRecording("http://example.com/recording.js"); ask("What's your favorite color? Red, blue or green.", { choices:"red, blue, green" }); stopCallRecording();
  • 16. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public • Local Numbers • Toll Free • 42+ countries • SIP Addresses Numbers • Inbound • Outbound • Trunking included Voice • Inbound • Outbound • Two-way Texting
  • 17. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public • Transfer • Conference • Headers Call Control • Speech Recognition • Text to Speech • Audio playback • Recording Rich Media • Redundant data centers • Auto-scaling • Usage-based Cloud
  • 18. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Account Types • Free for testing • Low-volume • Restricted use • No production usage Developer • Pre-paid • Credit Card • Self-service signup • Shared Cloud • one minute billing increments Production • Post-paid invoices • Contract • SLA • Account Manager • Shorter billing increments • Training Enterprise
  • 19. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 24x7 support All features Monitored, Managed Cloud Developer Production Enterprise
  • 20. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Globally available Global Outgoing Calls & Messages Numbers in 42 countries 80 speech languages
  • 21. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public How to setup a custom IVR • The IVR is composed of : • a local phone number • a custom script executed by the Tropo Scripting platform dials #1 +39 051 042 1150 « Welcome » details via SMS calls IVR script
  • 22. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Hands-on: let’s setup the DevNet Quiz IVR • Create a new Tropo application on http://tropo.com • Point to the IVR script: http://bit.ly/MILAN2016-1 • Save the application 22
  • 23. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Hands-on: setup the DevNet Quiz IVR • Add a phone number • note : pick a Text-enabled phone number as we’ll leverage SMS later • Call your IVR 23
  • 24. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public IVR highlights • Fork a new Tropo session to send a SMS 24
  • 25. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public To go further… • Personalize your IVR • Modify the invites, play audio files • Pick international voices • Use SSML to enhance your User Experience • Understand how the Tropo Scripting platform manages your files • For development, host your scripts on an external URL for changes to reflect instanlty • As Tropo will fetch your script everytime it is invoked • Host on Github gist, edit your favorite IDE • https://www.tropo.com/2016/06/gists-can-help-tropo-scripting-development/ • When going live, host your scripts on Tropo Production File Servers 25
  • 26. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Join the Cisco DevNet code labs https://github.com/CiscoDevNet/codemotion-milan-2016
  • 28. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public What are ChatOps ? 28 “Follow your Tropo application real-time activity in Cisco Spark”
  • 29. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public How to setup Cisco Spark ChatOps To stream logs into CiscoSpark and get instant view about Tropo activity: 1. Create a ChatOps room 2. Add an Incoming Webhook 3. Post messages from Tropo Quiz script Spark Log2Spark library /new logs POST message « ChatOps » Room 1 2 3
  • 30. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco Spark Secure & Open Complete & Simple Spark for Developers User Integrations, APIs/SDKs, etc. Spark Hybrid Services Cloud + Prem Partner Services Interconnect Message Meeting Call 1:1 and team messaging in virtual rooms A Cloud-based phone systemAudio, video, and web meetings
  • 31. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public What is so great about REST? same concept, many Cisco APIs Easy to Build Web apps Mobile apps M2M, Bots… REST API 31
  • 32. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public ‘Your App’ now with Cisco Collab! Spark APIs Extend Cisco Collaboration Cloud GET POST DELETE PUT /Rooms /Memberships /Messages /Webhooks /People 32 /Teams https://developer.ciscospark.com/
  • 33. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco Spark API v1 (July 2016) /People /Rooms /Membership /Messages /Teams /Webhooks List People List Rooms List Memberships List Messages List Teams List Webhooks Create a Room Create a Membership Create a Message Create a Team Create a Webhook Get Person Details Get Room details Get Membership details Get Message details Get Team details Get Webhook details Update a Room Update a Membership Update a Team Update a Webhook Delete a Room Delete a Membership Delete a Message Delete a Team Delete a Webhook GET POST DELETE PUT DELETE DELETE DELETE PUT PUT POST POST POST GET GET GET GET GET GET GET GETGET 33 DELETE PUT POST GET GET
  • 34. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public • Create a new Cisco Spark room from the CiscoSpark Developer Portal 34 https://developer.ciscospark.com/endpoint-rooms-post.html
  • 35. DevNet Events Bot Check upcoming events
  • 36. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public How to connect the ‘DevNet Quiz’ Bot /now event details« sparks » DevNet Events BotCisco Spark reaches the Support room « Support » Room
  • 37. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Join the Cisco DevNet code labs https://github.com/CiscoDevNet/codemotion-milan-2016
  • 39. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public • from the CodeMotion Conference page • to a json payload provided by Andrea Ferlito • created a REST API out of a Sails.js template https://github.com/ObjectIsAdvantag/CodeMotionMilan2016  Free your data, you cannot anticipate how much value is laying there, unexploited.  You may not have idea, but be faithful: the community will have a lot !!! the CodeMotion IVR: a bit of history 39
  • 40. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 40 Typical bot journey • Built a few bot samples in NodeJS, starting with Express simple code https://github.com/CiscoDevNet/node-sparkbot/blob/master/tests/express-spark- webhook.js • THEN start a library to abstract: • Express boilerplate, • Notifications listener, • Account detection (human/bot), • Commands interpreter, • Bot Mentions triming • Fallbacks https://github.com/CiscoDevNet/node-sparkbot  sounds familiar ?
  • 41. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 41 Bot Frameworks survey
  • 42. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 42 Typical bot journey • Built a few bot samples, from Express simple code • https://github.com/CiscoDevNet/node-sparkbot/blob/master/tests/express- spark-webhook.js • Created a bot framework to simplify repetitive tasks • Express boilerplate, notifications listener, command interpreter, token detection, bot mentions triming, fallbacks • https://github.com/CiscoDevNet/node-sparkbot >> always more opiniated, time for choices: • Automation but not loose of control (no magic behind the scene) • Metadata: about, healthcheck endpoint
  • 43. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 43 Bot Metadata About
  • 44. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 44 Bot Metadata HealthCheck
  • 45. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 45 Typical bot journey • Enrich the User Experience • NLP, Conversations, Contexts storage • 3rd party services or DIY approach • BotKit does a pretty good job about conversations & context • Other concerns • What is this Bot code of conduct ? Are my permissions safe ? What is the usage of my permissions (live info) ? • OAUTH scopes too large, how to restrict ? • All Web API classics apply: scalability, robustness, analytics, security Next steps…
  • 47. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public dials #1 {CodeMotion} Milan 2016 - Tropo IVR - +39 051 042 1150 « Welcome » details via SMS ack texts email address /now current events calls texts « sparks » IVR JS script Events BotCisco Spark POST membership reachs Support room SMSBridge JS library /email texted Log2Spark JS library /new logs POST message « ChatOps » Room « Support » Room
  • 48. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 48 Key API Features and Use-Cases • /rooms/people  automate room creation and population • /messages  app-driven notifications and reports • /teams  self-service rooms • /webhooks  interactive assistants (chat bots) • TTS/Speech Recognition  voice driven interactive customer service • SMS  automated outbound notifications, inbound SMS apps • Recording/Transcription  voice messaging and voice notes/records • Telephony/Conferencing  notifications and team voice comms
  • 49. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 49 « Sparkers » community at Cisco DevNet https://developer.cisco.com/site/spark/ https://learninglabs.cisco.com/tracks/collab-cloud https://github.com/CiscoDevNet/awesome-ciscospark
  • 50. Developer Portal • Dev Centers • Support Centers 400,000 Members Learning labs Springboards & Sandbox Hackathons, CodeCamps DevNet Express Standards & Open Source DevNet Zone at Cisco Lives DevNet Kids, IEEE Women in Engineering API Documentation Projet Showcases Forums, Community blogs
  • 51. © 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco's presence at CodeMotion 2016 Nov 25th • 10:00: it's all about Developers, discover Cisco DevNet • 11:30: from IoT to Human interactions (Drone Demo) • 14:10: build advanced Voice Assistants and Chat Bots • codelabs: build Chat Bots, create your own IVR (Voice Machine) http://bit.ly/labs2511 Nov 26th • 11:30: Embed Video and Messaging without being an expert call +39-051-042-1150 to hear upcoming sessions

Editor's Notes

  1. http://www.ciscolive.com/us/learn/sessions/session-catalog/?search=DEVNET-3002 Learn Spark and Tropo API advanced concepts by exploring the DevNet Quiz application. We'll cover : Spark webhooks, Tropo scripting platform, Tropo external API calls, Text-to-Speech, Tropo-to-Spark SIP calls This instructor-led talk addresses small-group workshop session (6 seats), and provides interactive developer exercises. Bring your own laptop, or grab one of the provided PC's. Taking place in the DevNet Zone. Pre-requisite : Developers with programming background, and signup before the session to https://developer.ciscospark.com/ and https://www.tropo.com.
  2. Go quickly thru the Quiz app : what is does Participants will run it during the hands on, in 2 slides.
  3. All orange box represent custom code /challenge…
  4. All orange box represent custom code /challenge…
  5. Let’s break it down into the 3 elements. SPARK MESSAGING – is an easy to use, always connected, service built on the idea of VIRTUAL ROOMS with a excellent MOBILE EXPERIENCE. Messaging, content sharing and BASIC conferencing capabilities are now all in one place. These “rooms” reduce the need for other tools like email and SHAREPOINT that were not truly built to support these types of workers and workstyles. SPARK MEETINGS – People shouldn’t have to worry about what KIND OF MEETING they’re having. Video Rooms, home office, branch office, Driver’s seat, Airport…Face to Face Video, Voice, and Content Sharing from any DEVICE, any ROOM, and any WORK ENVIRONMENT. Leveraging the #1 Web collaboration tool WebEx. SPARK CALL – This is your phone system or PBX in the cloud. One-touch directory dialing, Single Number Reach, Single Voicemail from any device, anywhere. All delivered in a single experience and managed through a single Cloud Collaboration Management Portal. Cloud Collaboration Management provides a single tool for administration, entitlement, management and reporting for Cisco Spark and Cisco WebEx Building on these 3 ELEMENTS . Cisco Spark is an Open Platform with… Open APIs for application integrations and a playground for developers Partner Services provides inbound dialing, and PSTN connectivity And Hybrid Services for integrating Cloud Spark applications with existing on prem investments
  6. We’ll leverage Spark APIs to implement this use case Spark APIs are accessible at https://developer.ciscospark.com/ This is where you get your API token and run thru the interactive documentation
  7. All orange box represent custom code /challenge…
  8. Sounds familiar
  9. All orange box represent custom code /challenge…
  10. With 370.000 Members in April 2016, DevNet is an ever growing communiy which offers a large set of on-line ressources and live events. It also gathers all together various communities. Let’s go through all DevNet as to offer.