Class: Twilio::REST::Chat::V2::ServiceContext::ChannelInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v2/service/channel.rb

Instance Method Summary collapse

Constructor Details

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

Initialize the ChannelInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • service_sid (String) (defaults to: nil)

    The unique id of the [Service](www.twilio.com/docs/chat/api/services) this channel belongs to.

  • sid (String) (defaults to: nil)

    The sid



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
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 376

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'],
      'friendly_name' => payload['friendly_name'],
      'unique_name' => payload['unique_name'],
      'attributes' => payload['attributes'],
      'type' => payload['type'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'created_by' => payload['created_by'],
      'members_count' => payload['members_count'].to_i,
      'messages_count' => payload['messages_count'].to_i,
      'url' => payload['url'],
      'links' => payload['links'],
  }

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

Instance Method Details

#account_sidString

Returns The unique id of the Account responsible for this channel.

Returns:

  • (String)

    The unique id of the Account responsible for this channel.



421
422
423
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 421

def 
  @properties['account_sid']
end

#attributesString

Returns An optional string metadata field you can use to store any data you wish.

Returns:

  • (String)

    An optional string metadata field you can use to store any data you wish.



445
446
447
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 445

def attributes
  @properties['attributes']
end

#contextChannelContext

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

Returns:



406
407
408
409
410
411
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 406

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

#created_byString

Returns Identity of the channel’s creator.

Returns:

  • (String)

    Identity of the channel’s creator.



469
470
471
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 469

def created_by
  @properties['created_by']
end

#date_createdTime

Returns The date that this resource was created.

Returns:

  • (Time)

    The date that this resource was created.



457
458
459
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 457

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date that this resource was last updated.

Returns:

  • (Time)

    The date that this resource was last updated.



463
464
465
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 463

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the ChannelInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



507
508
509
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 507

def delete
  context.delete
end

#fetchChannelInstance

Fetch a ChannelInstance

Returns:



500
501
502
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 500

def fetch
  context.fetch
end

#friendly_nameString

Returns The human-readable name of this channel.

Returns:

  • (String)

    The human-readable name of this channel.



433
434
435
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 433

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



573
574
575
576
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 573

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

#invitesinvites

Access the invites

Returns:



553
554
555
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 553

def invites
  context.invites
end

Returns Absolute URLs to access the Members, Messages , Invites and, if it exists the last Message for this Channel.

Returns:

  • (String)

    Absolute URLs to access the Members, Messages , Invites and, if it exists the last Message for this Channel.



493
494
495
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 493

def links
  @properties['links']
end

#membersmembers

Access the members

Returns:



539
540
541
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 539

def members
  context.members
end

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel



475
476
477
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 475

def members_count
  @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



546
547
548
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 546

def messages
  context.messages
end

#messages_countString

Returns The number of Messages in the Channel.

Returns:

  • (String)

    The number of Messages in the Channel



481
482
483
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 481

def messages_count
  @properties['messages_count']
end

#service_sidString

Returns The unique id of the Service this channel belongs to.

Returns:

  • (String)

    The unique id of the Service this channel belongs to.



427
428
429
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 427

def service_sid
  @properties['service_sid']
end

#sidString

Returns A 34 character string that uniquely identifies this resource.

Returns:

  • (String)

    A 34 character string that uniquely identifies this resource.



415
416
417
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 415

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



566
567
568
569
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 566

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

#typechannel.ChannelType

Returns The visibility of this channel - either public or private.

Returns:

  • (channel.ChannelType)

    The visibility of this channel - either public or private



451
452
453
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 451

def type
  @properties['type']
end

#unique_nameString

Returns The unique, addressable name of this channel.

Returns:

  • (String)

    The unique, addressable name of this channel.



439
440
441
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 439

def unique_name
  @properties['unique_name']
end

#update(friendly_name: :unset, unique_name: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, created_by: :unset) ⇒ ChannelInstance

Update the ChannelInstance

Parameters:

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

    A human-readable name for the Channel. Optional.

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

    A unique, addressable name for the Channel. Optional.

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

    An optional metadata field you can use to store any data you wish. No processing or validation is done on this field.

  • date_created (Time) (defaults to: :unset)

    The optional ISO8601 time specifying the datetime the Channel should be set as being created.

  • date_updated (Time) (defaults to: :unset)

    The optional ISO8601 time specifying the datetime the Channel should be set as having been last updated.

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

    Optional field to specify the Identity of the User that created the Channel.

Returns:



525
526
527
528
529
530
531
532
533
534
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 525

def update(friendly_name: :unset, unique_name: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, created_by: :unset)
  context.update(
      friendly_name: friendly_name,
      unique_name: unique_name,
      attributes: attributes,
      date_created: date_created,
      date_updated: date_updated,
      created_by: created_by,
  )
end

#urlString

Returns An absolute URL for this channel.

Returns:

  • (String)

    An absolute URL for this channel.



487
488
489
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 487

def url
  @properties['url']
end

#webhookswebhooks

Access the webhooks

Returns:



560
561
562
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 560

def webhooks
  context.webhooks
end