building a global multiparty video chat platform for developers

19
www.erlang-solutions.com BUILDING A GLOBAL MULTIPARTY VIDEO CHAT PLATFORM FOR DEVELOPERS NICHOLAS REID SVP Product Management at Vidyo @ NicR _

Upload: erlang-solutions

Post on 21-Apr-2017

55 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

BUILDING A GLOBAL MULTIPARTY VIDEO CHAT PLATFORM FOR DEVELOPERS NICHOLAS REID SVP Product Management at Vidyo @NicR_

Page 2: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc.

Vidyo Inc., confidential, proprietary and patent pending information

Building a Global Group Video Chat Platform for Developers Nicholas Reid SVP, Product Management March, 2017

Page 3: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Vidyo Unique Technology

•  Low Cost & Delay •  Massive Scalability •  Highly Reliable

Infrastructure •  Global Footprint

•  Error Resilience •  Bandwidth efficiency

through cascading •  Optimized video

streams for any device

•  Exceptional quality over low bandwidth

•  Optimized for Mobile •  Multi-Codec Support •  WebRTC •  Continuum of

devices

Vidyo Routing Core

Dynamic Network Optimization

Endpoint Support

Page 4: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Use Cases for Embedded Video

Customer Engagement

Field Services  

Telehealth

Team Collaboration

Communica)on  Enabled  Apps  Promote  Be7er  Engagement  

•  Live Video Technical App •  Troubleshooting Support •  Field Services •  Financial Advice •  Concierge Services •  Product Troubleshooting  

•  Emergency Response •  Field Technician Support •  Remote Troubleshooting •  Customer Support

 

•  Primary Care and Specialist Referral Services •  Remote Patient Monitoring / Home Health •  Medical Education •  Disaster Management  

•  Team Meetings •  Content Sharing •  Interviewing &

Recruiting •  Corporate Training  

Page 5: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

What is Vidyo.io?

 

Vidyo.io  is  a  video  API  Communica1on  Pla3orm  as  a  Service  (CPaaS)  that  allows  developers  to  embed  highly  reliable  mul1party  video  chat  in  any  applica1on  

 

Page 6: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Easy Reliable Global Cloud

Vidyo.io Design Goals

•  High Network

Resilience for last mile connections

•  Geo-redundancy •  High service

availability

•  Automatic Firewall

Traversal •  Geo-localized

Connections •  Cross Region

Optimization

•  Simple Consistent

API •  Desktop, mobile,

and web SDK •  Open

Documentation •  Pay-as-you-go

pricing

Page 7: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Content Delivery Network for RTC

Page 8: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Vidyo.io Stack

Media  Plane  

Encoding  /  Decoding   Bandwidth  Es1ma1on   Video  Adapta1on   Renderer  

Signaling  Plane  

Call  Setup  /  Teardown   VMR  Management   Chat   Authen1ca1on  

API  Plane  

Mobile,  Desktop,  and  Web   Device  Management   Layout  Customiza1on  

Page 9: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

XMPP Perfect for Vidyo.io Architecture

Backend

VR

MUC

XMPP XMPP

MUC

Reflector

Roster

Room

Client

Signaling

Media

XMPP

SRTP

Signaling & Call Control

Sessions "& Rooms

Video & Audio Stream Routing

Page 10: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Client

Signaling Cluster (XMPP)

Media Cluster (Reflector)

VidyoReflector

VidyoReflector

VidyoReflector

Signaling  TCP  443  

Media:  UDP  TCP:443  

Vidyo.io Connectivity

Page 11: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

MongooseIM

•  Battle Hardened XMPP Stack

•  Globally Scalable Platform

•  BOSH Support

•  Cross Platform Support (Compiled code and browser access)

•  Firewall Traversal

•  Responsive Team

Page 12: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc. Vidyo Inc., confidential, proprietary and patent pending information

Shameless Vidyo.io Plug

Give Vidyo.io a try!

Sign up for a free account at

https://vidyo.io

Page 13: Building a global multiparty video chat platform for developers

© copyright 2017. Vidyo, Inc.

Vidyo Inc., confidential, proprietary and patent pending information

Nic Reid SVP, Product Management

@NicR_

Vidyo.io

https://vidyo.io @vidyo_io

Page 14: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

BUILDING A GLOBAL MULTIPARTY VIDEO CHAT PLATFORM FOR DEVELOPERS MICHAL SLASKI Tech Lead at Erlang Solutions Krakow @michalslaski

Page 15: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

MongooseIM - Open Source Messaging Platform

▸  End-to-end integration tests ▸  Continuous load testing ▸  Participate in the ecosystem

▹  Smack - Android ▹  XMPPFramework - iOS ▹  Movim - social network ▹  Jayme - Swift library for iOS, by Inaka

▸  Participate in XMPP Standards Foundation (XSF)

Page 16: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

MongooseIM Platform - Components

Page 17: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

MongooseIM - Globally Scalable Platform

▸  Vidyo already sponsored features: ▹  dynamic config reload ▹  multi-tenant support ▹  3rd party components ▹  reverse proxy ▹  token-based authentication

▸  Geoscaling ▹  cross-continent routing ▹  multi data centre deployment

▸  Lower total cost of ownership (TCO)

Page 18: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

MongooseIM 2.1 - Q2 2017

▸  Full text search ▸  Flexible push notifications

▹  MongooseIM Push service ▹  XEP-0357 ▹  Amazon SNS

▸  JSON Web Token authentication ▸  Experimental pipelining

▹  Reconnect time reduced from 200ms to 10ms ▸  Mangosta app for iOS and Android

▹  Open source MongooseIM client app ▹  Group chat messaging ▹  Social microblogging ▹  Demo apps, available as source code, not on stores

Page 19: Building a global multiparty video chat platform for developers

www.erlang-solutions.com

▸  Twitter @MongooseIM @ErlangSolutions @Vidyo_io

▸  Like the "main" repository https://github.com/esl/MongooseIM

▸  Please email your questions to [email protected]

THANK YOU!