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) ⇒ SessionInstance
Update the SessionInstance.
Constructor Details
#initialize(version, service_sid, sid) ⇒ SessionContext
Initialize the SessionContext
172 173 174 175 176 177 178 179 180 181 182 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 172 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
186 187 188 189 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 186 def delete @version.delete('DELETE', @uri) end |
#fetch ⇒ SessionInstance
Fetch the SessionInstance
194 195 196 197 198 199 200 201 202 203 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 194 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
280 281 282 283 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 280 def inspect context = @solution.map{|k, v| "#{k}: #{v}"}.join(',') "#<Twilio.Proxy.V1.SessionContext #{context}>" end |
#interactions(sid = :unset) ⇒ InteractionList, InteractionContext
Access the interactions
236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 236 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
255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 255 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
273 274 275 276 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 273 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) ⇒ SessionInstance
Update the SessionInstance
211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 |
# File 'lib/twilio-ruby/rest/proxy/v1/service/session.rb', line 211 def update( date_expiry: :unset, ttl: :unset, status: :unset ) data = Twilio::Values.of({ 'DateExpiry' => Twilio.serialize_iso8601_datetime(date_expiry), 'Ttl' => ttl, 'Status' => status, }) payload = @version.update('POST', @uri, data: data) SessionInstance.new( @version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], ) end |