Class: Plivo::Resources::ConferenceInterface

Inherits:
Base::ResourceInterface show all
Defined in:
lib/plivo/resources/conferences.rb

Constant Summary

Constants included from Utils

Utils::TYPE_WHITELIST

Instance Method Summary collapse

Methods included from Utils

GetSortedQueryParamString?, compute_signatureV3?, expected_type?, expected_value?, generate_url?, getMapFromQueryString?, raise_invalid_request, valid_account?, valid_mainaccount?, valid_param?, valid_signature?, valid_signatureV3?, valid_subaccount?

Constructor Details

#initialize(client, resource_list_json = nil) ⇒ ConferenceInterface

Returns a new instance of ConferenceInterface.



213
214
215
216
217
218
# File 'lib/plivo/resources/conferences.rb', line 213

def initialize(client, resource_list_json = nil)
  @_name = 'Conference'
  @_resource_type = Conference
  @_identifier_string = 'conference_name'
  super
end

Instance Method Details

#deaf_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


319
320
321
322
323
# File 'lib/plivo/resources/conferences.rb', line 319

def deaf_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .deaf_member(member_id)
end

#delete(conference_name) ⇒ Object



241
242
243
244
245
246
247
# File 'lib/plivo/resources/conferences.rb', line 241

def delete(conference_name)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  if conference_name.empty?
    raise_invalid_request('Invalid conference_name passed')
  end
  Conference.new(@_client, resource_id: conference_name).delete
end

#delete_allObject



237
238
239
# File 'lib/plivo/resources/conferences.rb', line 237

def delete_all
  Conference.new(@_client, resource_id: '').delete
end

#delete_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (String)


251
252
253
254
255
# File 'lib/plivo/resources/conferences.rb', line 251

def delete_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .delete_member(member_id)
end

#eachObject



232
233
234
235
# File 'lib/plivo/resources/conferences.rb', line 232

def each
  conference_list = list
  conference_list[:conferences].each { |conference| yield conference }
end

#get(conference_name) ⇒ Object



220
221
222
# File 'lib/plivo/resources/conferences.rb', line 220

def get(conference_name)
  perform_get(conference_name)
end

#kick_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (String)


259
260
261
262
263
# File 'lib/plivo/resources/conferences.rb', line 259

def kick_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .kick_member(member_id)
end

#listObject



224
225
226
227
228
229
230
# File 'lib/plivo/resources/conferences.rb', line 224

def list
  perform_list_without_object
  {
    api_id: @api_id,
    conferences: @conferences
  }
end

#mute_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


267
268
269
270
271
# File 'lib/plivo/resources/conferences.rb', line 267

def mute_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .mute_member(member_id)
end

#play_member(conference_name, member_id, url) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


283
284
285
286
287
# File 'lib/plivo/resources/conferences.rb', line 283

def play_member(conference_name, member_id, url)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .play_member(member_id, url)
end

#record(conference_name, options = nil) ⇒ Object

Parameters:

  • conference_name (String)
  • options (Hash) (defaults to: nil)

Options Hash (options):

  • :file_format (String)

    The file format of the record can be of mp3 or wav format. Defaults to mp3 format.

  • :transcription_type (String)

    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.

  • :transcription_url (String)

    The URL where the transcription is available.

  • :transcription_method (String)

    The method used to invoke the transcription_url. Defaults to POST.

  • :callback_url (String)

    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.

  • :callback_method (String)

    The method which is used to invoke the callback_url URL. Defaults to POST.



351
352
353
354
355
# File 'lib/plivo/resources/conferences.rb', line 351

def record(conference_name, options = nil)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .record(options)
end

#speak_member(conference_name, member_id, text, options = nil) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)
  • text (String)
    • The text that the member must hear.

  • options (Hash) (defaults to: nil)

Options Hash (options):



303
304
305
306
307
# File 'lib/plivo/resources/conferences.rb', line 303

def speak_member(conference_name, member_id, text, options = nil)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .speak_member(member_id, text, options)
end

#stop_play_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


291
292
293
294
295
# File 'lib/plivo/resources/conferences.rb', line 291

def stop_play_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .stop_play_member(member_id)
end

#stop_record(conference_name) ⇒ Object

Parameters:

  • conference_name (String)


358
359
360
361
362
# File 'lib/plivo/resources/conferences.rb', line 358

def stop_record(conference_name)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .stop_record
end

#stop_speak_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


311
312
313
314
315
# File 'lib/plivo/resources/conferences.rb', line 311

def stop_speak_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .stop_speak_member(member_id)
end

#undeaf_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


327
328
329
330
331
# File 'lib/plivo/resources/conferences.rb', line 327

def undeaf_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .undeaf_member(member_id)
end

#unmute_member(conference_name, member_id) ⇒ Object

Parameters:

  • conference_name (String)
  • member_id (Array)


275
276
277
278
279
# File 'lib/plivo/resources/conferences.rb', line 275

def unmute_member(conference_name, member_id)
  valid_param?(:conference_name, conference_name, [String, Symbol], true)
  Conference.new(@_client, resource_id: conference_name)
            .unmute_member(member_id)
end