Class: Twilio::REST::Chat::V2::ServiceContext::UserContext::UserChannelInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, user_sid: nil, channel_sid: nil) ⇒ UserChannelInstance

Initialize the UserChannelInstance



266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 266

def initialize(version, payload, service_sid: nil, user_sid: nil, channel_sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'channel_sid' => payload['channel_sid'],
      'user_sid' => payload['user_sid'],
      'member_sid' => payload['member_sid'],
      'status' => payload['status'],
      'last_consumed_message_index' => payload['last_consumed_message_index'] == nil ? payload['last_consumed_message_index'] : payload['last_consumed_message_index'].to_i,
      'unread_messages_count' => payload['unread_messages_count'] == nil ? payload['unread_messages_count'] : payload['unread_messages_count'].to_i,
      'links' => payload['links'],
      'url' => payload['url'],
      'notification_level' => payload['notification_level'],
  }

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

Instance Method Details

#account_sidString



311
312
313
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 311

def 
  @properties['account_sid']
end

#channel_sidString



323
324
325
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 323

def channel_sid
  @properties['channel_sid']
end

#contextUserChannelContext

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



297
298
299
300
301
302
303
304
305
306
307
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 297

def context
  unless @instance_context
    @instance_context = UserChannelContext.new(
        @version,
        @params['service_sid'],
        @params['user_sid'],
        @params['channel_sid'],
    )
  end
  @instance_context
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the UserChannelInstance



387
388
389
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 387

def delete(x_twilio_webhook_enabled: :unset)
  context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
end

#fetchUserChannelInstance

Fetch the UserChannelInstance



378
379
380
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 378

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



420
421
422
423
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 420

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

#last_consumed_message_indexString



347
348
349
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 347

def last_consumed_message_index
  @properties['last_consumed_message_index']
end


359
360
361
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 359

def links
  @properties['links']
end

#member_sidString



335
336
337
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 335

def member_sid
  @properties['member_sid']
end

#notification_leveluser_channel.NotificationLevel



371
372
373
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 371

def notification_level
  @properties['notification_level']
end

#service_sidString



317
318
319
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 317

def service_sid
  @properties['service_sid']
end

#statususer_channel.ChannelStatus



341
342
343
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 341

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation



413
414
415
416
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 413

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

#unread_messages_countString



353
354
355
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 353

def unread_messages_count
  @properties['unread_messages_count']
end

#update(notification_level: :unset, last_consumed_message_index: :unset, last_consumption_timestamp: :unset) ⇒ UserChannelInstance

Update the UserChannelInstance



403
404
405
406
407
408
409
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 403

def update(notification_level: :unset, last_consumed_message_index: :unset, last_consumption_timestamp: :unset)
  context.update(
      notification_level: notification_level,
      last_consumed_message_index: last_consumed_message_index,
      last_consumption_timestamp: last_consumption_timestamp,
  )
end

#urlString



365
366
367
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 365

def url
  @properties['url']
end

#user_sidString



329
330
331
# File 'lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb', line 329

def user_sid
  @properties['user_sid']
end