Class: Twilio::REST::Chat::V3::ChannelInstance

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



234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 234

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,
        'messaging_service_sid' => payload['messaging_service_sid'],
        'url' => payload['url'],
    }

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

Instance Method Details

#account_sid ⇒ String

Returns The SID of the Account that created the Channel resource.

Returns:

  • (String) —

    The SID of the Account that created the Channel resource.



280
281
282
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 280

def 
    @properties['account_sid']
end

#attributes ⇒ String

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.



304
305
306
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 304

def attributes
    @properties['attributes']
end

#context ⇒ ChannelContext

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

Returns:



265
266
267
268
269
270
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 265

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

#created_by ⇒ String

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.



328
329
330
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 328

def created_by
    @properties['created_by']
end

#date_created ⇒ Time

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

Returns:

  • (Time) —

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



316
317
318
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 316

def date_created
    @properties['date_created']
end

#date_updated ⇒ Time

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

Returns:

  • (Time) —

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



322
323
324
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 322

def date_updated
    @properties['date_updated']
end

#friendly_name ⇒ String

Returns The string that you assigned to describe the resource.

Returns:

  • (String) —

    The string that you assigned to describe the resource.



292
293
294
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 292

def friendly_name
    @properties['friendly_name']
end

#inspect ⇒ Object

Provide a detailed, user friendly representation



384
385
386
387
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 384

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

#members_count ⇒ String

Returns The number of Members in the Channel.

Returns:

  • (String) —

    The number of Members in the Channel.



334
335
336
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 334

def members_count
    @properties['members_count']
end

#messages_count ⇒ String

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.



340
341
342
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 340

def messages_count
    @properties['messages_count']
end

#messaging_service_sid ⇒ String

Returns The unique ID of the Messaging Service this channel belongs to.

Returns:



346
347
348
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 346

def messaging_service_sid
    @properties['messaging_service_sid']
end

#service_sid ⇒ String

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

Returns:

  • (String) —

    The SID of the Service the Channel resource is associated with.



286
287
288
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 286

def service_sid
    @properties['service_sid']
end

#sid ⇒ String

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.



274
275
276
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 274

def sid
    @properties['sid']
end

#to_s ⇒ Object

Provide a user friendly representation



377
378
379
380
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 377

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

#type ⇒ ChannelType

Returns:

  • (ChannelType)


310
311
312
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 310

def type
    @properties['type']
end

#unique_name ⇒ String

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.



298
299
300
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 298

def unique_name
    @properties['unique_name']
end

#update(type: :unset, messaging_service_sid: :unset, x_twilio_webhook_enabled: :unset) ⇒ ChannelInstance

Update the ChannelInstance

Parameters:

  • type (ChannelType) (defaults to: :unset)
  • messaging_service_sid (String) (defaults to: :unset) —

    The unique ID of the Messaging Service this channel belongs to.

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

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



362
363
364
365
366
367
368
369
370
371
372
373
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 362

def update(
  type: :unset, 
  messaging_service_sid: :unset, 
  x_twilio_webhook_enabled: :unset
)

    context.update(
        type: type, 
        messaging_service_sid: messaging_service_sid, 
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#url ⇒ String

Returns The absolute URL of the Channel resource.

Returns:

  • (String) —

    The absolute URL of the Channel resource.



352
353
354
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 352

def url
    @properties['url']
end