class WebexXmlApi::Meeting::CreateMeeting

The CreateMeeting Class sends a Create Meeting request to the WebEx XML API Service and returns a Hash with the meeting key of the newly created meeting

Constants

REQUEST_TYPE

XML Request Type for the WebexXmlApi::Meeting::CreateMeeting service

Attributes

meeting[RW]

Accessor methods for meeting and security_context object

request[R]

Reader methods for request and response objects

response[R]

Reader methods for request and response objects

security_context[RW]

Accessor methods for meeting and security_context object

Public Class Methods

new(attributes = {}) click to toggle source

The initialize method for newly created instance parsing provided parameters (if any). The initialize method automaticaly creates new SecurityContext instance and passes the attribes.

# File lib/webex_xml_api/meeting/create_meeting.rb, line 26
def initialize(attributes = {})
  @security_context ||= WebexXmlApi::SecurityContext.new(attributes)
  @meeting ||= []
  init_meeting_object
end

Public Instance Methods

send_request() click to toggle source

The send_request method will issue the XML API request to WebEx, parse the results and return data if successful. Upon failure an exception is raised.

# File lib/webex_xml_api/meeting/create_meeting.rb, line 57
def send_request
  @request = to_xml
  @response = post_webex_request(security_context.site_name, @request)
  check_response_and_return_data(@response)
end
to_xml() click to toggle source

The to_xml method returns XML representation of the WebexXmlApi::Meeting::CreateMeeting instance as understood by the WebEx XML Service.

# File lib/webex_xml_api/meeting/create_meeting.rb, line 37
def to_xml
  raise WebexXmlApi::NotEnoughArguments,
        'Meeting::CreateMeeting' unless valid?
  create_xml_request(@security_context.to_xml, REQUEST_TYPE, @meeting)
end
valid?(context = self) click to toggle source

Returns true if required parameters provided, otherwise false.

# File lib/webex_xml_api/meeting/create_meeting.rb, line 46
def valid?(context = self)
  return false if context.conf_name.nil?
  return false if context.start_date.nil? || context.duration.nil?
  true
end

Getter and Setter Methods

↑ top

Public Instance Methods

agenda() click to toggle source

The agenda getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 80
def agenda
  @meeting['metaData']['agenda']
end
agenda=(str) click to toggle source

The agenda setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 85
def agenda=(str)
  @meeting['metaData']['agenda'] = str
end
conf_name() click to toggle source

The conf_name getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 70
def conf_name
  @meeting['metaData']['confName']
end
conf_name=(str) click to toggle source

The conf_name setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 75
def conf_name=(str)
  @meeting['metaData']['confName'] = str
end
duration() click to toggle source

The duration getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 116
def duration
  @meeting['schedule']['duration']
end
duration=(str) click to toggle source

The duration setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 121
def duration=(str)
  @meeting['schedule']['duration'] = str
end
enable_attendee_list() click to toggle source

The enable_attendee_list getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 218
def enable_attendee_list
  @meeting['enableOptions']['attendeeList']
end
enable_attendee_list=(str) click to toggle source

The enable_attendee_list setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 223
def enable_attendee_list=(str)
  @meeting['enableOptions']['attendeeList'] = str
end
enable_audio_video() click to toggle source

The enable_audio_video getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 208
def enable_audio_video
  @meeting['enableOptions']['audioVideo']
end
enable_audio_video=(str) click to toggle source

The enable_audio_video setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 213
def enable_audio_video=(str)
  @meeting['enableOptions']['audioVideo'] = str
end
enable_chat() click to toggle source

The enable_chat getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 198
def enable_chat
  @meeting['enableOptions']['chat']
end
enable_chat=(str) click to toggle source

The enable_chat setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 203
def enable_chat=(str)
  @meeting['enableOptions']['chat'] = str
end
first_attendee_as_presenter() click to toggle source

The first_attendee_as_presenter getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 146
def first_attendee_as_presenter
  @meeting['schedule']['firstAttendeeAsPresenter']
end
first_attendee_as_presenter=(str) click to toggle source

The first_attendee_as_presenter setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 151
def first_attendee_as_presenter=(str)
  @meeting['schedule']['firstAttendeeAsPresenter'] = str
end
intl_local_call_in() click to toggle source

The intl_local_call_in getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 166
def intl_local_call_in
  @meeting['telephony']['intlLocalCallIn']
end
intl_local_call_in=(str) click to toggle source

The intl_local_call_in setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 171
def intl_local_call_in=(str)
  @meeting['telephony']['intlLocalCallIn'] = str
end
is_mp_audio() click to toggle source

The is_mp_audio getter rubocop:disable PredicateName

# File lib/webex_xml_api/meeting/create_meeting.rb, line 187
def is_mp_audio
  @meeting['telephony']['isMPAudio']
end
is_mp_audio=(str) click to toggle source

The is_mp_audio setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 192
def is_mp_audio=(str)
  @meeting['telephony']['isMPAudio'] = str
end
join_teleconf_before_host() click to toggle source

The join_teleconf_before_host getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 136
def join_teleconf_before_host
  @meeting['schedule']['joinTeleconfBeforeHost']
end
join_teleconf_before_host=(str) click to toggle source

The join_teleconf_before_host setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 141
def join_teleconf_before_host=(str)
  @meeting['schedule']['joinTeleconfBeforeHost'] = str
end
meeting_password() click to toggle source

The meeting_password getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 90
def meeting_password
  @meeting['accessControl']['meetingPassword']
end
meeting_password=(str) click to toggle source

The meeting_password setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 95
def meeting_password=(str)
  @meeting['accessControl']['meetingPassword'] = str
end
open_time() click to toggle source

The open_time getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 126
def open_time
  @meeting['schedule']['openTime']
end
open_time=(str) click to toggle source

The open_time setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 131
def open_time=(str)
  @meeting['schedule']['openTime'] = str
end
start_date() click to toggle source

The start_date getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 100
def start_date
  @meeting['schedule']['startDate']
end
start_date=(str) click to toggle source

The start_date setter Paremeter provided can be either a String in a MM/DD/YYYY HH:MI:SS format or a DateTime object that is formatted to fit the WebEx format.

# File lib/webex_xml_api/meeting/create_meeting.rb, line 107
def start_date=(str)
  if str.is_a? String
    @meeting['schedule']['startDate'] = str
  elsif str.is_a? DateTime
    @meeting['schedule']['startDate'] = str.strftime('%m/%d/%Y %H:%M:%S')
  end
end
teleconf_location() click to toggle source

The teleconf_location getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 176
def teleconf_location
  @meeting['telephony']['teleconfLocation']
end
teleconf_location=(str) click to toggle source

The teleconf_location setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 181
def teleconf_location=(str)
  @meeting['telephony']['teleconfLocation'] = str
end
telephony_support() click to toggle source

The telephony_support getter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 156
def telephony_support
  @meeting['telephony']['telephonySupport']
end
telephony_support=(str) click to toggle source

The telephony_support setter

# File lib/webex_xml_api/meeting/create_meeting.rb, line 161
def telephony_support=(str)
  @meeting['telephony']['telephonySupport'] = str
end

Private Instance Methods

init_meeting_object() click to toggle source
# File lib/webex_xml_api/meeting/create_meeting.rb, line 229
def init_meeting_object
  @meeting = {
    'accessControl' => {
      'listToPublic' => nil,
      'isPublic' => nil,
      'meetingPassword' => nil,
      'enforcePassword' => nil
    },
    'metaData' => {
      'confName' => nil,
      'meetingType' => nil,
      'agenda' => nil,
      'greeting' => nil,
      'location' => nil,
      'invitation' => nil,
      'setNonMTOptions' => nil,
      'sessionTemplate' => nil,
      'isInternal' => nil
    },
    'schedule' => {
      'startDate' => nil,
      'timeZoneID' => nil,
      'timeZone' => nil,
      'duration' => nil,
      'openTime' => nil,
      'hostWebExID' => nil,
      'templateFilePath' => nil,
      'showFilePath' => nil,
      'showFileStartMode' => nil,
      'showFileContPlayFlag' => nil,
      'showFileInterVal' => nil,
      'entryExitTone' => nil,
      'extURL' => nil,
      'extNotifyTime' => nil,
      'joinNotifyURL' => nil,
      'joinTeleconfBeforeHost' => nil,
      'firstAttendeeAsPresenter' => nil
    },
    'telephony' => {
      'telephonySupport' => nil,
      'numPhoneLines' => nil,
      'extTelephonyURL' => nil,
      'extTelephonyDescription' => nil,
      'enableTSP' => nil,
      'tspAccountIndex' => nil,
      'personalAccountIndex' => nil,
      'intlLocalCallIn' => nil,
      'teleconfLocation' => nil,
      'callInNum' => nil,
      'tspConference' => nil,
      'tspAccessCodeOrder' => nil,
      'tollFree' => nil,
      'isMPAudio' => nil
    },
    'participants' => {
      'maxUserNumber' => nil,
      'attendees' => nil
    },
    'enableOptions' => {
      'chat' => nil,
      'poll' => nil,
      'audioVideo' => nil,
      'attendeeList' => nil,
      'fileShare' => nil,
      'presentation' => nil,
      'applicationShare' => nil,
      'desktopShare' => nil,
      'webTour' => nil,
      'meetingRecord' => nil,
      'annotation' => nil,
      'importDocument' => nil,
      'saveDocument' => nil,
      'printDocument' => nil,
      'pointer' => nil,
      'switchPage' => nil,
      'fullScreen' => nil,
      'thumbnail' => nil,
      'zoom' => nil,
      'copyPage' => nil,
      'rcAppShare' => nil,
      'rcDesktopShare' => nil,
      'rcWebTour' => nil,
      'javaClient' => nil,
      'nativeClient' => nil,
      'attendeeRecordMeeting' => nil,
      'voip' => nil,
      'faxIntoMeeting' => nil,
      'enableReg' => nil,
      'supportQandA' => nil,
      'supportFeedback' => nil,
      'supportBreakoutSessions' => nil,
      'supportPanelists' => nil,
      'supportRemoteComputer' => nil,
      'supportShareWebContent' => nil,
      'supportUCFWebPages' => nil,
      'supportUCFRichMedia' => nil,
      'autoDeleteAfterMeetingEnd' => nil,
      'viewAnyDoc' => nil,
      'viewAnyPage' => nil,
      'allowContactPrivate' => nil,
      'chatHost' => nil,
      'chatPresenter' => nil,
      'chatAllAttendees' => nil,
      'multiVideo' => nil,
      'notes' => nil,
      'closedCaptions' => nil,
      'singleNote' => nil,
      'sendFeedback' => nil,
      'displayQuickStartHost' => nil,
      'displayQuickStartAttendees' => nil,
      'supportE2E' => nil,
      'supportPKI' => nil,
      'HQvideo' => nil,
      'HDvideo' => nil,
      'viewVideoThumbs' => nil
    },
    'tracking' => {
      'trackingCode1' => nil,
      'trackingCode2' => nil,
      'trackingCode3' => nil,
      'trackingCode4' => nil,
      'trackingCode5' => nil,
      'trackingCode6' => nil,
      'trackingCode7' => nil,
      'trackingCode8' => nil,
      'trackingCode9' => nil,
      'trackingCode10' => nil
    },
    'repeat' => {
      'repeatType' => nil,
      'interval' => nil,
      'afterMeetingNumber' => nil,
      'dayInWeek' => nil,
      'expirationDate' => nil,
      'dayInMonth' => nil,
      'weekInMonth' => nil,
      'monthInYear' => nil,
      'dayInYear' => nil,
      'isException' => nil,
      'seriesMeetingKey' => nil,
      'hasException' => nil
    },
    'remind' => {
      'enableReminder' => nil,
      'emails' => nil,
      'sendEmail' => nil,
      'mobile' => nil,
      'sendMobile' => nil,
      'daysAhead' => nil,
      'hoursAhead' => nil,
      'minutesAhead' => nil
    },
    'attendeeOptions' => {
      'request' => nil,
      'registration' => nil,
      'auto' => nil,
      'emailInvitations' => nil,
      'participantLimit' => nil,
      'excludePassword' => nil,
      'joinRequiresAccount' => nil
    },
    'assistService' => {
      'assistRequest' => nil,
      'assistConfirm' => nil
    }
  }
end