Class: Twilio::REST::Proxy::V1::ServiceContext::SessionContext
- Inherits:
-
InstanceContext
- Object
- InstanceContext
- Twilio::REST::Proxy::V1::ServiceContext::SessionContext
- Defined in:
- lib/twilio-ruby/rest/proxy/v1/service/session.rb,
lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb,
lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb,
lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb
Overview
PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
Defined Under Namespace
Classes: InteractionContext, InteractionInstance, InteractionList, InteractionPage, ParticipantContext, ParticipantInstance, ParticipantList, ParticipantPage
Instance Method Summary collapse
-
#delete ⇒ Boolean
Delete the SessionInstance.
-
#fetch ⇒ SessionInstance
Fetch the SessionInstance.
-
#initialize(version, service_sid, sid) ⇒ SessionContext
constructor
Initialize the SessionContext.
-
#inspect ⇒ Object
Provide a detailed, user friendly representation.
-
#interactions(sid = :unset) ⇒ InteractionList, InteractionContext
Access the interactions.
-
#participants(sid = :unset) ⇒ ParticipantList, ParticipantContext
Access the participants.
-
#to_s ⇒ Object
Provide a user friendly representation.
-
#update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset) ⇒ SessionInstance
Update the SessionInstance.
Constructor Details
#initialize(version, service_sid, sid) ⇒ SessionContext
Initialize the SessionContext
209 210 211 212 213 214 215 216 217 218 219 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 209 def initialize(version, service_sid, sid) super(version) # Path Solution @solution = {service_sid: service_sid, sid: sid, } @uri = "/Services/#{@solution[:service_sid]}/Sessions/#{@solution[:sid]}" # Dependents @interactions = nil @participants = nil end |
Instance Method Details
#delete ⇒ Boolean
Delete the SessionInstance
233 234 235 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 233 def delete @version.delete('DELETE', @uri) end |
#fetch ⇒ SessionInstance
Fetch the SessionInstance
224 225 226 227 228 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 224 def fetch payload = @version.fetch('GET', @uri) SessionInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], ) end |
#inspect ⇒ Object
Provide a detailed, user friendly representation
324 325 326 327 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 324 def inspect context = @solution.map {|k, v| "#{k}: #{v}"}.join(',') "#<Twilio.Proxy.V1.SessionContext #{context}>" end |
#interactions(sid = :unset) ⇒ InteractionList, InteractionContext
Access the interactions
275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 275 def interactions(sid=:unset) raise ArgumentError, 'sid cannot be nil' if sid.nil? if sid != :unset return InteractionContext.new(@version, @solution[:service_sid], @solution[:sid], sid, ) end unless @interactions @interactions = InteractionList.new( @version, service_sid: @solution[:service_sid], session_sid: @solution[:sid], ) end @interactions end |
#participants(sid = :unset) ⇒ ParticipantList, ParticipantContext
Access the participants
297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 297 def participants(sid=:unset) raise ArgumentError, 'sid cannot be nil' if sid.nil? if sid != :unset return ParticipantContext.new(@version, @solution[:service_sid], @solution[:sid], sid, ) end unless @participants @participants = ParticipantList.new( @version, service_sid: @solution[:service_sid], session_sid: @solution[:sid], ) end @participants end |
#to_s ⇒ Object
Provide a user friendly representation
317 318 319 320 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 317 def to_s context = @solution.map {|k, v| "#{k}: #{v}"}.join(',') "#<Twilio.Proxy.V1.SessionContext #{context}>" end |
#update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset) ⇒ SessionInstance
Update the SessionInstance
258 259 260 261 262 263 264 265 266 267 268 269 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 258 def update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset) data = Twilio::Values.of({ 'DateExpiry' => Twilio.serialize_iso8601_datetime(date_expiry), 'Ttl' => ttl, 'Status' => status, 'FailOnParticipantConflict' => fail_on_participant_conflict, }) payload = @version.update('POST', @uri, data: data) SessionInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], ) end |