android webex meeting application intregration api9. webex login status query api (new api from...

17
Android Webex Meeting Application Intregration API 1. Intent Fillter ..................................................................................................................................... 3 2. Sign In .............................................................................................................................................. 3 3. Schedule Instant Meeting................................................................................................................. 4 4. Instant Meeting................................................................................................................................ 5 5. Schedule Meeting ............................................................................................................................ 6 6. Start Meeting by Token .................................................................................................................... 6 7. Get wbx:// Host URL ......................................................................................................................... 7 8. Start Meeting ................................................................................................................................... 8 9. WebEx Login Status Query API (New API from 6.5V) . ........................................................................ 8 10. WebEx Login Status Update Broadcast (New API from 6.5V) . ........................................................ 9 11. WBXUrlApiService ...................................................................................................................... 10 12. Meeting Status Query ................................................................................................................. 16 13. Meeting Status Broadcast ........................................................................................................... 16 14. Join Meeting............................................................................................................................... 17

Upload: others

Post on 25-Sep-2020

25 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

Android Webex Meeting Application

Intregration API

1. Intent Fillter ..................................................................................................................................... 3

2. Sign In .............................................................................................................................................. 3

3. Schedule Instant Meeting................................................................................................................. 4

4. Instant Meeting................................................................................................................................ 5

5. Schedule Meeting ............................................................................................................................ 6

6. Start Meeting by Token .................................................................................................................... 6

7. Get wbx:// Host URL......................................................................................................................... 7

8. Start Meeting ................................................................................................................................... 8

9. WebEx Login Status Query API (New API from 6.5V). ........................................................................ 8

10. WebEx Login Status Update Broadcast (New API from 6.5V). ........................................................ 9

11. WBXUrlApiService ...................................................................................................................... 10

12. Meeting Status Query................................................................................................................. 16

13. Meeting Status Broadcast ........................................................................................................... 16

14. Join Meeting............................................................................................................................... 17

Page 2: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

Revision History

Date Authors Contributors Description Auditor

2010-10-19 Ling.Hao First draft

2010-11-26 Ling.Hao Delete: OneClick for HTTPS

Update: Schedule Instant Meeting

Add: Start/Join Instant Meeting

2010-12-02 Wang.Limin Update: Start/Join Instant

Meeting

Update: One Click from Https

2010-12-06 Ling.Hao Update: 3.Schedule Instant

Meeting – Return Value’s name

and sample code.

Update: 4.Start Instant Meeting –

Change Intent parameter’s name.

2010-12-07 Sandra Kwan Add: Return value of Sign In

2010-12-10 Ling.Hao Add: 5.Get wbx host URL; 6.

Start Meeting

2010-12-16 Sandra Kwan Modified XML API wrap service to

pass in partial XML request

content

2011-03-17 Ling.Hao Added a extra parameter in

wbx://meeting2

2011-05-06 Sandra Kwan Updated the package name

2015-10-30 Jason Chen Update Meetring update

broadcast action

Add Join meeting from another

document

Page 3: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

1. Intent Fillter

The Intent filter used by WebEx meeting application was defined as below:

<intent-filter>

<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.BROWSABLE" />

<category android:name="android.intent.category.DEFAULT" />

<data android:scheme="wbx" />

</intent-filter>

2. Sign In

Intent Data: wbx://WbxSignIn

Arguments

None.

Examples

wbx://WbxSignIn

Return Value

If Activity call this intent through StartActivityForResult() function, the caller can obtain

schedule result through OnActivityResult(). If schedule was successful, the parameter

resultCode for OnActivityResult() is RESULT_OK, otherwise is RESULT_CANCELED

Sample Code:

Call the SignIn integration like this:

Intent i = new Intent(Intent.ACTION_VIEW); i.addCategory(Intent.CATEGORY_BROWSABLE); i.putExtra("INTENT_EXTRA_NO_ANIM", true); i.setData(Uri.parse("wbx://WbxSignIn")); startActivityForResult(i, START_SIGN_ON);

Then get result in OnActivityResult: @Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case START_SIGN_ON: if (resultCode == RESULT_OK){ System.out.println("User signed on susscessfully!"); }

Page 4: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

else { Log.i(TAG, "sign on failed"); System.out.println("User cancelled signon."); } break; } }

3. Schedule Instant Meeting

Intent Data: wbx:// WbxSchedule?attendees=<email addresses list>&password=<password>

Arguments

attendees: attendees’ email addresses. Use “,” as separator. Email addresses will

be added into invite boxes automatically. It is optional. Empty value

equals no this argument.

password: meeting’s password which you want to specify. It is plain text. It is

optional. Empty value means meeting does not require password.

noUI: flag to suggest Application to show “Schedule dialog” UI or not.

Designed for IM integration. noUI=true, show dialog, else not.

Examples

wbx://[email protected]%[email protected]&password

=123456 wbx://[email protected]

wbx://WbxSchedule?&password=123456

Return Value

If Activity call this intent through StartActivityForResult() function, the caller can obtain schedule result through OnActivityResult(). If schedule was successful, the parameter

resultCode for OnActivityResult() is RESULT_OK, otherwise is RESULT_CANCEL. If it is

RESULT_OK , the result data can be get from Intent’s extra data which defined as below:

Key Type Value

Password String Meeting password of scheduled meeting. It is null if no

password required.

Page 5: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

JoinURL String The URL link text for joining a meeting.

wbxHostURL String The URL link text for starting a meeting. It includes an

encrypted string which includes information about scheduled meeting, can be used to start meeting for user.

Refer to this.

MeetingKey String MeetingKey for this meeting, IM integration

ServerName String Server Name for the meeting site, IM integration

SiteName String Site Name for the meeting site, IM Integration

Sample Code:

4. Instant Meeting Intent Data: wbx:// instant?attendees=<email addresses

list>&meetingpwd=<password>&nativecall=true

Arguments

attendees: attendees’ email addresses. Use “,” as separator. Invitations will be sent

to these attendees automatically. If it is specified with at list one email

address, WebEx meeting application will open email invitation UI

automatically after meeting started. It is optional. Empty or specified

with empty string means invitation UI will not be opened. At most 20

email addresses are supported.

meetingpwd: meeting’s password which you want to specify. It is plain text. It is

optional. Empty value means meeting does not require password.

nativecall: true or false. If it is true, integrated audio conference will be disabled

while start meeting. WebEx meeting application will try to monitor

Page 6: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

system call event, while native call is hung up, integrated audio

conference will be enabled. It is optional. Empty means “nativecall =

false”.

Examples

wbx://[email protected],[email protected]& meetingpwd

=123456 wbx://[email protected]

wbx:// instant?& meetingpwd =123456

5. Schedule Meeting Intent Data: wbx:// schedule?attendees=<email addresses list>

Arguments

attendees: attendees’ email addresses. Use “,” as separator. After start instant

meeting, email addresses will be sent automatically. It is optional.

Empty value equals no this argument.

Examples

wbx:// [email protected],[email protected] wbx:// [email protected]

6. Start Meeting by Token

Android Application can use this API to start/join a meeting which scheduled by WebEx

Application by Schedule Instant Meeting or other application.

Intent Data: wbx://meeting3?token=<token>&action=start

Arguments

token: A encrypted string which includes information about scheduled

meeting, can be used to start/join meeting for user. WebEx Meeting

Application can recognize this string and use it to start/join meeting

correctly. It was generated by WebEx Meeting Application by call

Page 7: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

Schedule Instant Meeting or wbx:// host URL. WebEx Meeting

Application will do start or join based on current users account

information.

action: start or join. Currently not used. In future WebEx meeting client may

use this parameter to do different actions.

7. Get wbx:// Host URL

This API is used to get the Uri by meeting key and password. Returned URL can be used to start

meeting by calling API Start Meeting by Token.

Intent Data: wbx://WbxHostURL?MK=<meeting number>[&MPW=<password>]

Arguments

MK: Meeting key.

MPW: Plan text meeting password.

Return Value

If Activity call this intent through StartActivityForResult() function, the caller can obtain

result through OnActivityResult(). If intent format is right, the parameter resultCode for OnActivityResult() is RESULT_OK, otherwise is RESULT_CANCEL. If it is RESULT_OK , the

result data can be get from Intent’s extra data which defined as below:

Key Type Value

wbxHostURL String The URL link text for starting a meeting. It includes an encrypted string which includes information about

scheduled meeting, can be used to start meeting for user.

Refer to this.

Examples

wbx://WbxHostURL?MK=296354946&MPW=123456 Return value is like: wbx://meeting3?token=XwXTrP2iuWTN5dLyvlI8Z9+ZIEwK7nHJwOfceFbkWK8=&action=start

Page 8: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

8. Start Meeting

If Application knows meeting key and password, then it can call this API to start meeting through

WebEx meeting application.

Intent Data: wbx://WbxStartMeeting?MK=<meeting number>[&MPW=<encoded

password>|&RP=1]

Arguments

MK: Meeting key.

MPW: Plan text or One way encoded password. It is just to be used for

checking user input password. If password is not correct, meeting

application will ask user to enter a password while connecting.

RP: Currently not used .RP =1 indicates the meeting needs a password. At

most one of MPW and RP=1 exists in the URI. If RP=1, then meeting

application will ask user to input password before connect to server. If

not exists RP argument, meeting application will directly connect

meeting server with current MPW. If both MPW and RP do not exist,

application will connect server with assuming the meeting does not

require a password.

Examples

wbx://WbxStartMeeting?MK=296354946&MPW=bcb15f821479b4d5772bd0ca866c00ad5f926e3580720659cc80d39c9d09802a

9. WebEx Login Status Query API (New API from 6.5V).

When 3rd app want to get WebEx login status, they could use this API to retrieve WebEx login status.

How To Call:

1. Add WebEx permission in AndroidManifest.xml.

2. SendOrderBroadcast.

Page 9: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

3. Add Login status receiver.

Return Values:

SignInFlag: boolean

SiteType: String value. Train, WBX11, Orion

DisplayName: String value.

10. WebEx Login Status Update Broadcast (New API from 6.5V). When WebEx login status has been changed. It sends a broadcast to other applications.

How To Call:

Page 10: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

11. WBXUrlApiService

WBXUrlApiService receive calendar schedule, update and delete meeting request, send schedule,

update and delete meeting command and then return meeting key and other values to calendar.

How to Call:

Put the service interface definition file to your android project with package name

“com.cisco.webex.meetings.service”.

The file list is:

ICalendarContentValues.java

ICalendarMeetingInfo.java

IWBXUrlApiService.aidl

ICalendarMeetingInfo.aidl

ICalendarContentValues.aidl

You can bind service and use interface to call service’s API.

Interface:

Page 11: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

ICalendarContentValues SendScheduleMeetingRequest(ICalendarMeetingInfo

meetingInfo);

ICalendarContentValues SendUpdateMeetingRequest(ICalendarMeetingInfo

meetingInfo);

ICalendarContentValues SendDeleteMeetingRequest(ICalendarMeetingInfo

meetingInfo);

“ICalendarMeetingInfo” is meeting information class which will be sent to service.

“ICalendarContentValues” is return values class which service return to calendar.

ICalendarMeetingInfo element explanation:

Properties explanation Null? Type Validation

meetingName meeting topic N String

password meeting password Y String

startDate GMT time. N Long >0

duration meeting

duration(minute)

N int >0

description meeting agenda Y String only support webex

11 site.

attendees email1,email2 “,” split Y String

meetingKey update meetings N String when update

meeting, can’t null

Page 12: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

recurType noRepeat/Daily/Week

ly/Monthly/Yearly

Y String weekly recurrence,

only support every

one week recur

yearly recur don’t

support on webex 11

site

occurType Day/Week/Month Y String

dayInterval 1,2,…,999. Y int

wkInterval 1,2,…,6 only if

recurType is weekly

Y int

wkDays bit6: Sunday

bit5: Monday

bit4: Tuesday

bit3: Wednesday

bit2: Thursday

bit1: Friday

bit0: Saturday

Y int

dayInMonth 1,2,…,31 Y int

monthInterval 1,2,…,12 Y int

dayInWeek [1, 7] Y int

wkInMonth [1, 6] Y int

Page 13: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

monthInYear 1-January, 2-

Feburary,…, 12-

December

Y int

endType NoEnd/EndByDate Y String

endByDate GMT time Y Long

ICalendarContentValues element explanation:

Properties explanation Type

errorNumber error number of schedule/update/delete meeting int

meetingKey schedule success, return meeting key String

meetingURL schedule/update success, return meeting url for join or

start meeting

String

meetingStatus schedule/update/delete meeting status. 0 is success, 1

is fail.

int

paErrorNumb

er

error number of post attendees int

paStatus post attendees status, 0 is success, 1 is fail int

hostKey schedule success, host key. String

getHostKeySt

atus

get host key status. 0 is success, 1 is fail. int

getHostKeyErr

orNumber

get host key error number int

I also send “Calendar errors and recurrence sample” file to you. You can get error

maps ,recurrence example and params limit from the spreadsheet.

Page 14: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

Calendar errors and recurrence sample2.xlsx

Example :

o schedule meeting:

o Update meeting

Page 15: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

o Delete meeting

Page 16: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

12. Meeting Status Query

Application can send the broadcast to meeting application to retrieve meeting status How To Call:

Intent I = new Intent();

i.setAction(“com.webex.meeting.MEETING_STATUS”)

sendOrderedBroadCast(i,…);

Return Values:

MeetingNumber: int value. if in meeting, return the meeting number. Else, 0.

MeetingStatus: int value. 1 – in meeting, 0 – not in meeting.

IsHost: int value. 1- current meeting user is Host, 0 – not Host.

13. Meeting Status Broadcast When Meeting status has been changed within meeting application. It sends a broadcast to

other applications. How To Call:

Meeting client already implements this feature.

Receive Values:

MeetingKey: int value.

STATUS: int value. 1 – meeting connected, 0 – meeting disconnected, 3- meeting

closed, 4- meeting in progress, 6 – meeting expired, 7- meeting connect failed.

Action: com.webex.meeting.MEETING_UPDATED

<intent-filter> <action android:name="com.webex.meeting.MEETING_UPDATED" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter>

Page 17: Android Webex Meeting Application Intregration API9. WebEx Login Status Query API (New API from 6.5V). When 3rd app want to get WebEx login status, they could use this API to retrieve

14. Join Meeting If Application knows meeting key and password, then it can call this API to join

meeting through WebEx meeting application.

Intent Data: wbx://meeting

Extra Arguments

MK: Meeting key.

MPW: Plan text or One way encoded password. It is just to be used for

checking user input password. If password is not correct,

meeting application will ask user to enter a password while

connecting.

Examples

i.setData(Uri.parse("wbx://meeting"));

Intt.putExtra(“MK”,”12345670”);

Intt.putExtra(“MPW”,”123456”);