Class: Twilio::REST::Notify::V1::ServiceContext::BindingInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/notify/v1/service/binding.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, sid: nil) ⇒ BindingInstance

Initialize the BindingInstance

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 Binding resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 286

def initialize(version, payload , service_sid: nil, sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'account_sid' => payload['account_sid'],
        'service_sid' => payload['service_sid'],
        'credential_sid' => payload['credential_sid'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'notification_protocol_version' => payload['notification_protocol_version'],
        'endpoint' => payload['endpoint'],
        'identity' => payload['identity'],
        'binding_type' => payload['binding_type'],
        'address' => payload['address'],
        'tags' => payload['tags'],
        'url' => payload['url'],
        'links' => payload['links'],
    }

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

Instance Method Details

#account_sidString

Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Binding resource.

Returns:



331
332
333
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 331

def 
    @properties['account_sid']
end

#addressString

Returns The channel-specific address. For APNS, the device token. For FCM and GCM, the registration token. For SMS, a phone number in E.164 format. For Facebook Messenger, the Messenger ID of the user or a phone number in E.164 format.

Returns:

  • (String)

    The channel-specific address. For APNS, the device token. For FCM and GCM, the registration token. For SMS, a phone number in E.164 format. For Facebook Messenger, the Messenger ID of the user or a phone number in E.164 format.



385
386
387
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 385

def address
    @properties['address']
end

#binding_typeString

Returns The transport technology to use for the Binding. Can be: ‘apn`, `fcm`, `gcm`, `sms`, or `facebook-messenger`.

Returns:

  • (String)

    The transport technology to use for the Binding. Can be: ‘apn`, `fcm`, `gcm`, `sms`, or `facebook-messenger`.



379
380
381
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 379

def binding_type
    @properties['binding_type']
end

#contextBindingContext

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

Returns:



316
317
318
319
320
321
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 316

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

#credential_sidString

Returns The SID of the [Credential](www.twilio.com/docs/notify/api/credential-resource) resource to be used to send notifications to this Binding. If present, this overrides the Credential specified in the Service resource. Applicable only to ‘apn`, `fcm`, and `gcm` type Bindings.

Returns:

  • (String)

    The SID of the [Credential](www.twilio.com/docs/notify/api/credential-resource) resource to be used to send notifications to this Binding. If present, this overrides the Credential specified in the Service resource. Applicable only to ‘apn`, `fcm`, and `gcm` type Bindings.



343
344
345
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 343

def credential_sid
    @properties['credential_sid']
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [RFC 2822](www.ietf.org/rfc/rfc2822.txt) format.

Returns:



349
350
351
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 349

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [RFC 2822](www.ietf.org/rfc/rfc2822.txt) format.

Returns:



355
356
357
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 355

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the BindingInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#endpointString

Returns Deprecated.

Returns:

  • (String)

    Deprecated.



367
368
369
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 367

def endpoint
    @properties['endpoint']
end

#fetchBindingInstance

Fetch the BindingInstance

Returns:



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

def fetch

    context.fetch
end

#identityString

Returns The ‘identity` value that uniquely identifies the resource’s [User](www.twilio.com/docs/chat/rest/user-resource) within the [Service](www.twilio.com/docs/notify/api/service-resource). Up to 20 Bindings can be created for the same Identity in a given Service.

Returns:



373
374
375
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 373

def identity
    @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



432
433
434
435
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 432

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

Returns The URLs of related resources.

Returns:

  • (Hash)

    The URLs of related resources.



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

def links
    @properties['links']
end

#notification_protocol_versionString

Returns The protocol version to use to send the notification. This defaults to the value of ‘default_xxxx_notification_protocol_version` in the [Service](www.twilio.com/docs/notify/api/service-resource) for the protocol. The current version is `"3"` for `apn`, `fcm`, and `gcm` type Bindings. The parameter is not applicable to `sms` and `facebook-messenger` type Bindings as the data format is fixed.

Returns:

  • (String)

    The protocol version to use to send the notification. This defaults to the value of ‘default_xxxx_notification_protocol_version` in the [Service](www.twilio.com/docs/notify/api/service-resource) for the protocol. The current version is `"3"` for `apn`, `fcm`, and `gcm` type Bindings. The parameter is not applicable to `sms` and `facebook-messenger` type Bindings as the data format is fixed.



361
362
363
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 361

def notification_protocol_version
    @properties['notification_protocol_version']
end

#service_sidString

Returns The SID of the [Service](www.twilio.com/docs/notify/api/service-resource) the resource is associated with.

Returns:



337
338
339
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 337

def service_sid
    @properties['service_sid']
end

#sidString

Returns The unique string that we created to identify the Binding resource.

Returns:

  • (String)

    The unique string that we created to identify the Binding resource.



325
326
327
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 325

def sid
    @properties['sid']
end

#tagsArray<String>

Returns The list of tags associated with this Binding. Tags can be used to select the Bindings to use when sending a notification. Maximum 20 tags are allowed.

Returns:

  • (Array<String>)

    The list of tags associated with this Binding. Tags can be used to select the Bindings to use when sending a notification. Maximum 20 tags are allowed.



391
392
393
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 391

def tags
    @properties['tags']
end

#to_sObject

Provide a user friendly representation



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

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

#urlString

Returns The absolute URL of the Binding resource.

Returns:

  • (String)

    The absolute URL of the Binding resource.



397
398
399
# File 'lib/twilio-ruby/rest/notify/v1/service/binding.rb', line 397

def url
    @properties['url']
end