class Plivo::Resources::Conference
Public Class Methods
Source
# File lib/plivo/resources/conferences.rb, line 5 def initialize(client, options = nil) @_name = 'Conference' @_identifier_string = 'conference_name' super @_is_voice_request = true end
Plivo::Base::Resource::new
Public Instance Methods
Source
# File lib/plivo/resources/conferences.rb, line 115 def deaf_member(member_id) valid_param?(:member_id, member_id, Array, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Deaf', 'POST', nil, true) end
@param [Array] member_id
Source
# File lib/plivo/resources/conferences.rb, line 17 def delete_member(member_id) valid_param?(:member_id, member_id, [String, Symbol, Integer, Integer], true) perform_action('Member/' + member_id.to_s, 'DELETE', nil, true) end
@param [String] member_id
Source
# File lib/plivo/resources/conferences.rb, line 23 def kick_member(member_id) valid_param?(:member_id, member_id, [String, Symbol, Integer, Integer], true) perform_action('Member/' + member_id.to_s + '/Kick', 'POST', nil, true) end
@param [String] member_id
Source
# File lib/plivo/resources/conferences.rb, line 29 def mute_member(member_id) valid_param?(:member_id, member_id, Array, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Mute', 'POST', nil, true) end
@param [Array] member_id
Source
# File lib/plivo/resources/conferences.rb, line 49 def play_member(member_id, url) valid_param?(:member_id, member_id, Array, true) valid_param?(:url, url, String, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Play', 'POST', { url: url }, true) end
@param [Array] member_id @param [String] url
Source
# File lib/plivo/resources/conferences.rb, line 151 def record(options = nil) return perform_action('Record', 'POST', nil, true) if options.nil? valid_param?(:options, options, Hash, true) params = {} %i[transcription_url callback_url].each do |param| if options.key?(param) && valid_param?(param, options[param], [String, Symbol], true) params[param] = options[param] end end %i[transcription_method callback_method].each do |param| if options.key?(param) && valid_param?(param, options[param], [String, Symbol], true, %w[GET POST]) params[param] = options[param] end end if options.key?(:file_format) && valid_param?(:file_format, options[:file_format], [String, Symbol], true, %w[wav mp3]) params[:file_format] = options[:file_format] end if options.key?(:transcription_type) && valid_param?(:transcription_type, options[:transcription_type], [String, Symbol], true, %w[auto hybrid]) params[:transcription_type] = options[:transcription_type] end perform_action('Record', 'POST', params, true) end
@param [Hash] options @option options [String] :file_format The file format of the record can be of mp3 or wav format. Defaults to mp3 format. @option options [String] :transcription_type The type of transcription required. The following values are allowed:
- auto - This is the default value. Transcription is completely automated; turnaround time is about 5 minutes. - hybrid - Transcription is a combination of automated and human verification processes; turnaround time is about 10-15 minutes.
@option options [String] :transcription_url The URL where the transcription is available. @option options [String] :transcription_method The method used to invoke the transcription_url. Defaults to POST. @option options [String] :callback_url The URL invoked by the API when the recording ends. The following parameters are sent to the callback_url:
- api_id - the same API ID returned by the conference record API. - record_url - the URL to access the recorded file. - recording_id - recording ID of the recorded file. - conference_name - the conference name recorded. - recording_duration - duration in seconds of the recording. - recording_duration_ms - duration in milliseconds of the recording. - recording_start_ms - when the recording started (epoch time UTC) in milliseconds. - recording_end_ms - when the recording ended (epoch time UTC) in milliseconds.
@option options [String] :callback_method The method which is used to invoke the callback_url URL. Defaults to POST.
Source
# File lib/plivo/resources/conferences.rb, line 74 def speak_member(member_id, text, options = nil) valid_param?(:member_id, member_id, Array, true) valid_param?(:text, text, String, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end params = { text: text } if options.nil? return perform_action('Member/' + member_id.join(',') + '/Speak', 'POST', params, true) end if options.key?(:voice) && valid_param?(:voice, options[:voice], [String, Symbol], true, %w[MAN WOMAN]) params[:voice] = options[:voice] end if options.key?(:language) && valid_param?(:language, options[:language], String, true) params[:language] = options[:language] end perform_action('Member/' + member_id.join(',') + '/Speak', 'POST', params, true) end
@param [Array] member_id @param [String] text - The text that the member must hear. @param [Hash] options @option options [String] :voice - The voice to be used. Can be MAN or WOMAN. Defaults to WOMAN. @option options [String] :language - The language to be used, see Supported voices and languages {www.plivo.com/docs/api/conference/member/#supported-voice-and-languages}. Defaults to en-US .
Source
# File lib/plivo/resources/conferences.rb, line 60 def stop_play_member(member_id) valid_param?(:member_id, member_id, Array, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Play', 'DELETE', nil, true) end
@param [Array] member_id
Source
# File lib/plivo/resources/conferences.rb, line 185 def stop_record perform_action('Record', 'DELETE') end
Source
# File lib/plivo/resources/conferences.rb, line 105 def stop_speak_member(member_id) valid_param?(:member_id, member_id, Array, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Speak', 'DELETE', nil, true) end
@param [Array] member_id
Source
# File lib/plivo/resources/conferences.rb, line 198 def to_json_member(member) { muted: member['muted'], member_id: member['member_id'], deaf: member['deaf'], from: member['from'], to: member['to'], caller_name: member['caller_name'], direction: member['direction'], call_uuid: member['call_uuid'], join_time: member['join_time'] }.to_json end
Source
# File lib/plivo/resources/conferences.rb, line 189 def to_s response_json = {} response_variables = self.instance_variables.drop(5) response_variables.each do |variable| response_json[variable.to_s[1..-1]] = self.instance_variable_get(variable) end return response_json.to_s end
Source
# File lib/plivo/resources/conferences.rb, line 125 def undeaf_member(member_id) valid_param?(:member_id, member_id, Array, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Deaf', 'DELETE', nil, true) end
@param [Array] member_id
Source
# File lib/plivo/resources/conferences.rb, line 39 def unmute_member(member_id) valid_param?(:member_id, member_id, Array, true) member_id.each do |member| valid_param?(:member, member, [String, Symbol, Integer, Integer], true) end perform_action('Member/' + member_id.join(',') + '/Mute', 'DELETE') end
@param [Array] member_id