class Twilio::REST::Conversations::V1::ServiceContext::UserContext::UserConversationInstance
Public Class Methods
Initialize the UserConversationInstance
@param [Version] version Version
that contains the resource @param [Hash] payload payload that contains response from Twilio
@param [String] chat_service_sid
The unique ID of the {Conversation
Service}[https://www.twilio.com/docs/conversations/api/service-resource] this conversation belongs to.
@param [String] user_sid
The unique string that identifies the {User
resource}[https://www.twilio.com/docs/conversations/api/user-resource].
@param [String] conversation_sid
The unique SID identifier of the Conversation.
This value can be either the `sid` or the `unique_name` of the {Conversation resource}[https://www.twilio.com/docs/conversations/api/conversation-resource].
@return [UserConversationInstance] UserConversationInstance
Twilio::REST::InstanceResource::new
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 258 def initialize(version, payload, chat_service_sid: nil, user_sid: nil, conversation_sid: nil) 259 super(version) 260 261 # Marshaled Properties 262 @properties = { 263 'account_sid' => payload['account_sid'], 264 'chat_service_sid' => payload['chat_service_sid'], 265 'conversation_sid' => payload['conversation_sid'], 266 'unread_messages_count' => payload['unread_messages_count'] == nil ? payload['unread_messages_count'] : payload['unread_messages_count'].to_i, 267 'last_read_message_index' => payload['last_read_message_index'] == nil ? payload['last_read_message_index'] : payload['last_read_message_index'].to_i, 268 'participant_sid' => payload['participant_sid'], 269 'user_sid' => payload['user_sid'], 270 'friendly_name' => payload['friendly_name'], 271 'conversation_state' => payload['conversation_state'], 272 'timers' => payload['timers'], 273 'attributes' => payload['attributes'], 274 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']), 275 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']), 276 'created_by' => payload['created_by'], 277 'notification_level' => payload['notification_level'], 278 'unique_name' => payload['unique_name'], 279 'url' => payload['url'], 280 'links' => payload['links'], 281 } 282 283 # Context 284 @instance_context = nil 285 @params = { 286 'chat_service_sid' => chat_service_sid, 287 'user_sid' => user_sid, 288 'conversation_sid' => conversation_sid || @properties['conversation_sid'], 289 } 290 end
Public Instance Methods
@return [String] The unique ID of the Account responsible for this conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 310 def account_sid 311 @properties['account_sid'] 312 end
@return [String] An optional string metadata field you can use to store any data you wish.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 370 def attributes 371 @properties['attributes'] 372 end
@return [String] The unique ID of the Conversation Service this conversation belongs to.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 316 def chat_service_sid 317 @properties['chat_service_sid'] 318 end
Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context @return [UserConversationContext] UserConversationContext
for this UserConversationInstance
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 296 def context 297 unless @instance_context 298 @instance_context = UserConversationContext.new( 299 @version, 300 @params['chat_service_sid'], 301 @params['user_sid'], 302 @params['conversation_sid'], 303 ) 304 end 305 @instance_context 306 end
@return [String] The unique ID of the Conversation for this User Conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 322 def conversation_sid 323 @properties['conversation_sid'] 324 end
@return [user_conversation.State] The current state of this User Conversation
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 358 def conversation_state 359 @properties['conversation_state'] 360 end
@return [String] Creator of this conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 388 def created_by 389 @properties['created_by'] 390 end
@return [Time] The date that this conversation was created.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 376 def date_created 377 @properties['date_created'] 378 end
@return [Time] The date that this conversation was last updated.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 382 def date_updated 383 @properties['date_updated'] 384 end
Delete the UserConversationInstance
@return [Boolean] true if delete succeeds, false otherwise
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 436 def delete 437 context.delete 438 end
Fetch the UserConversationInstance
@return [UserConversationInstance] Fetched UserConversationInstance
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 443 def fetch 444 context.fetch 445 end
@return [String] The human-readable name of this conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 352 def friendly_name 353 @properties['friendly_name'] 354 end
Provide a detailed, user friendly representation
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 456 def inspect 457 values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ") 458 "<Twilio.Conversations.V1.UserConversationInstance #{values}>" 459 end
@return [String] The index of the last read Message .
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 334 def last_read_message_index 335 @properties['last_read_message_index'] 336 end
@return [String] Absolute URLs to access the participant and conversation of this user conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 412 def links 413 @properties['links'] 414 end
@return [user_conversation.NotificationLevel] The Notification Level of this User Conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 394 def notification_level 395 @properties['notification_level'] 396 end
@return [String] Participant Sid.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 340 def participant_sid 341 @properties['participant_sid'] 342 end
@return [Hash] Timer date values for this conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 364 def timers 365 @properties['timers'] 366 end
Provide a user friendly representation
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 449 def to_s 450 values = @params.map{|k, v| "#{k}: #{v}"}.join(" ") 451 "<Twilio.Conversations.V1.UserConversationInstance #{values}>" 452 end
@return [String] An application-defined string that uniquely identifies the Conversation resource.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 400 def unique_name 401 @properties['unique_name'] 402 end
@return [String] The number of unread Messages in the Conversation.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 328 def unread_messages_count 329 @properties['unread_messages_count'] 330 end
Update the UserConversationInstance
@param [user_conversation.NotificationLevel] notification_level
The Notification
Level of this User Conversation. One of `default` or `muted`.
@param [Time] last_read_timestamp The date of the last message read in
conversation by the user, given in ISO 8601 format.
@param [String] last_read_message_index
The index of the last Message in the
Conversation that the Participant has read.
@return [UserConversationInstance] Updated UserConversationInstance
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 425 def update(notification_level: :unset, last_read_timestamp: :unset, last_read_message_index: :unset) 426 context.update( 427 notification_level: notification_level, 428 last_read_timestamp: last_read_timestamp, 429 last_read_message_index: last_read_message_index, 430 ) 431 end
@return [String] The url
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 406 def url 407 @properties['url'] 408 end
@return [String] The unique ID for the User.
# File lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb 346 def user_sid 347 @properties['user_sid'] 348 end