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



248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 248

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



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

def 
    @properties['account_sid']
end

#attributesString



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

def attributes
    @properties['attributes']
end

#chat_service_sidString



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

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



282
283
284
285
286
287
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 282

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

#conversation_sidString



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

def conversation_sid
    @properties['conversation_sid']
end

#conversation_stateState



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

def conversation_state
    @properties['conversation_state']
end

#created_byString



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

def created_by
    @properties['created_by']
end

#date_createdTime



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

def date_created
    @properties['date_created']
end

#date_updatedTime



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

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the UserConversationInstance



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

def delete

    context.delete
end

#fetchUserConversationInstance

Fetch the UserConversationInstance



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

def fetch

    context.fetch
end

#friendly_nameString



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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

#last_read_message_indexString



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

def last_read_message_index
    @properties['last_read_message_index']
end


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

def links
    @properties['links']
end

#notification_levelNotificationLevel



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

def notification_level
    @properties['notification_level']
end

#participant_sidString



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

def participant_sid
    @properties['participant_sid']
end

#timersHash



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

def timers
    @properties['timers']
end

#to_sObject

Provide a user friendly representation



434
435
436
437
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 434

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

#unique_nameString



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

def unique_name
    @properties['unique_name']
end

#unread_messages_countString



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

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



419
420
421
422
423
424
425
426
427
428
429
430
# File 'lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb', line 419

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



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

def url
    @properties['url']
end

#user_sidString



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

def user_sid
    @properties['user_sid']
end