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

  • account_sid (String)

    The SID of the Account that created this Channel resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 391

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'] == nil ? payload['members_count'] : payload['members_count'].to_i,
        'messages_count' => payload['messages_count'] == nil ? payload['messages_count'] : payload['messages_count'].to_i,
        '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 Channel resource.

Returns:



436
437
438
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 436

def 
    @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data. If attributes have not been set, ‘{}` is returned.

Returns:

  • (String)

    The JSON string that stores application-specific data. If attributes have not been set, ‘{}` is returned.



460
461
462
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 460

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:



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

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

#created_byString

Returns The ‘identity` of the User that created the channel. If the Channel was created by using the API, the value is `system`.

Returns:

  • (String)

    The ‘identity` of the User that created the channel. If the Channel was created by using the API, the value is `system`.



484
485
486
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 484

def created_by
    @properties['created_by']
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



472
473
474
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 472

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



478
479
480
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 478

def date_updated
    @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the ChannelInstance

Parameters:

  • x_twilio_webhook_enabled (ChannelEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



516
517
518
519
520
521
522
523
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 516

def delete(
    x_twilio_webhook_enabled: :unset
)

    context.delete(
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#fetchChannelInstance

Fetch the ChannelInstance

Returns:



528
529
530
531
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 528

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.



448
449
450
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 448

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



601
602
603
604
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 601

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

#invitesinvites

Access the invites

Returns:



588
589
590
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 588

def invites
    context.invites
end

Returns The absolute URLs of the [Members](www.twilio.com/docs/chat/rest/member-resource), [Messages](www.twilio.com/docs/chat/rest/message-resource), [Invites](www.twilio.com/docs/chat/rest/invite-resource), Webhooks and, if it exists, the last [Message](www.twilio.com/docs/chat/rest/message-resource) for the Channel.

Returns:



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

def links
    @properties['links']
end

#membersmembers

Access the members

Returns:



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

def members
    context.members
end

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel.



490
491
492
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 490

def members_count
    @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



581
582
583
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 581

def messages
    context.messages
end

#messages_countString

Returns The number of Messages that have been passed in the Channel.

Returns:

  • (String)

    The number of Messages that have been passed in the Channel.



496
497
498
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 496

def messages_count
    @properties['messages_count']
end

#service_sidString

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

Returns:



442
443
444
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 442

def service_sid
    @properties['service_sid']
end

#sidString

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

Returns:

  • (String)

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



430
431
432
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 430

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



594
595
596
597
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 594

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

#typeChannelType

Returns:

  • (ChannelType)


466
467
468
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 466

def type
    @properties['type']
end

#unique_nameString

Returns An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource’s ‘sid` in the URL.

Returns:

  • (String)

    An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource’s ‘sid` in the URL.



454
455
456
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 454

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, x_twilio_webhook_enabled: :unset) ⇒ ChannelInstance

Update the ChannelInstance

Parameters:

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

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

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

    An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource’s ‘sid` in the URL. This value must be 256 characters or less in length and unique within the Service.

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

    A valid JSON string that contains application-specific data.

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

    The date, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was created. The default value is the current time set by the Chat service. Note that this should only be used in cases where a Channel is being recreated from a backup/separate source.

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

    The date, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was last updated.

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

    The ‘identity` of the User that created the channel. Default is: `system`.

  • x_twilio_webhook_enabled (ChannelEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 543

def update(
    friendly_name: :unset, 
    unique_name: :unset, 
    attributes: :unset, 
    date_created: :unset, 
    date_updated: :unset, 
    created_by: :unset, 
    x_twilio_webhook_enabled: :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, 
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#urlString

Returns The absolute URL of the Channel resource.

Returns:

  • (String)

    The absolute URL of the Channel resource.



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

def url
    @properties['url']
end

#webhookswebhooks

Access the webhooks

Returns:



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

def webhooks
    context.webhooks
end