Class: Twilio::REST::Video::V1::RoomList
- Inherits:
-
ListResource
- Object
- ListResource
- Twilio::REST::Video::V1::RoomList
- Defined in:
- lib/twilio-ruby/rest/video/v1/room.rb
Instance Method Summary collapse
-
#create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset) ⇒ RoomInstance
Retrieve a single page of RoomInstance records from the API.
-
#each ⇒ Object
When passed a block, yields RoomInstance records from the API.
-
#get_page(target_url) ⇒ Page
Retrieve a single page of RoomInstance records from the API.
-
#initialize(version) ⇒ RoomList
constructor
Initialize the RoomList.
-
#list(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Array
Lists RoomInstance records from the API as a list.
-
#page(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of RoomInstance records from the API.
-
#stream(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Enumerable
Streams RoomInstance records from the API as an Enumerable.
-
#to_s ⇒ Object
Provide a user friendly representation.
Constructor Details
#initialize(version) ⇒ RoomList
Initialize the RoomList
18 19 20 21 22 23 24 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 18 def initialize(version) super(version) # Path Solution @solution = {} @uri = "/Rooms" end |
Instance Method Details
#create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset) ⇒ RoomInstance
Retrieve a single page of RoomInstance records from the API. Request is executed immediately.
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 51 def create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset) data = Twilio::Values.of({ 'EnableTurn' => enable_turn, 'Type' => type, 'UniqueName' => unique_name, 'StatusCallback' => status_callback, 'StatusCallbackMethod' => status_callback_method, 'MaxParticipants' => max_participants, 'RecordParticipantsOnConnect' => record_participants_on_connect, 'VideoCodecs' => Twilio.serialize_list(video_codecs) { |e| e }, 'MediaRegion' => media_region, }) payload = @version.create( 'POST', @uri, data: data ) RoomInstance.new(@version, payload, ) end |
#each ⇒ Object
When passed a block, yields RoomInstance records from the API. This operation lazily loads records as efficiently as possible until the limit is reached.
136 137 138 139 140 141 142 143 144 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 136 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 RoomInstance records from the API. Request is executed immediately.
182 183 184 185 186 187 188 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 182 def get_page(target_url) response = @version.domain.request( 'GET', target_url ) RoomPage.new(@version, response, @solution) end |
#list(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Array
Lists RoomInstance records from the API as a list. Unlike stream(), this operation is eager and will load ‘limit` records into memory before returning.
90 91 92 93 94 95 96 97 98 99 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 90 def list(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) self.stream( status: status, unique_name: unique_name, date_created_after: date_created_after, date_created_before: date_created_before, limit: limit, page_size: page_size ).entries end |
#page(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of RoomInstance records from the API. Request is executed immediately.
159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 159 def page(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset) params = Twilio::Values.of({ 'Status' => status, 'UniqueName' => unique_name, '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 ) RoomPage.new(@version, response, @solution) end |
#stream(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil) ⇒ Enumerable
Streams RoomInstance records from the API as an Enumerable. This operation lazily loads records as efficiently as possible until the limit is reached.
118 119 120 121 122 123 124 125 126 127 128 129 130 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 118 def stream(status: :unset, unique_name: :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, unique_name: unique_name, 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
192 193 194 |
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 192 def to_s '#<Twilio.Video.V1.RoomList>' end |