Class: Twilio::REST::Wireless::V1::SimContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/wireless/v1/sim.rb,
lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb,
lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb

Defined Under Namespace

Classes: DataSessionInstance, DataSessionList, DataSessionPage, UsageRecordInstance, UsageRecordList, UsageRecordPage

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 or the ‘unique_name` of the Sim resource to update.



163
164
165
166
167
168
169
170
171
172
173
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 163

def initialize(version, sid)
    super(version)

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

    # Dependents
    @data_sessions = nil
    @usage_records = nil
end

Instance Method Details

#data_sessionsDataSessionList, DataSessionContext

Access the data_sessions

Returns:



276
277
278
279
280
281
282
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 276

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

#deleteBoolean

Delete the SimInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



177
178
179
180
181
182
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 177

def delete

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    @version.delete('DELETE', @uri, headers: headers)
end

#fetchSimInstance

Fetch the SimInstance

Returns:



187
188
189
190
191
192
193
194
195
196
197
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 187

def fetch

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    payload = @version.fetch('GET', @uri, headers: headers)
    SimInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#inspectObject

Provide a detailed, user friendly representation



304
305
306
307
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 304

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

#to_sObject

Provide a user friendly representation



297
298
299
300
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 297

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

#update(unique_name: :unset, callback_method: :unset, callback_url: :unset, friendly_name: :unset, rate_plan: :unset, status: :unset, commands_callback_method: :unset, commands_callback_url: :unset, sms_fallback_method: :unset, sms_fallback_url: :unset, sms_method: :unset, sms_url: :unset, voice_fallback_method: :unset, voice_fallback_url: :unset, voice_method: :unset, voice_url: :unset, reset_status: :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 ‘sid` in the URL path to address the resource.

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

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

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

    The URL we should call using the ‘callback_url` when the SIM has finished updating. When the SIM transitions from `new` to `ready` or from any status to `deactivated`, we call this URL when the status changes to an intermediate status (`ready` or `deactivated`) and again when the status changes to its final status (`active` or `canceled`).

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

    A descriptive string that you create to describe the Sim resource. It does not need to be unique.

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

    The SID or unique name of the [RatePlan resource](www.twilio.com/docs/iot/wireless/api/rateplan-resource) to which the Sim resource should be assigned.

  • status (Status) (defaults to: :unset)
  • commands_callback_method (String) (defaults to: :unset)

    The HTTP method we should use to call ‘commands_callback_url`. Can be: `POST` or `GET`. The default is `POST`.

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

    The URL we should call using the ‘commands_callback_method` when the SIM sends a [Command](www.twilio.com/docs/iot/wireless/api/command-resource). Your server should respond with an HTTP status code in the 200 range; any response body is ignored.

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

    The HTTP method we should use to call ‘sms_fallback_url`. Can be: `GET` or `POST`. Default is `POST`.

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

    The URL we should call using the ‘sms_fallback_method` when an error occurs while retrieving or executing the TwiML requested from `sms_url`.

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

    The HTTP method we should use to call ‘sms_url`. Can be: `GET` or `POST`. Default is `POST`.

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

    The URL we should call using the ‘sms_method` when the SIM-connected device sends an SMS message that is not a [Command](www.twilio.com/docs/iot/wireless/api/command-resource).

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

    Deprecated.

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

    Deprecated.

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

    Deprecated.

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

    Deprecated.

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

    The SID of the [Account](www.twilio.com/docs/iam/api/account) to which the Sim resource should belong. The Account SID can only be that of the requesting Account or that of a [Subaccount](www.twilio.com/docs/iam/api/subaccounts) of the requesting Account. Only valid when the Sim resource’s status is ‘new`. For more information, see the [Move SIMs between Subaccounts documentation](www.twilio.com/docs/iot/wireless/api/sim-resource#move-sims-between-subaccounts).

Returns:



220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 220

def update(
    unique_name: :unset, 
    callback_method: :unset, 
    callback_url: :unset, 
    friendly_name: :unset, 
    rate_plan: :unset, 
    status: :unset, 
    commands_callback_method: :unset, 
    commands_callback_url: :unset, 
    sms_fallback_method: :unset, 
    sms_fallback_url: :unset, 
    sms_method: :unset, 
    sms_url: :unset, 
    voice_fallback_method: :unset, 
    voice_fallback_url: :unset, 
    voice_method: :unset, 
    voice_url: :unset, 
    reset_status: :unset, 
    account_sid: :unset
)

    data = Twilio::Values.of({
        'UniqueName' => unique_name,
        'CallbackMethod' => callback_method,
        'CallbackUrl' => callback_url,
        'FriendlyName' => friendly_name,
        'RatePlan' => rate_plan,
        'Status' => status,
        'CommandsCallbackMethod' => commands_callback_method,
        'CommandsCallbackUrl' => commands_callback_url,
        'SmsFallbackMethod' => sms_fallback_method,
        'SmsFallbackUrl' => sms_fallback_url,
        'SmsMethod' => sms_method,
        'SmsUrl' => sms_url,
        'VoiceFallbackMethod' => voice_fallback_method,
        'VoiceFallbackUrl' => voice_fallback_url,
        'VoiceMethod' => voice_method,
        'VoiceUrl' => voice_url,
        'ResetStatus' => reset_status,
        'AccountSid' => ,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    payload = @version.update('POST', @uri, data: data, headers: headers)
    SimInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#usage_recordsUsageRecordList, UsageRecordContext

Access the usage_records

Returns:



287
288
289
290
291
292
293
# File 'lib/twilio-ruby/rest/wireless/v1/sim.rb', line 287

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