Class: Twilio::REST::IpMessaging::V2::ServiceContext::ChannelInstance

Inherits:
Twilio::REST::InstanceResource show all
Defined in:
lib/twilio-ruby/rest/ip_messaging/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 SID of the [Service](www.twilio.com/docs/chat/rest/services) the Channel resource is associated with.

  • sid (String) (defaults to: nil)

    The SID of the Channel resource to fetch. This value can be either the ‘sid` or the `unique_name` of the Channel resource to fetch.



401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 401

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



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

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



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

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:



431
432
433
434
435
436
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 431

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



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

def created_by
  @properties['created_by']
end

#date_createdTime

Returns The ISO 8601 date and time in GMT when the resource was created.

Returns:

  • (Time)

    The ISO 8601 date and time in GMT when the resource was created



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

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The ISO 8601 date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The ISO 8601 date and time in GMT when the resource was last updated



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

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the ChannelInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



532
533
534
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 532

def delete
  context.delete
end

#fetchChannelInstance

Fetch a ChannelInstance

Returns:



525
526
527
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 525

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



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

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



605
606
607
608
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 605

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

#invitesinvites

Access the invites

Returns:



585
586
587
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 585

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



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

def links
  @properties['links']
end

#membersmembers

Access the members

Returns:



571
572
573
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 571

def members
  context.members
end

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel



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

def members_count
  @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



578
579
580
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 578

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



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

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



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

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



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

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



598
599
600
601
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 598

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.IpMessaging.V2.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`



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

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



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

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

Returns:



557
558
559
560
561
562
563
564
565
566
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 557

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 The absolute URL of the Channel resource.

Returns:

  • (String)

    The absolute URL of the Channel resource



512
513
514
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 512

def url
  @properties['url']
end

#webhookswebhooks

Access the webhooks

Returns:



592
593
594
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb', line 592

def webhooks
  context.webhooks
end