webex_xml_api 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- checksums.yaml.gz.sig +1 -0
- data.tar.gz.sig +1 -0
- data/.gitignore +12 -0
- data/.rspec +2 -0
- data/.rubocop.yml +16 -0
- data/.simplecov +1 -0
- data/.travis.yml +8 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +94 -0
- data/Rakefile +7 -0
- data/certs/erolms.pem +21 -0
- data/lib/webex_xml_api.rb +11 -0
- data/lib/webex_xml_api/common.rb +52 -0
- data/lib/webex_xml_api/exceptions.rb +21 -0
- data/lib/webex_xml_api/meeting/create_meeting.rb +326 -0
- data/lib/webex_xml_api/meeting/del_meeting.rb +44 -0
- data/lib/webex_xml_api/meeting/get_meeting.rb +44 -0
- data/lib/webex_xml_api/meeting/getjoinurl_meeting.rb +45 -0
- data/lib/webex_xml_api/security_context.rb +43 -0
- data/lib/webex_xml_api/user/get_user.rb +43 -0
- data/lib/webex_xml_api/version.rb +3 -0
- data/spec/fixtures/meeting_create_meeting_request.xml +9 -0
- data/spec/fixtures/meeting_create_meeting_response_bad.xml +12 -0
- data/spec/fixtures/meeting_create_meeting_response_good.xml +12 -0
- data/spec/fixtures/meeting_del_meeting_request.xml +9 -0
- data/spec/fixtures/meeting_del_meeting_response_bad.xml +12 -0
- data/spec/fixtures/meeting_del_meeting_response_good.xml +12 -0
- data/spec/fixtures/meeting_get_meeting_request.xml +9 -0
- data/spec/fixtures/meeting_get_meeting_response_bad.xml +12 -0
- data/spec/fixtures/meeting_get_meeting_response_good.xml +12 -0
- data/spec/fixtures/meeting_getjoinurl_meeting_request.xml +9 -0
- data/spec/fixtures/meeting_getjoinurl_meeting_response_bad.xml +12 -0
- data/spec/fixtures/meeting_getjoinurl_meeting_response_good.xml +12 -0
- data/spec/fixtures/user_get_user_request.xml +9 -0
- data/spec/fixtures/user_get_user_response_bad.xml +12 -0
- data/spec/fixtures/user_get_user_response_good.xml +12 -0
- data/spec/spec_helper.rb +9 -0
- data/spec/webex_xml_api/common_spec.rb +7 -0
- data/spec/webex_xml_api/exceptions_spec.rb +54 -0
- data/spec/webex_xml_api/meeting/create_meeting_spec.rb +131 -0
- data/spec/webex_xml_api/meeting/del_meeting_spec.rb +85 -0
- data/spec/webex_xml_api/meeting/get_meeting_spec.rb +85 -0
- data/spec/webex_xml_api/meeting/getjoinurl_meeting_spec.rb +87 -0
- data/spec/webex_xml_api/security_context_spec.rb +60 -0
- data/spec/webex_xml_api/user/get_user_spec.rb +82 -0
- data/spec/webex_xml_api_spec.rb +7 -0
- data/webex_xml_api.gemspec +32 -0
- metadata +249 -0
- metadata.gz.sig +1 -0
@@ -0,0 +1,44 @@
|
|
1
|
+
module WebexXmlApi
|
2
|
+
module Meeting
|
3
|
+
class DelMeeting
|
4
|
+
include WebexXmlApi::Common
|
5
|
+
|
6
|
+
REQUEST_TYPE = 'java:com.webex.service.binding.meeting.DelMeeting'.freeze
|
7
|
+
PARAMETER_MAPPING = {
|
8
|
+
meeting_key: 'meetingKey'
|
9
|
+
}.freeze
|
10
|
+
|
11
|
+
attr_accessor :meeting_key, :security_context
|
12
|
+
attr_reader :request, :response
|
13
|
+
|
14
|
+
def initialize(attributes = {})
|
15
|
+
attributes.each_pair do |k, v|
|
16
|
+
send("#{k}=", v) if PARAMETER_MAPPING.key?(k)
|
17
|
+
end
|
18
|
+
@security_context ||= WebexXmlApi::SecurityContext.new(attributes)
|
19
|
+
end
|
20
|
+
|
21
|
+
def to_xml
|
22
|
+
raise WebexXmlApi::NotEnoughArguments,
|
23
|
+
'Meeting::DelMeeting' unless valid?
|
24
|
+
body_content = {}
|
25
|
+
PARAMETER_MAPPING.each_pair do |k, v|
|
26
|
+
body_content[v] = send(k) if send(k)
|
27
|
+
end
|
28
|
+
create_xml_request(@security_context.to_xml, REQUEST_TYPE,
|
29
|
+
body_content)
|
30
|
+
end
|
31
|
+
|
32
|
+
def valid?(context = self)
|
33
|
+
return false if context.meeting_key.nil?
|
34
|
+
true
|
35
|
+
end
|
36
|
+
|
37
|
+
def send_request
|
38
|
+
@request = to_xml
|
39
|
+
@response = post_webex_request(security_context.site_name, @request)
|
40
|
+
check_response_and_return_data(@response)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module WebexXmlApi
|
2
|
+
module Meeting
|
3
|
+
class GetMeeting
|
4
|
+
include WebexXmlApi::Common
|
5
|
+
|
6
|
+
REQUEST_TYPE = 'java:com.webex.service.binding.meeting.GetMeeting'.freeze
|
7
|
+
PARAMETER_MAPPING = {
|
8
|
+
meeting_key: 'meetingKey'
|
9
|
+
}.freeze
|
10
|
+
|
11
|
+
attr_accessor :meeting_key, :security_context
|
12
|
+
attr_reader :request, :response
|
13
|
+
|
14
|
+
def initialize(attributes = {})
|
15
|
+
attributes.each_pair do |k, v|
|
16
|
+
send("#{k}=", v) if PARAMETER_MAPPING.key?(k)
|
17
|
+
end
|
18
|
+
@security_context ||= WebexXmlApi::SecurityContext.new(attributes)
|
19
|
+
end
|
20
|
+
|
21
|
+
def to_xml
|
22
|
+
raise WebexXmlApi::NotEnoughArguments,
|
23
|
+
'Meeting::GetMeeting' unless valid?
|
24
|
+
body_content = {}
|
25
|
+
PARAMETER_MAPPING.each_pair do |k, v|
|
26
|
+
body_content[v] = send(k) if send(k)
|
27
|
+
end
|
28
|
+
create_xml_request(@security_context.to_xml, REQUEST_TYPE,
|
29
|
+
body_content)
|
30
|
+
end
|
31
|
+
|
32
|
+
def valid?(context = self)
|
33
|
+
return false if context.meeting_key.nil?
|
34
|
+
true
|
35
|
+
end
|
36
|
+
|
37
|
+
def send_request
|
38
|
+
@request = to_xml
|
39
|
+
@response = post_webex_request(security_context.site_name, @request)
|
40
|
+
check_response_and_return_data(@response)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module WebexXmlApi
|
2
|
+
module Meeting
|
3
|
+
class GetjoinurlMeeting
|
4
|
+
include WebexXmlApi::Common
|
5
|
+
|
6
|
+
REQUEST_TYPE =
|
7
|
+
'java:com.webex.service.binding.meeting.GetjoinurlMeeting'.freeze
|
8
|
+
PARAMETER_MAPPING = {
|
9
|
+
session_key: 'sessionKey'
|
10
|
+
}.freeze
|
11
|
+
|
12
|
+
attr_accessor :session_key, :security_context
|
13
|
+
attr_reader :request, :response
|
14
|
+
|
15
|
+
def initialize(attributes = {})
|
16
|
+
attributes.each_pair do |k, v|
|
17
|
+
send("#{k}=", v) if PARAMETER_MAPPING.key?(k)
|
18
|
+
end
|
19
|
+
@security_context ||= WebexXmlApi::SecurityContext.new(attributes)
|
20
|
+
end
|
21
|
+
|
22
|
+
def to_xml
|
23
|
+
raise WebexXmlApi::NotEnoughArguments,
|
24
|
+
'Meeting::GetjoinurlMeeting' unless valid?
|
25
|
+
body_content = {}
|
26
|
+
PARAMETER_MAPPING.each_pair do |k, v|
|
27
|
+
body_content[v] = send(k) if send(k)
|
28
|
+
end
|
29
|
+
create_xml_request(@security_context.to_xml, REQUEST_TYPE,
|
30
|
+
body_content)
|
31
|
+
end
|
32
|
+
|
33
|
+
def valid?(context = self)
|
34
|
+
return false if context.session_key.nil?
|
35
|
+
true
|
36
|
+
end
|
37
|
+
|
38
|
+
def send_request
|
39
|
+
@request = to_xml
|
40
|
+
@response = post_webex_request(security_context.site_name, @request)
|
41
|
+
check_response_and_return_data(@response)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
module WebexXmlApi
|
2
|
+
class SecurityContext
|
3
|
+
PARAMETER_MAPPING = {
|
4
|
+
webex_id: 'webExID',
|
5
|
+
password: 'password',
|
6
|
+
site_id: 'siteID',
|
7
|
+
site_name: 'siteName',
|
8
|
+
partner_id: 'partnerID',
|
9
|
+
email: 'email',
|
10
|
+
session_ticket: 'sessionTicket',
|
11
|
+
client_id: 'clientID',
|
12
|
+
client_secret: 'clientSecret'
|
13
|
+
}.freeze
|
14
|
+
|
15
|
+
PARAMETER_MAPPING.each_key { |k| attr_accessor k }
|
16
|
+
|
17
|
+
def initialize(attributes = {})
|
18
|
+
attributes.each_pair do |k, v|
|
19
|
+
send("#{k}=", v) if PARAMETER_MAPPING.key?(k)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def to_xml
|
24
|
+
raise WebexXmlApi::NotEnoughArguments, 'SecurityContext' unless valid?
|
25
|
+
builder = Nokogiri::XML::Builder.new(encoding: 'UTF-8') do |xml|
|
26
|
+
xml.header do
|
27
|
+
xml.securityContext do
|
28
|
+
PARAMETER_MAPPING.each_pair do |k, v|
|
29
|
+
xml.send(v, send(k)) if send(k)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
builder.to_xml.gsub("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n", '')
|
35
|
+
end
|
36
|
+
|
37
|
+
def valid?(context = self)
|
38
|
+
return false if context.site_name.nil? || context.webex_id.nil?
|
39
|
+
return false if context.password.nil? && context.session_ticket.nil?
|
40
|
+
true
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
module WebexXmlApi
|
2
|
+
module User
|
3
|
+
class GetUser
|
4
|
+
include WebexXmlApi::Common
|
5
|
+
|
6
|
+
REQUEST_TYPE = 'java:com.webex.service.binding.user.GetUser'.freeze
|
7
|
+
PARAMETER_MAPPING = {
|
8
|
+
webex_id: 'webExId'
|
9
|
+
}.freeze
|
10
|
+
|
11
|
+
attr_accessor :webex_id, :security_context
|
12
|
+
attr_reader :request, :response
|
13
|
+
|
14
|
+
def initialize(attributes = {})
|
15
|
+
attributes.each_pair do |k, v|
|
16
|
+
send("#{k}=", v) if PARAMETER_MAPPING.key?(k)
|
17
|
+
end
|
18
|
+
@security_context ||= WebexXmlApi::SecurityContext.new(attributes)
|
19
|
+
end
|
20
|
+
|
21
|
+
def to_xml
|
22
|
+
raise WebexXmlApi::NotEnoughArguments, 'User::GetUser' unless valid?
|
23
|
+
body_content = {}
|
24
|
+
PARAMETER_MAPPING.each_pair do |k, v|
|
25
|
+
body_content[v] = send(k) if send(k)
|
26
|
+
end
|
27
|
+
create_xml_request(@security_context.to_xml, REQUEST_TYPE,
|
28
|
+
body_content)
|
29
|
+
end
|
30
|
+
|
31
|
+
def valid?(context = self)
|
32
|
+
return false if context.webex_id.nil?
|
33
|
+
true
|
34
|
+
end
|
35
|
+
|
36
|
+
def send_request
|
37
|
+
@request = to_xml
|
38
|
+
@response = post_webex_request(security_context.site_name, @request)
|
39
|
+
check_response_and_return_data(@response)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service"><header>
|
3
|
+
<securityContext>
|
4
|
+
<webExID>123456</webExID>
|
5
|
+
<password>test</password>
|
6
|
+
<siteName>test</siteName>
|
7
|
+
</securityContext>
|
8
|
+
</header>
|
9
|
+
<body><bodyContent xsi:type="java:com.webex.service.binding.meeting.CreateMeeting"><metaData><confName>Test-Meeting via XML API</confName></metaData><schedule><startDate>07/30/2016 15:00:00</startDate><duration>60</duration></schedule></bodyContent></body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Thu, 28 Jul 2016 11:08:58 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>FAILURE</serv:result><serv:reason>Meeting password must not be null</serv:reason><serv:gsbStatus>PRIMARY</serv:gsbStatus><serv:exceptionID>060026</serv:exceptionID></serv:response></serv:header><serv:body><serv:bodyContent/></serv:body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Thu, 28 Jul 2016 11:08:35 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>SUCCESS</serv:result><serv:gsbStatus>PRIMARY</serv:gsbStatus></serv:response></serv:header><serv:body><serv:bodyContent xsi:type="meet:createMeetingResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><meet:meetingkey>123456789</meet:meetingkey><meet:iCalendarURL><serv:host>https://test.webex.com/test/j.php?MTID=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</serv:host><serv:attendee>https://test.webex.com/test/j.php?MTID=bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</serv:attendee></meet:iCalendarURL><meet:guestToken>cccccccccccccccccccccccccccccccc</meet:guestToken></serv:bodyContent></serv:body></serv:message>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service"><header>
|
3
|
+
<securityContext>
|
4
|
+
<webExID>123456</webExID>
|
5
|
+
<password>test</password>
|
6
|
+
<siteName>test</siteName>
|
7
|
+
</securityContext>
|
8
|
+
</header>
|
9
|
+
<body><bodyContent xsi:type="java:com.webex.service.binding.meeting.DelMeeting"><meetingKey>123456789</meetingKey></bodyContent></body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Thu, 28 Jul 2016 08:07:30 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>FAILURE</serv:result><serv:reason>Corresponding Meeting not found</serv:reason><serv:gsbStatus>PRIMARY</serv:gsbStatus><serv:exceptionID>060001</serv:exceptionID></serv:response></serv:header><serv:body><serv:bodyContent/></serv:body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Thu, 28 Jul 2016 08:09:03 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>SUCCESS</serv:result><serv:gsbStatus>PRIMARY</serv:gsbStatus></serv:response></serv:header><serv:body><serv:bodyContent xsi:type="meet:delMeetingResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><meet:iCalendarURL><serv:host>https://test.webex.com/test/j.php?ED=123456789&UID=123456789&LD=9&RD=8&ST=1&CN=54:65:73:74:2D:4D:65:65:74:69:6E:67:20:76:69:61:20:58:4D:4C:20:41:50:49&STI=2016-07-20-15-30-00&ETI=2016-07-20-16-00-00&TD=25&ICS=CMC</serv:host><serv:attendee>https://test.webex.com/test/j.php?ED=123456789&UID=123456789&LD=9&RD=8&ST=1&CN=54:65:73:74:2D:4D:65:65:74:69:6E:67:20:76:69:61:20:58:4D:4C:20:41:50:49&STI=2016-07-20-15-30-00&ETI=2016-07-20-16-00-00&TD=25&ICS=MC</serv:attendee></meet:iCalendarURL></serv:bodyContent></serv:body></serv:message>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service"><header>
|
3
|
+
<securityContext>
|
4
|
+
<webExID>123456</webExID>
|
5
|
+
<password>test</password>
|
6
|
+
<siteName>test</siteName>
|
7
|
+
</securityContext>
|
8
|
+
</header>
|
9
|
+
<body><bodyContent xsi:type="java:com.webex.service.binding.meeting.GetMeeting"><meetingKey>123456789</meetingKey></bodyContent></body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Wed, 27 Jul 2016 19:14:26 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>FAILURE</serv:result><serv:reason>Corresponding Meeting not found</serv:reason><serv:gsbStatus>PRIMARY</serv:gsbStatus><serv:exceptionID>060001</serv:exceptionID></serv:response></serv:header><serv:body><serv:bodyContent/></serv:body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Wed, 27 Jul 2016 19:13:47 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>SUCCESS</serv:result><serv:gsbStatus>PRIMARY</serv:gsbStatus></serv:response></serv:header><serv:body><serv:bodyContent xsi:type="meet:getMeetingResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><meet:accessControl><meet:listToPublic>false</meet:listToPublic><meet:isPublic>false</meet:isPublic><meet:meetingPassword>123456</meet:meetingPassword></meet:accessControl><meet:metaData><meet:confName>Test-Meeting via XML API</meet:confName><meet:meetingType>74377</meet:meetingType><meet:agenda>Meeting Agenda</meet:agenda><meet:invitation></meet:invitation><meet:isInternal>false</meet:isInternal></meet:metaData><meet:participants><meet:maxUserNumber>4</meet:maxUserNumber><meet:attendees/></meet:participants><meet:enableOptions><meet:chat>true</meet:chat><meet:poll>true</meet:poll><meet:audioVideo>true</meet:audioVideo><meet:attendeeList>false</meet:attendeeList><meet:fileShare>false</meet:fileShare><meet:presentation>true</meet:presentation><meet:applicationShare>true</meet:applicationShare><meet:desktopShare>true</meet:desktopShare><meet:webTour>true</meet:webTour><meet:meetingRecord>false</meet:meetingRecord><meet:annotation>false</meet:annotation><meet:importDocument>false</meet:importDocument><meet:saveDocument>false</meet:saveDocument><meet:printDocument>false</meet:printDocument><meet:pointer>false</meet:pointer><meet:switchPage>false</meet:switchPage><meet:fullScreen>false</meet:fullScreen><meet:thumbnail>false</meet:thumbnail><meet:zoom>false</meet:zoom><meet:copyPage>false</meet:copyPage><meet:rcAppShare>true</meet:rcAppShare><meet:rcDesktopShare>true</meet:rcDesktopShare><meet:rcWebTour>false</meet:rcWebTour><meet:javaClient>false</meet:javaClient><meet:nativeClient>false</meet:nativeClient><meet:attendeeRecordMeeting>false</meet:attendeeRecordMeeting><meet:voip>false</meet:voip><meet:faxIntoMeeting>false</meet:faxIntoMeeting><meet:enableReg>false</meet:enableReg><meet:supportQandA>true</meet:supportQandA><meet:supportFeedback>true</meet:supportFeedback><meet:supportBreakoutSessions>false</meet:supportBreakoutSessions><meet:supportPanelists>false</meet:supportPanelists><meet:supportRemoteComputer>false</meet:supportRemoteComputer><meet:supportShareWebContent>true</meet:supportShareWebContent><meet:supportUCFWebPages>false</meet:supportUCFWebPages><meet:supportUCFRichMedia>false</meet:supportUCFRichMedia><meet:autoDeleteAfterMeetingEnd>false</meet:autoDeleteAfterMeetingEnd><meet:viewAnyDoc>false</meet:viewAnyDoc><meet:viewAnyPage>false</meet:viewAnyPage><meet:allowContactPrivate>false</meet:allowContactPrivate><meet:chatHost>false</meet:chatHost><meet:chatPresenter>false</meet:chatPresenter><meet:chatAllAttendees>false</meet:chatAllAttendees><meet:multiVideo>false</meet:multiVideo><meet:notes>true</meet:notes><meet:closedCaptions>false</meet:closedCaptions><meet:singleNote>false</meet:singleNote><meet:sendFeedback>false</meet:sendFeedback><meet:displayQuickStartHost>false</meet:displayQuickStartHost><meet:displayQuickStartAttendees>false</meet:displayQuickStartAttendees><meet:supportE2E>false</meet:supportE2E><meet:supportPKI>false</meet:supportPKI><meet:HQvideo>false</meet:HQvideo><meet:HDvideo>false</meet:HDvideo><meet:viewVideoThumbs>true</meet:viewVideoThumbs></meet:enableOptions><meet:schedule><meet:startDate>07/20/2016 15:30:00</meet:startDate><meet:timeZoneID>25</meet:timeZoneID><meet:timeZone>GMT+01:00, Europe (Berlin)</meet:timeZone><meet:duration>30</meet:duration><meet:openTime>300</meet:openTime><meet:hostWebExID>123456</meet:hostWebExID><meet:showFileStartMode>false</meet:showFileStartMode><meet:showFileContPlayFlag>false</meet:showFileContPlayFlag><meet:showFileInterVal>0</meet:showFileInterVal><meet:entryExitTone>0</meet:entryExitTone><meet:extNotifyTime>0</meet:extNotifyTime><meet:joinTeleconfBeforeHost>true</meet:joinTeleconfBeforeHost><meet:firstAttendeeAsPresenter>true</meet:firstAttendeeAsPresenter></meet:schedule><meet:telephony><meet:telephonySupport>CALLIN</meet:telephonySupport><meet:numPhoneLines>50</meet:numPhoneLines><meet:enableTSP>false</meet:enableTSP><meet:intlLocalCallIn>false</meet:intlLocalCallIn><meet:callInNum/><meet:isMPAudio>true</meet:isMPAudio></meet:telephony><meet:tracking/><meet:repeat><meet:repeatType>NO_REPEAT</meet:repeatType></meet:repeat><meet:remind/><meet:attendeeOptions><meet:request>false</meet:request><meet:registration>false</meet:registration><meet:auto>false</meet:auto><meet:participantLimit>0</meet:participantLimit><meet:excludePassword>false</meet:excludePassword><meet:joinRequiresAccount>false</meet:joinRequiresAccount></meet:attendeeOptions><meet:meetingkey>123456789</meet:meetingkey><meet:status>NOT_INPROGRESS</meet:status><meet:hostJoined>false</meet:hostJoined><meet:participantsJoined>false</meet:participantsJoined><meet:telePresence>false</meet:telePresence><meet:hostKey>123456</meet:hostKey><meet:eventID>123456789</meet:eventID><meet:guestToken>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</meet:guestToken><meet:hostType>1019001</meet:hostType></serv:bodyContent></serv:body></serv:message>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service"><header>
|
3
|
+
<securityContext>
|
4
|
+
<webExID>123456</webExID>
|
5
|
+
<password>test</password>
|
6
|
+
<siteName>test</siteName>
|
7
|
+
</securityContext>
|
8
|
+
</header>
|
9
|
+
<body><bodyContent xsi:type="java:com.webex.service.binding.meeting.GetjoinurlMeeting"><sessionKey>123456789</sessionKey></bodyContent></body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Thu, 28 Jul 2016 08:00:30 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>FAILURE</serv:result><serv:reason>Corresponding Meeting not found</serv:reason><serv:gsbStatus>PRIMARY</serv:gsbStatus><serv:exceptionID>060001</serv:exceptionID></serv:response></serv:header><serv:body><serv:bodyContent/></serv:body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Thu, 28 Jul 2016 07:59:37 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee"><serv:header><serv:response><serv:result>SUCCESS</serv:result><serv:gsbStatus>PRIMARY</serv:gsbStatus></serv:response></serv:header><serv:body><serv:bodyContent xsi:type="meet:getjoinurlMeetingResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><meet:joinMeetingURL>https://test.webex.com/test/e.php?AT=SI&MK=123456789</meet:joinMeetingURL><meet:inviteMeetingURL>https://test.webex.com/test/j.php?MTID=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</meet:inviteMeetingURL></serv:bodyContent></serv:body></serv:message>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service"><header>
|
3
|
+
<securityContext>
|
4
|
+
<webExID>123456</webExID>
|
5
|
+
<password>test</password>
|
6
|
+
<siteName>test</siteName>
|
7
|
+
</securityContext>
|
8
|
+
</header>
|
9
|
+
<body><bodyContent xsi:type="java:com.webex.service.binding.user.GetUser"><webExId>123456</webExId></bodyContent></body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Tue, 26 Jul 2016 19:42:30 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:use="http://www.webex.com/schemas/2002/06/service/user"><serv:header><serv:response><serv:result>FAILURE</serv:result><serv:reason>Not a valid session ticket</serv:reason><serv:gsbStatus>PRIMARY</serv:gsbStatus><serv:exceptionID>030047</serv:exceptionID></serv:response></serv:header><serv:body><serv:bodyContent/></serv:body></serv:message>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Date: Tue, 26 Jul 2016 19:41:21 GMT
|
3
|
+
Server:
|
4
|
+
Pragma: no-cache
|
5
|
+
Cache-Control: no-cache
|
6
|
+
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
7
|
+
Content-Type: text/xml;charset=UTF-8
|
8
|
+
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
|
9
|
+
Transfer-Encoding: chunked
|
10
|
+
|
11
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
12
|
+
<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:use="http://www.webex.com/schemas/2002/06/service/user"><serv:header><serv:response><serv:result>SUCCESS</serv:result><serv:gsbStatus>PRIMARY</serv:gsbStatus></serv:response></serv:header><serv:body><serv:bodyContent xsi:type="use:getUserResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><use:firstName>Firstname</use:firstName><use:lastName>Lastname</use:lastName><use:title>New office</use:title><use:categoryId>36</use:categoryId><use:description>The system automatically creates this office when it creates your user account.</use:description><use:company>Company</use:company><use:webExId>123456</use:webExId><use:address><com:addressType>PERSONAL</com:addressType><com:country>49</com:country></use:address><use:phones><com:phone>49,,,,,,</com:phone><com:mobilePhone>49,,,,,,</com:mobilePhone><com:fax>49,,,,,,</com:fax><use:pager>49,,,,,,</use:pager></use:phones><use:email>123456@mail.com</use:email><use:password>******</use:password><use:expirationDate>none</use:expirationDate><use:commOptions><use:prodAnnounce>false</use:prodAnnounce><use:trainingInfo>false</use:trainingInfo><use:electronicInfo>false</use:electronicInfo><use:promos>false</use:promos><use:press>false</use:press><use:email>false</use:email><use:fax>false</use:fax><use:phone>false</use:phone><use:mail>false</use:mail></use:commOptions><use:meetingTypes><use:meetingType>1</use:meetingType></use:meetingTypes><use:options><use:firstNameVisible>true</use:firstNameVisible><use:lastNameVisible>true</use:lastNameVisible><use:addressVisible>true</use:addressVisible><use:workPhoneVisible>true</use:workPhoneVisible><use:cellPhoneVisible>true</use:cellPhoneVisible><use:pagerVisible>true</use:pagerVisible><use:faxVisible>true</use:faxVisible><use:officeUrlVisible>true</use:officeUrlVisible><use:pictureVisible>true</use:pictureVisible><use:notifyOnNewMessage>true</use:notifyOnNewMessage><use:notifyOnMeeting>true</use:notifyOnMeeting><use:followMeEnable>true</use:followMeEnable><use:emailVisible>true</use:emailVisible><use:listInCategory>true</use:listInCategory><use:titleVisible>true</use:titleVisible><use:folderRead>false</use:folderRead><use:folderWrite>false</use:folderWrite><use:messageVisible>false</use:messageVisible><use:iconSelect1>false</use:iconSelect1><use:iconSelect2>false</use:iconSelect2><use:acceptLinkRequest>false</use:acceptLinkRequest><use:holdOnLinkRequest>true</use:holdOnLinkRequest><use:notifyOnLinkRequest>true</use:notifyOnLinkRequest><use:supportVideo>true</use:supportVideo><use:supportApp>true</use:supportApp><use:supportFileShare>true</use:supportFileShare><use:supportDesktopShare>true</use:supportDesktopShare><use:supportMeetingRecord>true</use:supportMeetingRecord><use:supportAppshareRemote>true</use:supportAppshareRemote><use:supportWebTourRemote>true</use:supportWebTourRemote><use:supportDesktopShareRemote>true</use:supportDesktopShareRemote><use:subscriptionOffice>true</use:subscriptionOffice></use:options><use:timeZoneID>25</use:timeZoneID><use:timeZone>GMT+01:00, Europe (Berlin)</use:timeZone><use:timeZoneWithDST>Berlin (Europe Summer Time, GMT+02:00)</use:timeZoneWithDST><use:tracking/><use:service>FREE_OFFICE</use:service><use:privilege><use:host>true</use:host><use:teleConfCallOut>false</use:teleConfCallOut><use:teleConfCallOutInternational>false</use:teleConfCallOutInternational><use:teleConfCallIn>false</use:teleConfCallIn><use:teleConfTollFreeCallIn>false</use:teleConfTollFreeCallIn><use:siteAdmin>false</use:siteAdmin><use:voiceOverIp>false</use:voiceOverIp><use:roSiteAdmin>false</use:roSiteAdmin><use:labAdmin>false</use:labAdmin><use:otherTelephony>false</use:otherTelephony><use:teleConfCallInInternational>false</use:teleConfCallInInternational><use:attendeeOnly>false</use:attendeeOnly><use:recordingEditor>true</use:recordingEditor><use:meetingAssist>false</use:meetingAssist><use:allowExtAttendees>true</use:allowExtAttendees><use:isEnableCET>false</use:isEnableCET><use:isEnablePMR>false</use:isEnablePMR></use:privilege><use:language>GERMAN</use:language><use:locale>GERMANY</use:locale><use:schedulingPermission>654321</use:schedulingPermission><use:active>ACTIVATED</use:active><use:supportedServices><use:meetingCenter>true</use:meetingCenter><use:trainingCenter>false</use:trainingCenter><use:supportCenter>false</use:supportCenter><use:eventCenter>false</use:eventCenter><use:salesCenter>false</use:salesCenter></use:supportedServices><use:myWebEx><use:isMyWebExPro>false</use:isMyWebExPro><use:myContact>false</use:myContact><use:myProfile>false</use:myProfile><use:myMeetings>true</use:myMeetings><use:myFolders>false</use:myFolders><use:trainingRecordings>false</use:trainingRecordings><use:recordedEvents>false</use:recordedEvents><use:totalStorageSize>0</use:totalStorageSize><use:myReports>false</use:myReports><use:myComputer>0</use:myComputer><use:personalMeetingRoom>false</use:personalMeetingRoom><use:myPartnerLinks>false</use:myPartnerLinks><use:myWorkspaces>false</use:myWorkspaces><use:additionalRecordingStorage>0</use:additionalRecordingStorage></use:myWebEx><use:personalTeleconf><use:joinBeforeHost>false</use:joinBeforeHost></use:personalTeleconf><use:sessionOptions><use:defaultSessionType>1</use:defaultSessionType><use:defaultServiceType>MeetingCenter</use:defaultServiceType><use:autoDeleteAfterMeetingEnd>false</use:autoDeleteAfterMeetingEnd><use:displayQuickStartHost>true</use:displayQuickStartHost><use:displayQuickStartAttendees>false</use:displayQuickStartAttendees></use:sessionOptions><use:supportCenter><use:serviceDesk><use:enable>false</use:enable></use:serviceDesk></use:supportCenter><use:mpProfileNumber>908788</use:mpProfileNumber><use:security><use:forceChangePassword>true</use:forceChangePassword><use:resetPassword>false</use:resetPassword><use:lockAccount>false</use:lockAccount></use:security><use:languageID>9</use:languageID><use:registrationDate>01/01/1970 00:00:01</use:registrationDate><use:visitCount>0</use:visitCount><use:userId>123456789</use:userId><use:passwordExpires>false</use:passwordExpires><use:passwordDaysLeft>0</use:passwordDaysLeft></serv:bodyContent></serv:body></serv:message>
|
data/spec/spec_helper.rb
ADDED