Class: Telapi::Conference

Inherits:
Resource
  • Object
show all
Defined in:
lib/telapi/conference.rb

Overview

Wraps TelAPI Conference functionality

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

#attributes, #initialize

Methods included from Network

api_uri, default_options, delete, post, response_format

Constructor Details

This class inherits a constructor from Telapi::Resource

Class Method Details

.deaf_member(conference_name, member_id) ⇒ Object

Deaf audio for a specific member of a conference call, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/deaf/

Required params:

conference_name

conference name

member_id

string



65
66
67
68
69
# File 'lib/telapi/conference.rb', line 65

def deaf_member(conference_name, member_id)
  opts = { :MemberID => member_id }
  response = Network.post(['Conferences', conference_name, 'Deaf'], opts)
  Conference.new(response)
end

.get(conference_name, optional_params = {}) ⇒ Object

Returns a Telapi::Conference object given its name See www.telapi.com/docs/api/rest/conferences/view/

Required params:

conference_name

conference name

Optional params is a hash containing:

MemberID

string

Muted

true or (false)

Deafed

true or (false)



30
31
32
33
# File 'lib/telapi/conference.rb', line 30

def get(conference_name, optional_params = {})
  response = Network.get(['Conferences', conference_name], optional_params)
  Conference.new(response)
end

.hangup_member(conference_name, member_id) ⇒ Object

Hangup a specific member of a conference call, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/hangup/

Required params:

conference_name

conference name

member_id

string



89
90
91
92
93
# File 'lib/telapi/conference.rb', line 89

def hangup_member(conference_name, member_id)
  opts = { :MemberID => member_id }
  response = Network.post(['Conferences', conference_name, 'Hangup'], opts)
  Conference.new(response)
end

.kick_member(conference_name, member_id) ⇒ Object

Remove a specific member of a conference call, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/kick/

Required params:

conference_name

conference name

member_id

string



101
102
103
104
105
# File 'lib/telapi/conference.rb', line 101

def kick_member(conference_name, member_id)
  opts = { :MemberID => member_id }
  response = Network.post(['Conferences', conference_name, 'Kick'], opts)
  Conference.new(response)
end

.list(optional_params = {}) ⇒ Object

Returns a resource collection containing Telapi::Conference objects See www.telapi.com/docs/api/rest/conferences/list/

Optional params is a hash containing:

MemberID

string

Muted

true or false

Deafed

true or false

Page

integer greater than 0

PageSize

integer greater than 0



15
16
17
18
# File 'lib/telapi/conference.rb', line 15

def list(optional_params = {})
  response = Network.get(['Conferences'], optional_params)
  ResourceCollection.new(response, 'conferences', self)
end

.mute_member(conference_name, member_id) ⇒ Object

Mute a member of a conference call, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/mute/

Required params:

conference_name

conference name

member_id

string



41
42
43
44
45
# File 'lib/telapi/conference.rb', line 41

def mute_member(conference_name, member_id)
  opts = { :MemberID => member_id }
  response = Network.post(['Conferences', conference_name, 'Mute'], opts)
  Conference.new(response)
end

.play_audio(conference_name, member_id, sound_url) ⇒ Object

Play pre-recorded sound from a file to conference members, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/play-audio/

Required params:

conference_name

conference name

member_id

string

sound_url

valid URL



127
128
129
130
131
# File 'lib/telapi/conference.rb', line 127

def play_audio(conference_name, member_id, sound_url)
  opts = { :MemberID => member_id, :Url => sound_url }
  response = Network.post(['Conferences', conference_name, 'Play'], opts)
  Conference.new(response)
end

.speak_text(conference_name, member_id, text) ⇒ Object

Send message that will be read in an audible voice to conference members, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/speak-text/

Required params:

conference_name

conference name

member_id

string

text

string



114
115
116
117
118
# File 'lib/telapi/conference.rb', line 114

def speak_text(conference_name, member_id, text)
  opts = { :MemberID => member_id, :Text => text }
  response = Network.post(['Conferences', conference_name, 'Say'], opts)
  Conference.new(response)
end

.start_recording(conference_name) ⇒ Object

Record conference, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/start-recording/

Required params:

conference_name

conference name



138
139
140
141
# File 'lib/telapi/conference.rb', line 138

def start_recording(conference_name)
  response = Network.post(['Conferences', conference_name, 'RecordStart'])
  Conference.new(response)
end

.stop_recording(conference_name) ⇒ Object

End recording of conference, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/stop-recording/

Required params:

conference_name

conference name



148
149
150
151
# File 'lib/telapi/conference.rb', line 148

def stop_recording(conference_name)
  response = Network.post(['Conferences', conference_name, 'RecordStop'])
  Conference.new(response)
end

.undeaf_member(conference_name, member_id) ⇒ Object

Restore audio for a specific member of a conference call, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/undeaf/

Required params:

conference_name

conference name

member_id

string



77
78
79
80
81
# File 'lib/telapi/conference.rb', line 77

def undeaf_member(conference_name, member_id)
  opts = { :MemberID => member_id }
  response = Network.post(['Conferences', conference_name, 'UnDeaf'], opts)
  Conference.new(response)
end

.unmute_member(conference_name, member_id) ⇒ Object

Unmute a member of a conference call, returning a Telapi::Conference object See www.telapi.com/docs/api/rest/conferences/unmute/

Required params:

conference_name

conference name

member_id

string



53
54
55
56
57
# File 'lib/telapi/conference.rb', line 53

def unmute_member(conference_name, member_id)
  opts = { :MemberID => member_id }
  response = Network.post(['Conferences', conference_name, 'UnMute'], opts)
  Conference.new(response)
end

Instance Method Details

#deaf_member(member_id) ⇒ Object

See ::deaf_member



166
167
168
# File 'lib/telapi/conference.rb', line 166

def deaf_member(member_id)
  self.class.deaf_member(self.name, member_id)
end

#hangup_member(member_id) ⇒ Object

See ::hangup_member



176
177
178
# File 'lib/telapi/conference.rb', line 176

def hangup_member(member_id)
  self.class.hangup_member(self.name, member_id)
end

#kick_member(member_id) ⇒ Object

See ::kick_member



181
182
183
# File 'lib/telapi/conference.rb', line 181

def kick_member(member_id)
  self.class.kick_member(self.name, member_id)
end

#mute_member(member_id) ⇒ Object

See ::mute_member



156
157
158
# File 'lib/telapi/conference.rb', line 156

def mute_member(member_id)
  self.class.mute_member(self.name, member_id)
end

#play_audio(member_id, sound_url) ⇒ Object

See ::play_audio



191
192
193
# File 'lib/telapi/conference.rb', line 191

def play_audio(member_id, sound_url)
  self.class.play_audio(self.name, member_id, sound_url)
end

#speak_text(member_id, text) ⇒ Object

See ::speak_text



186
187
188
# File 'lib/telapi/conference.rb', line 186

def speak_text(member_id, text)
  self.class.speak_text(self.name, member_id, text)
end

#start_recordingObject

See ::start_recording



196
197
198
# File 'lib/telapi/conference.rb', line 196

def start_recording
  self.class.start_recording(self.name)
end

#stop_recordingObject

See ::stop_recording



201
202
203
# File 'lib/telapi/conference.rb', line 201

def stop_recording
  self.class.stop_recording(self.name)
end

#undeaf_member(member_id) ⇒ Object

See ::undeaf_member



171
172
173
# File 'lib/telapi/conference.rb', line 171

def undeaf_member(member_id)
  self.class.undeaf_member(self.name, member_id)
end

#unmute_member(member_id) ⇒ Object

See ::unmute_member



161
162
163
# File 'lib/telapi/conference.rb', line 161

def unmute_member(member_id)
  self.class.unmute_member(self.name, member_id)
end