Class: Twilio::REST::Notify::V1::ServiceInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/notify/v1/service.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) ⇒ ServiceInstance

Initialize the ServiceInstance

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 Service resource to fetch.



374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 374

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

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'friendly_name' => payload['friendly_name'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'apn_credential_sid' => payload['apn_credential_sid'],
      'gcm_credential_sid' => payload['gcm_credential_sid'],
      'fcm_credential_sid' => payload['fcm_credential_sid'],
      'messaging_service_sid' => payload['messaging_service_sid'],
      'facebook_messenger_page_id' => payload['facebook_messenger_page_id'],
      'default_apn_notification_protocol_version' => payload['default_apn_notification_protocol_version'],
      'default_gcm_notification_protocol_version' => payload['default_gcm_notification_protocol_version'],
      'default_fcm_notification_protocol_version' => payload['default_fcm_notification_protocol_version'],
      'log_enabled' => payload['log_enabled'],
      'url' => payload['url'],
      'links' => payload['links'],
      'alexa_skill_id' => payload['alexa_skill_id'],
      'default_alexa_notification_protocol_version' => payload['default_alexa_notification_protocol_version'],
  }

  # 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



423
424
425
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 423

def 
  @properties['account_sid']
end

#alexa_skill_idString

Returns Deprecated.

Returns:

  • (String)

    Deprecated



513
514
515
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 513

def alexa_skill_id
  @properties['alexa_skill_id']
end

#apn_credential_sidString

Returns The SID of the Credential to use for APN Bindings.

Returns:

  • (String)

    The SID of the Credential to use for APN Bindings



447
448
449
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 447

def apn_credential_sid
  @properties['apn_credential_sid']
end

#bindingsbindings

Access the bindings

Returns:



592
593
594
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 592

def bindings
  context.bindings
end

#contextServiceContext

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

Returns:



408
409
410
411
412
413
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 408

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

#date_createdTime

Returns The RFC 2822 date and time in GMT when the resource was created.

Returns:

  • (Time)

    The RFC 2822 date and time in GMT when the resource was created



435
436
437
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 435

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The RFC 2822 date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The RFC 2822 date and time in GMT when the resource was last updated



441
442
443
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 441

def date_updated
  @properties['date_updated']
end

#default_alexa_notification_protocol_versionString

Returns Deprecated.

Returns:

  • (String)

    Deprecated



519
520
521
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 519

def default_alexa_notification_protocol_version
  @properties['default_alexa_notification_protocol_version']
end

#default_apn_notification_protocol_versionString

Returns The protocol version to use for sending APNS notifications.

Returns:

  • (String)

    The protocol version to use for sending APNS notifications



477
478
479
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 477

def default_apn_notification_protocol_version
  @properties['default_apn_notification_protocol_version']
end

#default_fcm_notification_protocol_versionString

Returns The protocol version to use for sending FCM notifications.

Returns:

  • (String)

    The protocol version to use for sending FCM notifications



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

def default_fcm_notification_protocol_version
  @properties['default_fcm_notification_protocol_version']
end

#default_gcm_notification_protocol_versionString

Returns The protocol version to use for sending GCM notifications.

Returns:

  • (String)

    The protocol version to use for sending GCM notifications



483
484
485
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 483

def default_gcm_notification_protocol_version
  @properties['default_gcm_notification_protocol_version']
end

#deleteBoolean

Deletes the ServiceInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



526
527
528
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 526

def delete
  context.delete
end

#facebook_messenger_page_idString

Returns Deprecated.

Returns:

  • (String)

    Deprecated



471
472
473
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 471

def facebook_messenger_page_id
  @properties['facebook_messenger_page_id']
end

#fcm_credential_sidString

Returns The SID of the Credential to use for FCM Bindings.

Returns:

  • (String)

    The SID of the Credential to use for FCM Bindings



459
460
461
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 459

def fcm_credential_sid
  @properties['fcm_credential_sid']
end

#fetchServiceInstance

Fetch a ServiceInstance

Returns:



533
534
535
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 533

def fetch
  context.fetch
end

#friendly_nameString

Returns The string that you assigned to describe the resource.

Returns:

  • (String)

    The string that you assigned to describe the resource



429
430
431
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 429

def friendly_name
  @properties['friendly_name']
end

#gcm_credential_sidString

Returns The SID of the Credential to use for GCM Bindings.

Returns:

  • (String)

    The SID of the Credential to use for GCM Bindings



453
454
455
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 453

def gcm_credential_sid
  @properties['gcm_credential_sid']
end

#inspectObject

Provide a detailed, user friendly representation



612
613
614
615
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 612

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

Returns The URLs of the resources related to the service.

Returns:

  • (String)

    The URLs of the resources related to the service



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

def links
  @properties['links']
end

#log_enabledBoolean

Returns Whether to log notifications.

Returns:

  • (Boolean)

    Whether to log notifications



495
496
497
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 495

def log_enabled
  @properties['log_enabled']
end

#messaging_service_sidString

Returns The SID of the Messaging Service to use for SMS Bindings.

Returns:

  • (String)

    The SID of the Messaging Service to use for SMS Bindings



465
466
467
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 465

def messaging_service_sid
  @properties['messaging_service_sid']
end

#notificationsnotifications

Access the notifications

Returns:



599
600
601
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 599

def notifications
  context.notifications
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



417
418
419
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 417

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



605
606
607
608
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 605

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

#update(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset) ⇒ ServiceInstance

Update the ServiceInstance

Parameters:

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

    A descriptive string that you create to describe the resource. It can be up to 64 characters long.

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

    The SID of the [Credential](www.twilio.com/docs/notify/api/credential-resource) to use for APN Bindings.

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

    The SID of the [Credential](www.twilio.com/docs/notify/api/credential-resource) to use for GCM Bindings.

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

    The SID of the [Messaging Service](www.twilio.com/docs/sms/send-messages#messaging-services) to use for SMS Bindings. This parameter must be set in order to send SMS notifications.

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

    Deprecated.

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

    The protocol version to use for sending APNS notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](www.twilio.com/docs/notify/api/binding-resource) resource.

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

    The protocol version to use for sending GCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](www.twilio.com/docs/notify/api/binding-resource) resource.

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

    The SID of the [Credential](www.twilio.com/docs/notify/api/credential-resource) to use for FCM Bindings.

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

    The protocol version to use for sending FCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](www.twilio.com/docs/notify/api/binding-resource) resource.

  • log_enabled (Boolean) (defaults to: :unset)

    Whether to log notifications. Can be: ‘true` or `false` and the default is `true`.

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

    Deprecated.

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

    Deprecated.

Returns:



572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 572

def update(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset)
  context.update(
      friendly_name: friendly_name,
      apn_credential_sid: apn_credential_sid,
      gcm_credential_sid: gcm_credential_sid,
      messaging_service_sid: messaging_service_sid,
      facebook_messenger_page_id: facebook_messenger_page_id,
      default_apn_notification_protocol_version: default_apn_notification_protocol_version,
      default_gcm_notification_protocol_version: default_gcm_notification_protocol_version,
      fcm_credential_sid: fcm_credential_sid,
      default_fcm_notification_protocol_version: default_fcm_notification_protocol_version,
      log_enabled: log_enabled,
      alexa_skill_id: alexa_skill_id,
      default_alexa_notification_protocol_version: default_alexa_notification_protocol_version,
  )
end

#urlString

Returns The absolute URL of the Service resource.

Returns:

  • (String)

    The absolute URL of the Service resource



501
502
503
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 501

def url
  @properties['url']
end