Class: Twilio::REST::Conversations::V1::UserContext::UserConversationInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, user_sid: nil, conversation_sid: nil) ⇒ UserConversationInstance

Initialize the UserConversationInstance



254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 254

def initialize(version, payload , user_sid: nil, conversation_sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'account_sid' => payload['account_sid'],
        'chat_service_sid' => payload['chat_service_sid'],
        'conversation_sid' => payload['conversation_sid'],
        'unread_messages_count' => payload['unread_messages_count'] == nil ? payload['unread_messages_count'] : payload['unread_messages_count'].to_i,
        'last_read_message_index' => payload['last_read_message_index'] == nil ? payload['last_read_message_index'] : payload['last_read_message_index'].to_i,
        'participant_sid' => payload['participant_sid'],
        'user_sid' => payload['user_sid'],
        'friendly_name' => payload['friendly_name'],
        'conversation_state' => payload['conversation_state'],
        'timers' => payload['timers'],
        'attributes' => payload['attributes'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'created_by' => payload['created_by'],
        'notification_level' => payload['notification_level'],
        'unique_name' => payload['unique_name'],
        'url' => payload['url'],
        'links' => payload['links'],
    }

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

Instance Method Details

#account_sidString



297
298
299
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 297

def 
    @properties['account_sid']
end

#attributesString



357
358
359
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 357

def attributes
    @properties['attributes']
end

#chat_service_sidString



303
304
305
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 303

def chat_service_sid
    @properties['chat_service_sid']
end

#contextUserConversationContext

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



288
289
290
291
292
293
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 288

def context
    unless @instance_context
        @instance_context = UserConversationContext.new(@version , @params['user_sid'], @params['conversation_sid'])
    end
    @instance_context
end

#conversation_sidString



309
310
311
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 309

def conversation_sid
    @properties['conversation_sid']
end

#conversation_stateState



345
346
347
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 345

def conversation_state
    @properties['conversation_state']
end

#created_byString



375
376
377
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 375

def created_by
    @properties['created_by']
end

#date_createdTime



363
364
365
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 363

def date_created
    @properties['date_created']
end

#date_updatedTime



369
370
371
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 369

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the UserConversationInstance



406
407
408
409
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 406

def delete

    context.delete
end

#fetchUserConversationInstance

Fetch the UserConversationInstance



414
415
416
417
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 414

def fetch

    context.fetch
end

#friendly_nameString



339
340
341
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 339

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



447
448
449
450
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 447

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

#last_read_message_indexString



321
322
323
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 321

def last_read_message_index
    @properties['last_read_message_index']
end


399
400
401
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 399

def links
    @properties['links']
end

#notification_levelNotificationLevel



381
382
383
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 381

def notification_level
    @properties['notification_level']
end

#participant_sidString



327
328
329
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 327

def participant_sid
    @properties['participant_sid']
end

#timersHash



351
352
353
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 351

def timers
    @properties['timers']
end

#to_sObject

Provide a user friendly representation



440
441
442
443
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 440

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

#unique_nameString



387
388
389
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 387

def unique_name
    @properties['unique_name']
end

#unread_messages_countString



315
316
317
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 315

def unread_messages_count
    @properties['unread_messages_count']
end

#update(notification_level: :unset, last_read_timestamp: :unset, last_read_message_index: :unset) ⇒ UserConversationInstance

Update the UserConversationInstance



425
426
427
428
429
430
431
432
433
434
435
436
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 425

def update(
    notification_level: :unset, 
    last_read_timestamp: :unset, 
    last_read_message_index: :unset
)

    context.update(
        notification_level: notification_level, 
        last_read_timestamp: last_read_timestamp, 
        last_read_message_index: last_read_message_index, 
    )
end

#urlString



393
394
395
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 393

def url
    @properties['url']
end

#user_sidString



333
334
335
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 333

def user_sid
    @properties['user_sid']
end