Class: Twilio::REST::Video::V1::RoomContext::ParticipantList
- Inherits:
-
ListResource
- Object
- ListResource
- Twilio::REST::Video::V1::RoomContext::ParticipantList
- Defined in:
- lib/twilio-ruby/rest/video/v1/room/room_participant.rb
Instance Method Summary collapse
-
#each ⇒ Object
When passed a block, yields ParticipantInstance records from the API.
-
#get_page(target_url) ⇒ Page
Retrieve a single page of ParticipantInstance records from the API.
-
#initialize(version, room_sid: nil) ⇒ ParticipantList
constructor
Initialize the ParticipantList.
-
#list(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Array
Lists ParticipantInstance records from the API as a list.
-
#page(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of ParticipantInstance records from the API.
-
#stream(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Enumerable
Streams ParticipantInstance records from the API as an Enumerable.
-
#to_s ⇒ Object
Provide a user friendly representation.
Constructor Details
#initialize(version, room_sid: nil) ⇒ ParticipantList
Initialize the ParticipantList
21 22 23 24 25 26 27 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 21 def initialize(version, room_sid: nil) super(version) # Path Solution @solution = {room_sid: room_sid} @uri = "/Rooms/#{@solution[:room_sid]}/Participants" end |
Instance Method Details
#each ⇒ Object
When passed a block, yields ParticipantInstance records from the API. This operation lazily loads records as efficiently as possible until the limit is reached.
102 103 104 105 106 107 108 109 110 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 102 def each limits = @version.read_limits page = self.page(page_size: limits[:page_size], ) @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit]).each {|x| yield x} end |
#get_page(target_url) ⇒ Page
Retrieve a single page of ParticipantInstance records from the API. Request is executed immediately.
153 154 155 156 157 158 159 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 153 def get_page(target_url) response = @version.domain.request( 'GET', target_url ) ParticipantPage.new(@version, response, @solution) end |
#list(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Array
Lists ParticipantInstance records from the API as a list. Unlike stream(), this operation is eager and will load ‘limit` records into memory before returning.
Rooms only `disconnected` Participants are returned.
51 52 53 54 55 56 57 58 59 60 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 51 def list(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) self.stream( status: status, identity: identity, date_created_after: date_created_after, date_created_before: date_created_before, limit: limit, page_size: page_size ).entries end |
#page(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of ParticipantInstance records from the API. Request is executed immediately.
Rooms only `disconnected` Participants are returned.
130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 130 def page(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset) params = Twilio::Values.of({ 'Status' => status, 'Identity' => identity, 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after), 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before), 'PageToken' => page_token, 'Page' => page_number, 'PageSize' => page_size, }) response = @version.page( 'GET', @uri, params ) ParticipantPage.new(@version, response, @solution) end |
#stream(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Enumerable
Streams ParticipantInstance records from the API as an Enumerable. This operation lazily loads records as efficiently as possible until the limit is reached.
Rooms only `disconnected` Participants are returned.
84 85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 84 def stream(status: :unset, identity: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) limits = @version.read_limits(limit, page_size) page = self.page( status: status, identity: identity, date_created_after: date_created_after, date_created_before: date_created_before, page_size: limits[:page_size], ) @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit]) end |
#to_s ⇒ Object
Provide a user friendly representation
163 164 165 |
# File 'lib/twilio-ruby/rest/video/v1/room/room_participant.rb', line 163 def to_s '#<Twilio.Video.V1.ParticipantList>' end |