lib/twilio-ruby/rest/api/v2010/account/conference.rb in twilio-ruby-5.0.0.rc18 vs lib/twilio-ruby/rest/api/v2010/account/conference.rb in twilio-ruby-5.0.0.rc19
- old
+ new
@@ -1,10 +1,10 @@
##
# This code was generated by
# \ / _ _ _| _ _
# | (_)\/(_)(_|\/| |(/_ v1.0.0
-# / /
+# / /
module Twilio
module REST
class Api < Domain
class V2010 < Version
@@ -16,18 +16,18 @@
# @param [String] account_sid The unique id of the Account] responsible for
# creating this conference.
# @return [ConferenceList] ConferenceList
def initialize(version, account_sid: nil)
super(version)
-
+
# Path Solution
@solution = {
account_sid: account_sid
}
@uri = "/Accounts/#{@solution[:account_sid]}/Conferences.json"
end
-
+
##
# Lists ConferenceInstance records from the API as a list.
# Unlike stream(), this operation is eager and will load `limit` records into
# memory before returning.
# @param [Time] date_created_before Filter by date created
@@ -59,11 +59,11 @@
status: status,
limit: limit,
page_size: page_size
).entries
end
-
+
##
# Streams ConferenceInstance records from the API as an Enumerable.
# This operation lazily loads records as efficiently as possible until the limit
# is reached.
# @param [Time] date_created_before Filter by date created
@@ -83,11 +83,11 @@
# but a limit is defined, stream() will attempt to read the
# limit with the most efficient page size, i.e. min(limit, 1000)
# @return [Enumerable] Enumerable that will yield up to limit results
def stream(date_created_before: nil, date_created: nil, date_created_after: nil, date_updated_before: nil, date_updated: nil, date_updated_after: nil, friendly_name: nil, status: nil, limit: nil, page_size: nil)
limits = @version.read_limits(limit, page_size)
-
+
page = self.page(
date_created_before: date_created_before,
date_created: date_created,
date_created_after: date_created_after,
date_updated_before: date_updated_before,
@@ -95,14 +95,14 @@
date_updated_after: date_updated_after,
friendly_name: friendly_name,
status: status,
page_size: limits[:page_size],
)
-
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
end
-
+
##
# When passed a block, yields ConferenceInstance records from the API.
# This operation lazily loads records as efficiently as possible until the limit
# is reached.
# @param [Time] date_created_before Filter by date created
@@ -121,20 +121,20 @@
# the default value of 50 records. If no page_size is defined
# but a limit is defined, stream() will attempt to read the
# limit with the most efficient page size, i.e. min(limit, 1000)
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
-
+
##
# Retrieve a single page of ConferenceInstance records from the API.
# Request is executed immediately.
# @param [Time] date_created_before Filter by date created
# @param [Time] date_created Filter by date created
@@ -169,18 +169,18 @@
@uri,
params
)
return ConferencePage.new(@version, response, @solution)
end
-
+
##
# Provide a user friendly representation
def to_s
'#<Twilio.Api.V2010.ConferenceList>'
end
end
-
+
class ConferencePage < Page
##
# Initialize the ConferencePage
# @param [Version] version Version that contains the resource
# @param [Response] response Response from the API
@@ -188,15 +188,15 @@
# @param [String] account_sid The unique id of the Account] responsible for
# creating this conference.
# @return [ConferencePage] ConferencePage
def initialize(version, response, solution)
super(version, response)
-
+
# Path Solution
@solution = solution
end
-
+
##
# Build an instance of ConferenceInstance
# @param [Hash] payload Payload response from the API
# @return [ConferenceInstance] ConferenceInstance
def get_instance(payload)
@@ -204,60 +204,83 @@
@version,
payload,
account_sid: @solution[:account_sid],
)
end
-
+
##
# Provide a user friendly representation
def to_s
'<Twilio.Api.V2010.ConferencePage>'
end
end
-
+
class ConferenceContext < InstanceContext
##
# Initialize the ConferenceContext
# @param [Version] version Version that contains the resource
# @param [String] account_sid The account_sid
# @param [String] sid The conference Sid that uniquely identifies this resource
# @return [ConferenceContext] ConferenceContext
def initialize(version, account_sid, sid)
super(version)
-
+
# Path Solution
@solution = {
account_sid: account_sid,
sid: sid,
}
@uri = "/Accounts/#{@solution[:account_sid]}/Conferences/#{@solution[:sid]}.json"
-
+
# Dependents
@participants = nil
end
-
+
##
# Fetch a ConferenceInstance
# @return [ConferenceInstance] Fetched ConferenceInstance
def fetch
params = {}
-
+
payload = @version.fetch(
'GET',
@uri,
params,
)
-
+
return ConferenceInstance.new(
@version,
payload,
account_sid: @solution[:account_sid],
sid: @solution[:sid],
)
end
-
+
##
+ # Update the ConferenceInstance
+ # @param [conference.UpdateStatus] status The status
+ # @return [ConferenceInstance] Updated ConferenceInstance
+ def update(status: nil)
+ data = {
+ 'Status' => status,
+ }
+
+ payload = @version.update(
+ 'POST',
+ @uri,
+ data: data,
+ )
+
+ return ConferenceInstance.new(
+ @version,
+ payload,
+ account_sid: @solution[:account_sid],
+ sid: @solution[:sid],
+ )
+ end
+
+ ##
# Access the participants
# @return [ParticipantList] ParticipantList
def participants(call_sid=:unset)
if call_sid != :unset
return ParticipantContext.new(
@@ -265,30 +288,30 @@
@solution[:account_sid],
@solution[:sid],
call_sid,
)
end
-
+
unless @participants
@participants = ParticipantList.new(
@version,
account_sid: @solution[:account_sid],
conference_sid: @solution[:sid],
)
end
-
+
@participants
end
-
+
##
# Provide a user friendly representation
def to_s
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
"#<Twilio.Api.V2010.ConferenceContext #{context}>"
end
end
-
+
class ConferenceInstance < InstanceResource
##
# Initialize the ConferenceInstance
# @param [Version] version Version that contains the resource
# @param [Hash] payload payload that contains response from Twilio
@@ -296,31 +319,33 @@
# creating this conference.
# @param [String] sid The conference Sid that uniquely identifies this resource
# @return [ConferenceInstance] ConferenceInstance
def initialize(version, payload, account_sid: nil, sid: nil)
super(version)
-
+
# Marshaled Properties
@properties = {
'account_sid' => payload['account_sid'],
'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
'api_version' => payload['api_version'],
'friendly_name' => payload['friendly_name'],
+ 'region' => payload['region'],
'sid' => payload['sid'],
'status' => payload['status'],
'uri' => payload['uri'],
+ 'subresource_uris' => payload['subresource_uris'],
}
-
+
# Context
@instance_context = nil
@params = {
'account_sid' => account_sid,
'sid' => sid || @properties['sid'],
}
end
-
+
##
# Generate an instance context for the instance, the context is capable of
# performing various actions. All instance actions are proxied to the context
# @param [Version] version Version that contains the resource
# @return [ConferenceContext] ConferenceContext for this ConferenceInstance
@@ -332,56 +357,74 @@
@params['sid'],
)
end
@instance_context
end
-
+
def account_sid
@properties['account_sid']
end
-
+
def date_created
@properties['date_created']
end
-
+
def date_updated
@properties['date_updated']
end
-
+
def api_version
@properties['api_version']
end
-
+
def friendly_name
@properties['friendly_name']
end
-
+
+ def region
+ @properties['region']
+ end
+
def sid
@properties['sid']
end
-
+
def status
@properties['status']
end
-
+
def uri
@properties['uri']
end
-
+
+ def subresource_uris
+ @properties['subresource_uris']
+ end
+
##
# Fetch a ConferenceInstance
# @return [ConferenceInstance] Fetched ConferenceInstance
def fetch
context.fetch
end
-
+
##
+ # Update the ConferenceInstance
+ # @param [conference.UpdateStatus] status The status
+ # @return [ConferenceInstance] Updated ConferenceInstance
+ def update(status: nil)
+ context.update(
+ status: status,
+ )
+ end
+
+ ##
# Access the participants
# @return [participants] participants
def participants
context.participants
end
-
+
##
# Provide a user friendly representation
def to_s
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
"<Twilio.Api.V2010.ConferenceInstance #{values}>"
\ No newline at end of file