Class: Twilio::REST::Conversations::V2::OperationInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/conversations/v2/operation.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ OperationInstance

Initialize the OperationInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this Operation resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 269

def initialize(version, payload , sid: nil)
    
    apiV1Version = ApiV1Version.new version.domain, version
    super(apiV1Version)
    
    # Marshaled Properties
    @properties = { 
        'operation_id' => payload['operation_id'],
        'status' => payload['status'],
        'created_at' => Twilio.deserialize_iso8601_datetime(payload['created_at']),
        'completed_at' => Twilio.deserialize_iso8601_datetime(payload['completed_at']),
        'status_url' => payload['status_url'],
        'error' => payload['error'],
        'related' => payload['related'],
    }

    # Context
    @instance_context = nil
    @params = { 'sid' => sid  || @properties['sid']  , }
end

Instance Method Details

#completed_atTime

Returns Timestamp when the operation completed. Only present for completed or failed operations.

Returns:

  • (Time)

    Timestamp when the operation completed. Only present for completed or failed operations.



321
322
323
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 321

def completed_at
    @properties['completed_at']
end

#contextOperationContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



294
295
296
297
298
299
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 294

def context
    unless @instance_context
        @instance_context = OperationContext.new(@version , @params['sid'])
    end
    @instance_context
end

#created_atTime

Returns Timestamp when the operation was created.

Returns:

  • (Time)

    Timestamp when the operation was created.



315
316
317
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 315

def created_at
    @properties['created_at']
end

#errorFetchOperationStatus200ResponseError

Returns:

  • (FetchOperationStatus200ResponseError)


333
334
335
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 333

def error
    @properties['error']
end

#fetchOperationInstance

Fetch the OperationInstance

Returns:



346
347
348
349
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 346

def fetch

    context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



360
361
362
363
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 360

def inspect
    values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.Conversations.V2.OperationInstance #{values}>"
end

#operation_idString

Returns Unique identifier for the long-running operation.

Returns:

  • (String)

    Unique identifier for the long-running operation.



303
304
305
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 303

def operation_id
    @properties['operation_id']
end

Returns Named resource identifiers associated with this operation. Keys depend on the operation type: - config-create, config-update, config-delete: configurationId - conversation-delete: conversationId.

Returns:

  • (Hash<String, String>)

    Named resource identifiers associated with this operation. Keys depend on the operation type: - config-create, config-update, config-delete: configurationId - conversation-delete: conversationId



339
340
341
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 339

def related
    @properties['related']
end

#statusString

Returns Current status of the operation.

Returns:

  • (String)

    Current status of the operation.



309
310
311
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 309

def status
    @properties['status']
end

#status_urlString

Returns URL to poll for operation status.

Returns:

  • (String)

    URL to poll for operation status.



327
328
329
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 327

def status_url
    @properties['status_url']
end

#to_sObject

Provide a user friendly representation



353
354
355
356
# File 'lib/twilio-ruby/rest/conversations/v2/operation.rb', line 353

def to_s
    values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.Conversations.V2.OperationInstance #{values}>"
end