class Twilio::REST::Insights::V1::RoomInstance
PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
Public Class Methods
Initialize the RoomInstance
@param [Version] version Version
that contains the resource @param [Hash] payload payload that contains response from Twilio
@param [String] room_sid
The SID of the Room resource. @return [RoomInstance] RoomInstance
Twilio::REST::InstanceResource::new
# File lib/twilio-ruby/rest/insights/v1/room.rb 263 def initialize(version, payload, room_sid: nil) 264 super(version) 265 266 # Marshaled Properties 267 @properties = { 268 'account_sid' => payload['account_sid'], 269 'room_sid' => payload['room_sid'], 270 'room_name' => payload['room_name'], 271 'create_time' => Twilio.deserialize_iso8601_datetime(payload['create_time']), 272 'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']), 273 'room_type' => payload['room_type'], 274 'room_status' => payload['room_status'], 275 'status_callback' => payload['status_callback'], 276 'status_callback_method' => payload['status_callback_method'], 277 'created_method' => payload['created_method'], 278 'end_reason' => payload['end_reason'], 279 'max_participants' => payload['max_participants'] == nil ? payload['max_participants'] : payload['max_participants'].to_i, 280 'unique_participants' => payload['unique_participants'] == nil ? payload['unique_participants'] : payload['unique_participants'].to_i, 281 'unique_participant_identities' => payload['unique_participant_identities'] == nil ? payload['unique_participant_identities'] : payload['unique_participant_identities'].to_i, 282 'concurrent_participants' => payload['concurrent_participants'] == nil ? payload['concurrent_participants'] : payload['concurrent_participants'].to_i, 283 'max_concurrent_participants' => payload['max_concurrent_participants'] == nil ? payload['max_concurrent_participants'] : payload['max_concurrent_participants'].to_i, 284 'codecs' => payload['codecs'], 285 'media_region' => payload['media_region'], 286 'duration_sec' => payload['duration_sec'].to_i, 287 'total_participant_duration_sec' => payload['total_participant_duration_sec'].to_i, 288 'total_recording_duration_sec' => payload['total_recording_duration_sec'].to_i, 289 'processing_state' => payload['processing_state'], 290 'recording_enabled' => payload['recording_enabled'], 291 'edge_location' => payload['edge_location'], 292 'url' => payload['url'], 293 'links' => payload['links'], 294 } 295 296 # Context 297 @instance_context = nil 298 @params = {'room_sid' => room_sid || @properties['room_sid'], } 299 end
Public Instance Methods
@return [String] Account SID associated with this room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 314 def account_sid 315 @properties['account_sid'] 316 end
@return [Array] Codecs used by participants in the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 410 def codecs 411 @properties['codecs'] 412 end
@return [String] Actual number of concurrent participants.
# File lib/twilio-ruby/rest/insights/v1/room.rb 398 def concurrent_participants 399 @properties['concurrent_participants'] 400 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 [RoomContext] RoomContext
for this RoomInstance
# File lib/twilio-ruby/rest/insights/v1/room.rb 305 def context 306 unless @instance_context 307 @instance_context = RoomContext.new(@version, @params['room_sid'], ) 308 end 309 @instance_context 310 end
@return [Time] Creation time of the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 332 def create_time 333 @properties['create_time'] 334 end
@return [room.CreatedMethod] How the room was created.
# File lib/twilio-ruby/rest/insights/v1/room.rb 368 def created_method 369 @properties['created_method'] 370 end
@return [String] Total room duration from create time to end time.
# File lib/twilio-ruby/rest/insights/v1/room.rb 422 def duration_sec 423 @properties['duration_sec'] 424 end
@return [room.EdgeLocation] Edge location of Twilio
media servers for the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 452 def edge_location 453 @properties['edge_location'] 454 end
@return [room.EndReason] Reason the room ended.
# File lib/twilio-ruby/rest/insights/v1/room.rb 374 def end_reason 375 @properties['end_reason'] 376 end
@return [Time] End time for the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 338 def end_time 339 @properties['end_time'] 340 end
Fetch the RoomInstance
@return [RoomInstance] Fetched RoomInstance
# File lib/twilio-ruby/rest/insights/v1/room.rb 471 def fetch 472 context.fetch 473 end
Provide a detailed, user friendly representation
# File lib/twilio-ruby/rest/insights/v1/room.rb 491 def inspect 492 values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ") 493 "<Twilio.Insights.V1.RoomInstance #{values}>" 494 end
@return [String] Room subresources.
# File lib/twilio-ruby/rest/insights/v1/room.rb 464 def links 465 @properties['links'] 466 end
@return [String] Maximum number of participants allowed in the room at the same time allowed by the application settings.
# File lib/twilio-ruby/rest/insights/v1/room.rb 404 def max_concurrent_participants 405 @properties['max_concurrent_participants'] 406 end
@return [String] Max number of total participants allowed by the application settings.
# File lib/twilio-ruby/rest/insights/v1/room.rb 380 def max_participants 381 @properties['max_participants'] 382 end
@return [room.TwilioRealm] Region of Twilio
media servers for the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 416 def media_region 417 @properties['media_region'] 418 end
Access the participants @return [participants] participants
# File lib/twilio-ruby/rest/insights/v1/room.rb 478 def participants 479 context.participants 480 end
@return [room.ProcessingState] Video
Log Analyzer resource state. Will be either `in-progress` or `complete`.
# File lib/twilio-ruby/rest/insights/v1/room.rb 440 def processing_state 441 @properties['processing_state'] 442 end
@return [Boolean] Boolean indicating if recording is enabled for the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 446 def recording_enabled 447 @properties['recording_enabled'] 448 end
@return [String] room friendly name.
# File lib/twilio-ruby/rest/insights/v1/room.rb 326 def room_name 327 @properties['room_name'] 328 end
@return [String] Unique identifier for the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 320 def room_sid 321 @properties['room_sid'] 322 end
@return [room.RoomStatus] Status of the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 350 def room_status 351 @properties['room_status'] 352 end
@return [room.RoomType] Type of room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 344 def room_type 345 @properties['room_type'] 346 end
@return [String] Webhook provided for status callbacks.
# File lib/twilio-ruby/rest/insights/v1/room.rb 356 def status_callback 357 @properties['status_callback'] 358 end
@return [String] HTTP
method provided for status callback URL.
# File lib/twilio-ruby/rest/insights/v1/room.rb 362 def status_callback_method 363 @properties['status_callback_method'] 364 end
Provide a user friendly representation
# File lib/twilio-ruby/rest/insights/v1/room.rb 484 def to_s 485 values = @params.map{|k, v| "#{k}: #{v}"}.join(" ") 486 "<Twilio.Insights.V1.RoomInstance #{values}>" 487 end
@return [String] Combined amount of participant time in the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 428 def total_participant_duration_sec 429 @properties['total_participant_duration_sec'] 430 end
@return [String] Combined amount of recorded seconds for participants in the room.
# File lib/twilio-ruby/rest/insights/v1/room.rb 434 def total_recording_duration_sec 435 @properties['total_recording_duration_sec'] 436 end
@return [String] Unique number of participant identities.
# File lib/twilio-ruby/rest/insights/v1/room.rb 392 def unique_participant_identities 393 @properties['unique_participant_identities'] 394 end
@return [String] Number of participants. May include duplicate identities for participants who left and rejoined.
# File lib/twilio-ruby/rest/insights/v1/room.rb 386 def unique_participants 387 @properties['unique_participants'] 388 end
@return [String] URL for the room resource.
# File lib/twilio-ruby/rest/insights/v1/room.rb 458 def url 459 @properties['url'] 460 end