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.


367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 367

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'],
      'delivery_callback_url' => payload['delivery_callback_url'],
      'delivery_callback_enabled' => payload['delivery_callback_enabled'],
  }

  # 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


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

def 
  @properties['account_sid']
end

#alexa_skill_idString

Returns Deprecated.

Returns:

  • (String)

    Deprecated


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

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


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

def apn_credential_sid
  @properties['apn_credential_sid']
end

#bindingsbindings

Access the bindings

Returns:


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

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:


403
404
405
406
407
408
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 403

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


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

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


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

def date_updated
  @properties['date_updated']
end

#default_alexa_notification_protocol_versionString

Returns Deprecated.

Returns:

  • (String)

    Deprecated


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

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


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

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


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

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


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

def default_gcm_notification_protocol_version
  @properties['default_gcm_notification_protocol_version']
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


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

def delete
  context.delete
end

#delivery_callback_enabledBoolean

Returns Enable delivery callbacks.

Returns:

  • (Boolean)

    Enable delivery callbacks


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

def delivery_callback_enabled
  @properties['delivery_callback_enabled']
end

#delivery_callback_urlString

Returns Webhook URL.

Returns:

  • (String)

    Webhook URL


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

def delivery_callback_url
  @properties['delivery_callback_url']
end

#facebook_messenger_page_idString

Returns Deprecated.

Returns:

  • (String)

    Deprecated


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

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


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

def fcm_credential_sid
  @properties['fcm_credential_sid']
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:


540
541
542
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 540

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


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

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


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

def gcm_credential_sid
  @properties['gcm_credential_sid']
end

#inspectObject

Provide a detailed, user friendly representation


624
625
626
627
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 624

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


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

def links
  @properties['links']
end

#log_enabledBoolean

Returns Whether to log notifications.

Returns:

  • (Boolean)

    Whether to log notifications


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

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


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

def messaging_service_sid
  @properties['messaging_service_sid']
end

#notificationsnotifications

Access the notifications

Returns:


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

def notifications
  context.notifications
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource


412
413
414
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 412

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation


617
618
619
620
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 617

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, delivery_callback_url: :unset, delivery_callback_enabled: :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 to use for APN Bindings.

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

    The SID of the Credential to use for GCM Bindings.

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

    The SID of the Messaging Service 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 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 resource.

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

    The SID of the Credential 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 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.

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

    URL to send delivery status callback.

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

    Callback configuration that enables delivery callbacks, default false

Returns:


582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
# File 'lib/twilio-ruby/rest/notify/v1/service.rb', line 582

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, delivery_callback_url: :unset, delivery_callback_enabled: :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,
      delivery_callback_url: delivery_callback_url,
      delivery_callback_enabled: delivery_callback_enabled,
  )
end

#urlString

Returns The absolute URL of the Service resource.

Returns:

  • (String)

    The absolute URL of the Service resource


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

def url
  @properties['url']
end