Class: Twilio::REST::Fax::V1::FaxInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/fax/v1/fax.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, payload, sid: nil) ⇒ FaxInstance

Initialize the FaxInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    The Twilio-provided string that uniquely identifies the Fax resource to fetch.



337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 337

def initialize(version, payload, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'from' => payload['from'],
      'to' => payload['to'],
      'quality' => payload['quality'],
      'media_sid' => payload['media_sid'],
      'media_url' => payload['media_url'],
      'num_pages' => payload['num_pages'] == nil ? payload['num_pages'] : payload['num_pages'].to_i,
      'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
      'status' => payload['status'],
      'direction' => payload['direction'],
      'api_version' => payload['api_version'],
      'price' => payload['price'].to_f,
      'price_unit' => payload['price_unit'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'links' => payload['links'],
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sidString

Returns The SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource



386
387
388
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 386

def 
  @properties['account_sid']
end

#api_versionString

Returns The API version used to transmit the fax.

Returns:

  • (String)

    The API version used to transmit the fax



446
447
448
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 446

def api_version
  @properties['api_version']
end

#contextFaxContext

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

Returns:

  • (FaxContext)

    FaxContext for this FaxInstance



371
372
373
374
375
376
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 371

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

#date_createdTime

Returns The ISO 8601 formatted date and time in GMT when the resource was created.

Returns:

  • (Time)

    The ISO 8601 formatted date and time in GMT when the resource was created



464
465
466
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 464

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The ISO 8601 formatted date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The ISO 8601 formatted date and time in GMT when the resource was last updated



470
471
472
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 470

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Delete the FaxInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



507
508
509
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 507

def delete
  context.delete
end

#directionfax.Direction

Returns The direction of the fax.

Returns:

  • (fax.Direction)

    The direction of the fax



440
441
442
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 440

def direction
  @properties['direction']
end

#durationString

Returns The time it took to transmit the fax.

Returns:

  • (String)

    The time it took to transmit the fax



428
429
430
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 428

def duration
  @properties['duration']
end

#fetchFaxInstance

Fetch the FaxInstance

Returns:



489
490
491
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 489

def fetch
  context.fetch
end

#fromString

Returns The number the fax was sent from.

Returns:

  • (String)

    The number the fax was sent from



392
393
394
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 392

def from
  @properties['from']
end

#inspectObject

Provide a detailed, user friendly representation



527
528
529
530
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 527

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

Returns The URLs of the fax’s related resources.

Returns:

  • (String)

    The URLs of the fax’s related resources



476
477
478
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 476

def links
  @properties['links']
end

#mediamedia

Access the media

Returns:



514
515
516
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 514

def media
  context.media
end

#media_sidString

Returns The SID of the FaxMedia resource that is associated with the Fax.

Returns:

  • (String)

    The SID of the FaxMedia resource that is associated with the Fax



410
411
412
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 410

def media_sid
  @properties['media_sid']
end

#media_urlString

Returns The Twilio-hosted URL that can be used to download fax media.

Returns:

  • (String)

    The Twilio-hosted URL that can be used to download fax media



416
417
418
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 416

def media_url
  @properties['media_url']
end

#num_pagesString

Returns The number of pages contained in the fax document.

Returns:

  • (String)

    The number of pages contained in the fax document



422
423
424
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 422

def num_pages
  @properties['num_pages']
end

#priceString

Returns The fax transmission price.

Returns:

  • (String)

    The fax transmission price



452
453
454
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 452

def price
  @properties['price']
end

#price_unitString

Returns The ISO 4217 currency used for billing.

Returns:

  • (String)

    The ISO 4217 currency used for billing



458
459
460
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 458

def price_unit
  @properties['price_unit']
end

#qualityfax.Quality

Returns The quality of the fax.

Returns:

  • (fax.Quality)

    The quality of the fax



404
405
406
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 404

def quality
  @properties['quality']
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



380
381
382
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 380

def sid
  @properties['sid']
end

#statusfax.Status

Returns The status of the fax.

Returns:

  • (fax.Status)

    The status of the fax



434
435
436
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 434

def status
  @properties['status']
end

#toString

Returns The phone number that received the fax.

Returns:

  • (String)

    The phone number that received the fax



398
399
400
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 398

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



520
521
522
523
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 520

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

#update(status: :unset) ⇒ FaxInstance

Update the FaxInstance

Parameters:

Returns:



500
501
502
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 500

def update(status: :unset)
  context.update(status: status, )
end

#urlString

Returns The absolute URL of the fax resource.

Returns:

  • (String)

    The absolute URL of the fax resource



482
483
484
# File 'lib/twilio-ruby/rest/fax/v1/fax.rb', line 482

def url
  @properties['url']
end