Class: Twilio::REST::Insights::V2::OutboundList
- Inherits:
-
ListResource
- Object
- ListResource
- Twilio::REST::Insights::V2::OutboundList
- Defined in:
- lib/twilio-ruby/rest/insights/v2/outbound.rb
Defined Under Namespace
Classes: CountyCarrierValueCarriers, InsightsV2CreatePhoneNumbersReportRequest, InsightsV2CreatePhoneNumbersReportRequestTimeRange, PhoneNumberReportFilter, ReportFilter
Instance Method Summary collapse
-
#each ⇒ Object
When passed a block, yields OutboundInstance records from the API.
-
#get_page(target_url) ⇒ Page
Retrieve a single page of OutboundInstance records from the API.
-
#initialize(version, report_id: nil) ⇒ OutboundList
constructor
Initialize the OutboundList.
-
#list(limit: nil, page_size: nil) ⇒ Array
Lists OutboundInstance records from the API as a list.
-
#list_with_metadata(limit: nil, page_size: nil) ⇒ Array
Lists OutboundPageMetadata records from the API as a list.
-
#page(page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of OutboundInstance records from the API.
-
#stream(limit: nil, page_size: nil) ⇒ Enumerable
Streams Instance records from the API as an Enumerable.
-
#to_s ⇒ Object
Provide a user friendly representation.
Constructor Details
#initialize(version, report_id: nil) ⇒ OutboundList
Initialize the OutboundList
116 117 118 119 120 121 122 123 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 116 def initialize(version, report_id: nil) super(version) # Path Solution @solution = { report_id: report_id } @uri = "/Voice/Reports/PhoneNumbers/Outbound/#{@solution[:report_id]}" end |
Instance Method Details
#each ⇒ Object
When passed a block, yields OutboundInstance records from the API. This operation lazily loads records as efficiently as possible until the limit is reached.
193 194 195 196 197 198 199 200 201 202 203 204 205 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 193 def each limits = @version.read_limits page = self.page(page_size: limits[:page_size], ) return [].each if page.nil? result = @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit]) return [].each if result.nil? result.each {|x| yield x} end |
#get_page(target_url) ⇒ Page
Retrieve a single page of OutboundInstance records from the API. Request is executed immediately.
234 235 236 237 238 239 240 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 234 def get_page(target_url) response = @version.domain.request( 'GET', target_url ) OutboundPage.new(@version, response, @solution) end |
#list(limit: nil, page_size: nil) ⇒ Array
Lists OutboundInstance records from the API as a list. Unlike stream(), this operation is eager and will load ‘limit` records into memory before returning.
136 137 138 139 140 141 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 136 def list(limit: nil, page_size: nil) self.stream( limit: limit, page_size: page_size ).entries end |
#list_with_metadata(limit: nil, page_size: nil) ⇒ Array
Lists OutboundPageMetadata records from the API as a list.
176 177 178 179 180 181 182 183 184 185 186 187 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 176 def (limit: nil, page_size: nil) limits = @version.read_limits(limit, page_size) params = Twilio::Values.of({ 'PageSize' => limits[:page_size], }); headers = Twilio::Values.of({}) response = @version.page('GET', @uri, params: params, headers: headers) OutboundPageMetadata.new(@version, response, @solution, limits[:limit]) end |
#page(page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of OutboundInstance records from the API. Request is executed immediately.
214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 214 def page(page_token: :unset, page_number: :unset,page_size: :unset) params = Twilio::Values.of({ 'PageToken' => page_token, 'Page' => page_number, 'PageSize' => page_size, }) headers = Twilio::Values.of({}) response = @version.page('GET', @uri, params: params, headers: headers) OutboundPage.new(@version, response, @solution) end |
#stream(limit: nil, page_size: nil) ⇒ Enumerable
Streams Instance records from the API as an Enumerable. This operation lazily loads records as efficiently as possible until the limit is reached.
154 155 156 157 158 159 160 161 162 163 164 165 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 154 def stream(limit: nil, page_size: nil) limits = @version.read_limits(limit, page_size) page = self.page( page_size: limits[:page_size], ) return [].each if page.nil? result = @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit]) return [].each if result.nil? result end |
#to_s ⇒ Object
Provide a user friendly representation
245 246 247 |
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 245 def to_s '#<Twilio.Insights.V2.OutboundList>' end |