Class: Twilio::REST::Chat::V1::ServiceContext::ChannelInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v1/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.



344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 344

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/api/rest/account) that created the Channel resource.

Returns:



389
390
391
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 389

def 
    @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data. Note If this property has been assigned a value, it’s only displayed in a FETCH action that returns a single resource; otherwise, it’s null. If the attributes have not been set, ‘{}` is returned.

Returns:

  • (String)

    The JSON string that stores application-specific data. Note If this property has been assigned a value, it’s only displayed in a FETCH action that returns a single resource; otherwise, it’s null. If the attributes have not been set, ‘{}` is returned.



413
414
415
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 413

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:



374
375
376
377
378
379
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 374

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`.



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

def created_by
    @properties['created_by']
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:



425
426
427
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 425

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:



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

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the ChannelInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#fetchChannelInstance

Fetch the ChannelInstance

Returns:



476
477
478
479
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 476

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.



401
402
403
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 401

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



530
531
532
533
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 530

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

#invitesinvites

Access the invites

Returns:



517
518
519
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 517

def invites
    context.invites
end

Returns The absolute URLs of the [Members](www.twilio.com/docs/chat/api/members), [Messages](www.twilio.com/docs/chat/api/messages) , [Invites](www.twilio.com/docs/chat/api/invites) and, if it exists, the last [Message](www.twilio.com/docs/chat/api/messages) for the Channel.

Returns:



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

def links
    @properties['links']
end

#membersmembers

Access the members

Returns:



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

def members
    context.members
end

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel.



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

def members_count
    @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



510
511
512
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 510

def messages
    context.messages
end

#messages_countString

Returns The number of Messages in the Channel.

Returns:

  • (String)

    The number of Messages in the Channel.



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

def messages_count
    @properties['messages_count']
end

#service_sidString

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

Returns:



395
396
397
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 395

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.



383
384
385
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 383

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



523
524
525
526
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 523

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

#typeChannelType

Returns:

  • (ChannelType)


419
420
421
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 419

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.



407
408
409
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 407

def unique_name
    @properties['unique_name']
end

#update(friendly_name: :unset, unique_name: :unset, attributes: :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 64 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 64 characters or less in length and be unique within the Service.

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

    A valid JSON string that contains application-specific data.

Returns:



487
488
489
490
491
492
493
494
495
496
497
498
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 487

def update(
    friendly_name: :unset, 
    unique_name: :unset, 
    attributes: :unset
)

    context.update(
        friendly_name: friendly_name, 
        unique_name: unique_name, 
        attributes: attributes, 
    )
end

#urlString

Returns The absolute URL of the Channel resource.

Returns:

  • (String)

    The absolute URL of the Channel resource.



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

def url
    @properties['url']
end