Class: Twilio::REST::IpMessaging::V1::ServiceContext::ChannelInstance

Inherits:
Twilio::REST::InstanceResource show all
Defined in:
lib/twilio-ruby/rest/ip_messaging/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

  • service_sid (String) (defaults to: nil)

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

  • sid (String) (defaults to: nil)

    The Twilio-provided string that uniquely identifies the Channel resource to fetch.



350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb', line 350

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 SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource



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

def 
  @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data.

Returns:

  • (String)

    The JSON string that stores application-specific data



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

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:



380
381
382
383
384
385
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb', line 380

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.

Returns:

  • (String)

    The identity of the User that created the channel



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

def created_by
  @properties['created_by']
end

#date_createdTime

Returns The RFC 2822 date and time in GMT when the resource was created.

Returns:

  • (Time)

    The RFC 2822 date and time in GMT when the resource was created



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

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The RFC 2822 date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The RFC 2822 date and time in GMT when the resource was last updated



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

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the ChannelInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



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

def delete
  context.delete
end

#fetchChannelInstance

Fetch a ChannelInstance

Returns:



474
475
476
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb', line 474

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



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

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

#invitesinvites

Access the invites

Returns:



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

def invites
  context.invites
end

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

Returns:

  • (String)

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



467
468
469
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb', line 467

def links
  @properties['links']
end

#membersmembers

Access the members

Returns:



503
504
505
# File 'lib/twilio-ruby/rest/ip_messaging/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



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

def members_count
  @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



510
511
512
# File 'lib/twilio-ruby/rest/ip_messaging/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



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

def messages_count
  @properties['messages_count']
end

#service_sidString

Returns The SID of the Service that the resource is associated with.

Returns:

  • (String)

    The SID of the Service that the resource is associated with



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

def service_sid
  @properties['service_sid']
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



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

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typechannel.ChannelType

Returns The visibility of the channel. Can be: ‘public` or `private`.

Returns:

  • (channel.ChannelType)

    The visibility of the channel. Can be: ‘public` or `private`



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

def type
  @properties['type']
end

#unique_nameString

Returns An application-defined string that uniquely identifies the resource.

Returns:

  • (String)

    An application-defined string that uniquely identifies the resource



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

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:



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

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



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

def url
  @properties['url']
end