Class: Twilio::REST::Supersim::V1::FleetContext

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

Overview

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

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ FleetContext

Initialize the FleetContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    The SID of the Fleet resource to update.



185
186
187
188
189
190
191
192
193
# File 'lib/twilio-ruby/rest/supersim/v1/fleet.rb', line 185

def initialize(version, sid)
    super(version)

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

    
end

Instance Method Details

#fetchFleetInstance

Fetch the FleetInstance

Returns:



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

def fetch

    payload = @version.fetch('GET', @uri)
    FleetInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#inspectObject

Provide a detailed, user friendly representation



255
256
257
258
# File 'lib/twilio-ruby/rest/supersim/v1/fleet.rb', line 255

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

#to_sObject

Provide a user friendly representation



248
249
250
251
# File 'lib/twilio-ruby/rest/supersim/v1/fleet.rb', line 248

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

#update(unique_name: :unset, network_access_profile: :unset, ip_commands_url: :unset, ip_commands_method: :unset, sms_commands_url: :unset, sms_commands_method: :unset, data_limit: :unset) ⇒ FleetInstance

Update the FleetInstance

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.

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

    The SID or unique name of the Network Access Profile that will control which cellular networks the Fleet’s SIMs can connect to.

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

    The URL that will receive a webhook when a Super SIM in the Fleet is used to send an IP Command from your device to a special IP address. Your server should respond with an HTTP status code in the 200 range; any response body will be ignored.

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

    A string representing the HTTP method to use when making a request to ‘ip_commands_url`. Can be one of `POST` or `GET`. Defaults to `POST`.

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

    The URL that will receive a webhook when a Super SIM in the Fleet is used to send an SMS from your device to the SMS Commands number. Your server should respond with an HTTP status code in the 200 range; any response body will be ignored.

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

    A string representing the HTTP method to use when making a request to ‘sms_commands_url`. Can be one of `POST` or `GET`. Defaults to `POST`.

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

    The total data usage (download and upload combined) in Megabytes that each Super SIM assigned to the Fleet can consume during a billing period (normally one month). Value must be between 1MB (1) and 2TB (2,000,000). Defaults to 1GB (1,000).

Returns:



217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
# File 'lib/twilio-ruby/rest/supersim/v1/fleet.rb', line 217

def update(
    unique_name: :unset, 
    network_access_profile: :unset, 
    ip_commands_url: :unset, 
    ip_commands_method: :unset, 
    sms_commands_url: :unset, 
    sms_commands_method: :unset, 
    data_limit: :unset
)

    data = Twilio::Values.of({
        'UniqueName' => unique_name,
        'NetworkAccessProfile' => network_access_profile,
        'IpCommandsUrl' => ip_commands_url,
        'IpCommandsMethod' => ip_commands_method,
        'SmsCommandsUrl' => sms_commands_url,
        'SmsCommandsMethod' => sms_commands_method,
        'DataLimit' => data_limit,
    })

    payload = @version.update('POST', @uri, data: data)
    FleetInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end