Skip to content

Build Application (Internal use not for public consumption ) TBD

Arun Ganeshan edited this page Dec 13, 2022 · 1 revision

Getting Started Guide

This doc explains how a 3rd party developer can integrate webex into there application.

Here are the basic concepts on meetings which we need to understand to build an application

  1. Meetings
  2. Meeting Host
  3. Guest Users

Creation of developer account

This step requires a developer to create a developer account this step is necessary to create a application with specific scope and in return you get back ClientID and ClientSecret https://developer.webex.com/docs/integrations

Create a webex account (one time)

In this step we will need to create a webex account https://www.webex.com/manage/myaccount/index.html

Add at least one host account whose credentials we will use to create meeting in the further step you will need a userName or password

  • You can use the same email address for the host account and the developer account if needed

Creating a webex meeting

Its strongly recommended to create a webex meeting on the application server backend by doing this you will have full control over the meeting and trigger various api calls on the server side

Login with host account

  1. If using the same email address use the token from here https://developer.webex.com/docs/getting-started
  2. If its a different user then the host license then use https://developer.webex.com/docs/login-with-webex#supported-oauth-and-openid-connect-flows

Schedule Meeting

The below api allows you to schedule meetings you will need a host account to do so if you want to invite other users you could add them to the invite https://developer.webex.com/docs/api/v1/meetings/create-a-meeting

Make sure you copy the host pin , password and meetingId , sip address we will need this information for the guest to join

Guest user creation

For creating guest users you will need to go to guest issuer and create a guest issuer token https://developer.webex.com/docs/guest-issuer

using the app ID and secret you should be able to create guest token and use those guest tokens to join the meeting via the SDK

const jwt = require('jsonwebtoken');
export default function handler(req, res) {
const query = req.query;
const { name } = query;
const payload = {
sub: 'guest-user-7349',
name: name,
iss: process.env.GUEST_ID,
};
const token = jwt.sign(
payload,
Buffer.from(process.env.GUEST_SECRETE, 'base64'),
{ expiresIn: '1h' }
);

fetch('https://webexapis.com/v1/jwt/login', {
headers: {
Authorization: 'Bearer ' + token,
},
method: 'POST',
})
.then((response) => {
return response.json();
})
.then((response) => {
res.status(200).json({ token: response.token });
});
}

Joining with SDK

 meeting Number ,hostpin,  password , access token for guest , sip address 

https://developer.webex.com/docs/sdks/browser

Flow diagrams

You can render UML diagrams using Mermaid. For example, this will produce a sequence diagram:

sequenceDiagram
participant D as DevPortal
participant A as App Developer
participant C as Webex Site


A->>D: create a integration App
D->>A: (clientID and clientSecret)

A->>D: create a guest Issues
D->>A: (Guest issuer ID and Secret)

A->>C: create a webex account
A->>C: add users with host license

Loading

Step 2

sequenceDiagram
participant A as App Server
participant W as Webex Server

A->>W:Request for access token (UserToken)
W->>A:token to create meeting

A->>W:schedule webex meeting
W->>A:meeting ID, hostPin , password, sipAddress

A->>W:Create guest accessToken(clientID, secret)
W->>A: access Token for guest

A->>A: GeneratLink for client (sipAddress, password)


Loading

Supported Browser

We support all the major browsers on desktop and mobile

Chrome Firefox
Messaging 'done' 'done'
Meetings 'done' 'done'
Clone this wiki locally