Professional Documents
Culture Documents
Network-Based
Recording Web
Services API v2.3.5
Reference Guide
© 2008 WebEx Communications, Inc. All rights reserved. WebEx and MediaTone are registered
trademarks or trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and certain other
countries.
UNPUBLISHED - RIGHTS RESERVED UNDER THE COPYRIGHTS LAW OF THE UNITED STATES.
USE OF A COPYRIGHT NOTICE IS PRECAUTIONARY ONLY AND DOES NOT IMPLY
PUBLICATION OR DISCLOSURE.
NBR Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
DeleteMeetingXml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
deleteMeetingXmlRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
deleteMeetingXmlResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
DownloadFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
downloadFileRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
downloadFileResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
NBRFileOpenService . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
GetMeetingTicket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
User Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
getMeetingTicketResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
GetMeetingXml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
getMeetingXmlRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
getMeetingXmlResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
GetNBRConfIdList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
getNBRConfIdListRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
getNBRConfIdListResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
GetNBRRecordIdList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
getNBRRecordIdListRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
getNBRRecordIdListResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
Chapter 3 WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Providing feedback
WebEx Communications greatly appreciates any feedback that you provide about
our products and documentation.
NBR Overview
Network-Based Recording (NBR) is the newest recording option available to Cisco
WebEx customers on release WBS25 or higher. NBR enables you to capture all
session content (chat, Q&A, polling, etc.), including WebEx integrated audio,
VOIP audio, or third-party audio conference for later playback and future
reference.
Recorded data is stored on the high availability, dedicated physical storage servers
within the WebEx secure data center facilities. Each facility is staffed 24 hours a day,
seven days a week. To gain access to any facility, one must be on the
approved-access list managed by the WebEx security team. Access is further
controlled by biometric security devices.
All recording data is backed up daily. Backed up data is stored both locally and
remotely for 90 days.
Note Contact the API Developer Services team (apidev@webex.com) to get the
exact URL for your site.
The cred element contains the unique credential for the current API session.
Although this credential will be unchanged until its expiration or logout of the
client, good practice is to use the response credential itself rather than a locally
stored copy. This makes it possible to support multiple active credentials for a user
with active workspaces associated with different organizations.
A successful call will contain only a SUCCESS result, unless the response is to a GET
command. In the case of a GET command, the elements count and totalCount are
included. Table 1-1 shows the elements used in the response stanza.
count Returned with the GET command. The number of results returned
per the users specifications. I.E. a page size of 20 would return
count = 20 if the page was full of found items.
totalCount Returned with the GET command. The total number of results
satisfying the GET command. totalCount is returned only if it
differs from count.
APIs
Before accessing the NBR APIs, users need to have access to certain parameters,
including recordId and siteId. In order to retrieve this information, the user needs
to access the lstRecording function. For more information on this function see the
Cisco WebEx XML API Reference Guide.
Developers access NBR by incorporating the following API calls into their code. The
functions shown in Table 2-1 are the exposed NBR functions.
deleteMeetingXmlRequest on page 9
deleteMeetingXmlResponse on page 10
downloadFileRequest on page 12
downloadFileResponse on page 13
getMeetingTicketRequest on page 16
getMeetingTicketResponse on page 17
getMeetingXmlRequest on page 26
getMeetingXmlResponse on page 27
getNBRConfIdListRequest on page 36
getNBRConfIdListResponse on page 37
getNBRRecordIdListRequest on page 39
getNBRRecordIdListResponse on page 40
deleteMeetingXmlRequest
Http Request:
http://<hostvip>:<port>/nbr/services/nbrXmlService?method=deleteMeet
ingXml&siteId=400009412&confId=4648067&ticket=IK4gi74h1BfKLY+
j6WyGbCnlDtYhzpZEMSdgOCGJc/Mcjh1hkl472eXjJW54B8EbQSnYbR/OmQjwpB7Hdm8
GKvIPZbQmouAugskje76jmM4=
Soap Request:
POST /nbr/services/nbrXmlService HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related,
text/*
User-Agent: Axis/1.1
Host: 172.16.197.134:2001
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 659
XML listing:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
deleteMeetingXmlResponse
XML listing:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:deleteMeetingXmlResponse soapenv:encodingStyle=
"http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="nbrXmlService">
<ns1:deleteMeetingXmlReturn xsi:type="xsd:string">
Success
</ns1:deleteMeetingXmlReturn>
</ns1:deleteMeetingXmlResponse>
</soapenv:Body>
</soapenv:Envelope>
call.setTargetEndpointAddress(new URL(config.getNbrServiceUrl()));
call.setOperationName(new QName(serviceName, operationName));
// set the required parameters for RPC call. Please refer WSDL for
detailed information
call.addParameter("siteId", Constants.XSD_LONG, ParameterMode.IN);
call.addParameter("serviceName", Constants.XSD_STRING,
ParameterMode.IN);
call.addParameter("userName", Constants.XSD_STRING,
ParameterMode.IN);
call.addParameter("password", Constants.XSD_STRING,
ParameterMode.IN);
call.addParameter("recordId", Constants.XSD_LONG, ParameterMode.IN);
// create the data handler to handle the binary file attachment.
Please refer WSDL for detailed information
QName qnameAttachment = new QName(serviceName, "DataHandler");
call.registerTypeMapping(DataHandler.class, qnameAttachment,
JAFDataHandlerSerializerFactory.class,
JAFDataHandlerDeserializerFactory.class);
call.setReturnType(qnameAttachment);
// Invoke the web service RPC call and pass all parameters. The return
object will contain the NBR recording (ARF file)
Object ret = call.invoke(new Object[]
{
new Long(config.getSiteId()), new String(nbrvo.getServiceName()),
new String(config.getAdminUserName()),
downloadFileRequest
userName String. The user name of the person requesting the download.
NBRFileOpenService
The NBRFileOpenService utilizes the downloadFile function and permits users to
download all of their recordings at once. This allows customers to write a program
that accesses the service and automatically downloads all of their recordings instead
of having to access each recording separately. Users must know the siteID and the
site administrator’s userName and password before trying to download the
recordings.
How it works
When the user or their program goes to save the recordings, the following code is
executed:
<?xml version="1.0" encoding="UTF8"?>
<wsdl:definitions
targetNamespace="http://localhost:7001/nbr/services/NBRFileOpenService"
xmlns:impl="http://localhost:7001/nbr/services/NBRFileOpenService"
xmlns:intf="http://localhost:7001/nbr/services/NBRFileOpenService"
xmlns:apachesoap="http://xml.apache.org/xmlsoap"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns1="NBRFileOpenService"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://localhost:7001/nbr/services/NBRFileOpenServi
ce">
<import namespace="NBRFileOpenService"/>
<import
namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="ArrayOf_tns1_DataHandler">
<complexContent>
<restriction base="soapenc:Array">
User Authentication
The getMeetingTicket functions are used to retrieve the ticket that allows the user
to access the NBR servers. The user initially uses the getMeetingTicketRequest
function to ask for this ticket. This requires the user to send their username and
password to the servers. The getMeetingTicketResponse function is then used to
accept the returned ticket. The user then uses this ticket throughout the session for
authentication purposes.
getMeetingTicketRequest
Http Request:
http://<hostvip>:<port>/nbr/services/nbrXmlService?method=getMeeting
Ticket&siteId=400009412&username=hostid&password=hostpassword&servic
e=MC
Soap Request:
POST /nbr/services/nbrXmlService HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related,
text/*
User-Agent: Axis/1.1
Host: 172.16.197.134:2001
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 613
XML listing:
getMeetingTicketResponse
XML listing:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getMeetingTicketResponse soapenv:encodingStyle=
"http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="nbrXmlService">
getMeetingXmlRequest
Http Request
http://<hostvip>:<port>/nbr/services/nbrXmlService?method=getMeeting
Xml&siteId=400009412&confId=998923752&ticket=IK4gi74h1BfKLY+
j6WyGbCnlDtYhzpZEMSdgOCGJc/Mcjh1hkl472eXjJW54B8EbQSnYbR/OmQjwpB7Hdm8
GKvIPZbQmouAugskje76jmM4=
Soap Request:
POST /nbr/services HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related,
text/*
User-Agent: Axis/1.1
Host: localhost
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 563
getMeetingXmlResponse
Table 2-9 provides a list of return parameters and their value. Table 2-10 provides
a list of return parameters that have associated attributes with them. Information
from both tables are found in the response from the getMeetingXMLResponse
function.
ModeratorLogin String. The login information of the moderator for the meeting.
StartTimeUTC String. The actual start time of the meeting in UTC format.
The following error messages are returned if the call was unsuccessful.
■ The siteId is invalid.
■ The confId is invalid.
■ The ticket is invalid.
getNBRConfIdListRequest
Http Request
http://<hostvip>:<port>/nbr/services/nbrXmlService?method=getMeeting
Xml&siteId=400009412&confId=998923752&ticket=IK4gi74h1BfKLY+
j6WyGbCnlDtYhzpZEMSdgOCGJc/Mcjh1hkl472eXjJW54B8EbQSnYbR/OmQjwpB7Hdm8
GKvIPZbQmouAugskje76jmM4=
Soap Request
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getNBRConfIdList
soapenv:encodingStyle=
"http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="nbrXmlService">
<siteId href="#id0"/>
<ticket xsi:type="xsd:string">
T6GJfsFPttOvVCFCzAEsOWZDUqmnScawEfc5aghK5MJTgtJyYrEMZTT3
4L9E2L+SZ4ZUVTNv2FlEk9/khkrFSvIPZbQmouAugskje76jmM4=
</ticket>
</ns1:getNBRConfIdList>
<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="xsd:long" xmlns:soapenc=
"http://schemas.xmlsoap.org/soap/encoding/">
400011074
getNBRConfIdListResponse
getNBRConfIdListReturn XML Document. Returns the confID list for the WebEx
service: MC, TC, EC, SaC, SC.
XML listing:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getNBRConfIdListResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="nbrXmlService">
<ns1:getNBRConfIdListReturn href="#id0"/>
</ns1:getNBRConfIdListResponse>
<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:Document"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://xml.apache.org/xml-soap">
<NBRConfIDList>
<ConfID>258287597</ConfID>
<ConfID>258287598</ConfID>
<ConfID>1036379567</ConfID>
<ConfID>258270170</ConfID>
<ConfID>258209834</ConfID>
<ConfID>258153118</ConfID>
<ConfID>258270145</ConfID>
<ConfID>258128714</ConfID>
<ConfID>258270149</ConfID>
<ConfID>258270148</ConfID>
getNBRRecordIdListRequest
Soap Request
POST /nbr/services HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related,
text/*
User-Agent: Axis/1.2.1
Host: 10.224.57.91:2001
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 717
XML Listing
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
getNBRRecordIdListResponse
When the user retrieves the RecordIdList, the RecordId parameter has two possible
values:
■ NBR - Denotes that the recording being retrieved was created by the NBR
system.
■ Upload - Denotes that the recording being retrieved was uploaded to the
servers by a user and not created by the NBR system.
RecordId {NBR, Upload} Denotes the recording was uploaded by a user or created by
NBR.
SOAP Response
HTTP/1.1 200 OK
Date: Wed, 10 Dec 2008 08:01:26 GMT
Content-Type: text/xml; charset=utf-8
Connection: Close
XML Listing
<?xml version="1.0" encoding="UTF-8"?>