Class: Twilio::REST::Supersim::V1::SimContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/supersim/v1/sim.rb,
lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb

Overview

PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.

Defined Under Namespace

Classes: BillingPeriodInstance, BillingPeriodList, BillingPeriodPage

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ SimContext

Initialize the SimContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    The SID of the Sim resource to fetch.


197
198
199
200
201
202
203
204
205
206
# File 'lib/twilio-ruby/rest/supersim/v1/sim.rb', line 197

def initialize(version, sid)
  super(version)

  # Path Solution
  @solution = {sid: sid, }
  @uri = "/Sims/#{@solution[:sid]}"

  # Dependents
  @billing_periods = nil
end

Instance Method Details

#billing_periodsBillingPeriodList, BillingPeriodContext

Access the billing_periods

Returns:


256
257
258
259
260
261
262
# File 'lib/twilio-ruby/rest/supersim/v1/sim.rb', line 256

def billing_periods
  unless @billing_periods
    @billing_periods = BillingPeriodList.new(@version, sim_sid: @solution[:sid], )
  end

  @billing_periods
end

#fetchSimInstance

Fetch the SimInstance

Returns:


211
212
213
214
215
# File 'lib/twilio-ruby/rest/supersim/v1/sim.rb', line 211

def fetch
  payload = @version.fetch('GET', @uri)

  SimInstance.new(@version, payload, sid: @solution[:sid], )
end

#inspectObject

Provide a detailed, user friendly representation


273
274
275
276
# File 'lib/twilio-ruby/rest/supersim/v1/sim.rb', line 273

def inspect
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Supersim.V1.SimContext #{context}>"
end

#to_sObject

Provide a user friendly representation


266
267
268
269
# File 'lib/twilio-ruby/rest/supersim/v1/sim.rb', line 266

def to_s
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Supersim.V1.SimContext #{context}>"
end

#update(unique_name: :unset, status: :unset, fleet: :unset, callback_url: :unset, callback_method: :unset, account_sid: :unset) ⇒ SimInstance

Update the SimInstance

Parameters:

  • unique_name (String) (defaults to: :unset)

    An application-defined string that uniquely identifies the resource. It can be used in place of the resource's `sid` in the URL to address the resource.

  • status (sim.StatusUpdate) (defaults to: :unset)

    The new status of the resource. Can be: `ready`, `active`, or `inactive`. See the Super SIM Status Values for more info.

  • fleet (String) (defaults to: :unset)

    The SID or unique name of the Fleet to which the SIM resource should be assigned.

  • callback_url (String) (defaults to: :unset)

    The URL we should call using the `callback_method` after an asynchronous update has finished.

  • callback_method (String) (defaults to: :unset)

    The HTTP method we should use to call `callback_url`. Can be: `GET` or `POST` and the default is POST.

  • account_sid (String) (defaults to: :unset)

    The SID of the Account to which the Sim resource should belong. The Account SID can only be that of the requesting Account or that of a Subaccount of the requesting Account. Only valid when the Sim resource's status is new.

Returns:


237
238
239
240
241
242
243
244
245
246
247
248
249
250
# File 'lib/twilio-ruby/rest/supersim/v1/sim.rb', line 237

def update(unique_name: :unset, status: :unset, fleet: :unset, callback_url: :unset, callback_method: :unset, account_sid: :unset)
  data = Twilio::Values.of({
      'UniqueName' => unique_name,
      'Status' => status,
      'Fleet' => fleet,
      'CallbackUrl' => callback_url,
      'CallbackMethod' => callback_method,
      'AccountSid' => ,
  })

  payload = @version.update('POST', @uri, data: data)

  SimInstance.new(@version, payload, sid: @solution[:sid], )
end