class Twilio::REST::Video::V1::RoomContext::ParticipantContext

Public Class Methods

new(version, room_sid, sid) click to toggle source

Initialize the ParticipantContext @param [Version] version Version that contains the resource @param [String] room_sid The SID of the room with the Participant resource to

fetch.

@param [String] sid The SID of the RoomParticipant resource to fetch. @return [ParticipantContext] ParticipantContext

Calls superclass method Twilio::REST::InstanceContext::new
    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
199 def initialize(version, room_sid, sid)
200   super(version)
201 
202   # Path Solution
203   @solution = {room_sid: room_sid, sid: sid, }
204   @uri = "/Rooms/#{@solution[:room_sid]}/Participants/#{@solution[:sid]}"
205 
206   # Dependents
207   @published_tracks = nil
208   @subscribed_tracks = nil
209   @subscribe_rules = nil
210 end

Public Instance Methods

fetch() click to toggle source

Fetch the ParticipantInstance @return [ParticipantInstance] Fetched ParticipantInstance

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
215 def fetch
216   payload = @version.fetch('GET', @uri)
217 
218   ParticipantInstance.new(@version, payload, room_sid: @solution[:room_sid], sid: @solution[:sid], )
219 end
inspect() click to toggle source

Provide a detailed, user friendly representation

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
305 def inspect
306   context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
307   "#<Twilio.Video.V1.ParticipantContext #{context}>"
308 end
published_tracks(sid=:unset) click to toggle source

Access the published_tracks @return [PublishedTrackList] @return [PublishedTrackContext] if sid was passed.

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
240 def published_tracks(sid=:unset)
241   raise ArgumentError, 'sid cannot be nil' if sid.nil?
242 
243   if sid != :unset
244     return PublishedTrackContext.new(@version, @solution[:room_sid], @solution[:sid], sid, )
245   end
246 
247   unless @published_tracks
248     @published_tracks = PublishedTrackList.new(
249         @version,
250         room_sid: @solution[:room_sid],
251         participant_sid: @solution[:sid],
252     )
253   end
254 
255   @published_tracks
256 end
subscribe_rules() click to toggle source

Access the subscribe_rules @return [SubscribeRulesList] @return [SubscribeRulesContext]

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
284 def subscribe_rules
285   unless @subscribe_rules
286     @subscribe_rules = SubscribeRulesList.new(
287         @version,
288         room_sid: @solution[:room_sid],
289         participant_sid: @solution[:sid],
290     )
291   end
292 
293   @subscribe_rules
294 end
subscribed_tracks(sid=:unset) click to toggle source

Access the subscribed_tracks @return [SubscribedTrackList] @return [SubscribedTrackContext] if sid was passed.

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
262 def subscribed_tracks(sid=:unset)
263   raise ArgumentError, 'sid cannot be nil' if sid.nil?
264 
265   if sid != :unset
266     return SubscribedTrackContext.new(@version, @solution[:room_sid], @solution[:sid], sid, )
267   end
268 
269   unless @subscribed_tracks
270     @subscribed_tracks = SubscribedTrackList.new(
271         @version,
272         room_sid: @solution[:room_sid],
273         participant_sid: @solution[:sid],
274     )
275   end
276 
277   @subscribed_tracks
278 end
to_s() click to toggle source

Provide a user friendly representation

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
298 def to_s
299   context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
300   "#<Twilio.Video.V1.ParticipantContext #{context}>"
301 end
update(status: :unset) click to toggle source

Update the ParticipantInstance @param [participant.Status] status The new status of the resource. Can be:

`connected` or `disconnected`. For `in-progress` Rooms the default Status is
`connected`, for `completed` Rooms only `disconnected` Participants are
returned.

@return [ParticipantInstance] Updated ParticipantInstance

    # File lib/twilio-ruby/rest/video/v1/room/room_participant.rb
228 def update(status: :unset)
229   data = Twilio::Values.of({'Status' => status, })
230 
231   payload = @version.update('POST', @uri, data: data)
232 
233   ParticipantInstance.new(@version, payload, room_sid: @solution[:room_sid], sid: @solution[:sid], )
234 end