Class: Twilio::REST::Notify::V1::CredentialInstance

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

Initialize the CredentialInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    The sid



279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 279

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

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'friendly_name' => payload['friendly_name'],
      'type' => payload['type'],
      'sandbox' => payload['sandbox'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sidString

Returns The account_sid.

Returns:

  • (String)

    The account_sid



318
319
320
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 318

def 
  @properties['account_sid']
end

#contextCredentialContext

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

Returns:



303
304
305
306
307
308
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 303

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

#date_createdTime

Returns The date_created.

Returns:

  • (Time)

    The date_created



342
343
344
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 342

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date_updated.

Returns:

  • (Time)

    The date_updated



348
349
350
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 348

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the CredentialInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



396
397
398
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 396

def delete
  context.delete
end

#fetchCredentialInstance

Fetch a CredentialInstance

Returns:



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

def fetch
  context.fetch
end

#friendly_nameString

Returns Friendly name for stored credential.

Returns:

  • (String)

    Friendly name for stored credential



324
325
326
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 324

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

#sandboxString

Returns [APN only] use this credential for sending to production or sandbox APNs.

Returns:

  • (String)
    APN only

    use this credential for sending to production or sandbox APNs



336
337
338
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 336

def sandbox
  @properties['sandbox']
end

#sidString

Returns The sid.

Returns:

  • (String)

    The sid



312
313
314
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 312

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typecredential.PushService

Returns Credential type, one of “gcm”, “fcm”, or “apn”.

Returns:

  • (credential.PushService)

    Credential type, one of “gcm”, “fcm”, or “apn”



330
331
332
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 330

def type
  @properties['type']
end

#update(friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset) ⇒ CredentialInstance

Update the CredentialInstance

Parameters:

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

    Friendly name for stored credential

  • certificate (String) (defaults to: :unset)
    APN only

    URL encoded representation of the

    certificate. Strip everything outside of the headers, e.g. ‘—–BEGIN CERTIFICATE—–MIIFnTCCBIWgAwIBAgIIAjy9H849+E8wDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNV.….A==—–END CERTIFICATE—–`

  • private_key (String) (defaults to: :unset)
    APN only

    URL encoded representation of the private

    key. Strip everything outside of the headers, e.g. ‘—–BEGIN RSA PRIVATE KEY—–MIIEpQIBAAKCAQEAuyf/lNrH9ck8DmNyo3fGgvCI1l9s+cmBY3WIz+cUDqmxiieRn.—–END RSA PRIVATE KEY—–`

  • sandbox (Boolean) (defaults to: :unset)
    APN only

    use this credential for sending to

    production or sandbox APNs (string ‘true` or `false`)

  • api_key (String) (defaults to: :unset)
    GCM only

    This is the “Server key” of your project from

    Firebase console under Settings / Cloud messaging. Yes, you can use the server key from the Firebase console for GCM.

  • secret (String) (defaults to: :unset)
    FCM only

    This is the “Server key” of your project from

    Firebase console under Settings / Cloud messaging.

Returns:



382
383
384
385
386
387
388
389
390
391
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 382

def update(friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset)
  context.update(
      friendly_name: friendly_name,
      certificate: certificate,
      private_key: private_key,
      sandbox: sandbox,
      api_key: api_key,
      secret: secret,
  )
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



354
355
356
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 354

def url
  @properties['url']
end