Class: Twilio::REST::Conversations::V1::ServiceContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/conversations/v1/service.rb,
lib/twilio-ruby/rest/conversations/v1/service/role.rb,
lib/twilio-ruby/rest/conversations/v1/service/user.rb,
lib/twilio-ruby/rest/conversations/v1/service/binding.rb,
lib/twilio-ruby/rest/conversations/v1/service/conversation.rb,
lib/twilio-ruby/rest/conversations/v1/service/configuration.rb,
lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb,
lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb,
lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb,
lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb,
lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb,
lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb,
lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb,
lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb

Defined Under Namespace

Classes: BindingContext, BindingInstance, BindingList, BindingPage, ConfigurationContext, ConfigurationInstance, ConfigurationList, ConfigurationPage, ConversationContext, ConversationInstance, ConversationList, ConversationPage, ParticipantConversationInstance, ParticipantConversationList, ParticipantConversationPage, RoleContext, RoleInstance, RoleList, RolePage, UserContext, UserInstance, UserList, UserPage

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ ServiceContext

Initialize the ServiceContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    A 34 character string that uniquely identifies this resource.



154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 154

def initialize(version, sid)
    super(version)

    # Path Solution
    @solution = { sid: sid,  }
    @uri = "/Services/#{@solution[:sid]}"

    # Dependents
    @participant_conversations = nil
    @users = nil
    @roles = nil
    @configuration = nil
    @bindings = nil
    @conversations = nil
end

Instance Method Details

#bindings(sid = :unset) ⇒ BindingList, BindingContext

Access the bindings

Returns:

Raises:

  • (ArgumentError)


257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 257

def bindings(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

    if sid != :unset
        return BindingContext.new(@version, @solution[:sid],sid )
    end

    unless @bindings
        @bindings = BindingList.new(
            @version, chat_service_sid: @solution[:sid], )
    end

 @bindings
end

#configurationConfigurationList, ConfigurationContext

Access the configuration



247
248
249
250
251
252
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 247

def configuration
    ConfigurationContext.new(
            @version,
            @solution[:sid]
            )
end

#conversations(sid = :unset) ⇒ ConversationList, ConversationContext

Access the conversations

Returns:

Raises:

  • (ArgumentError)


276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 276

def conversations(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

    if sid != :unset
        return ConversationContext.new(@version, @solution[:sid],sid )
    end

    unless @conversations
        @conversations = ConversationList.new(
            @version, chat_service_sid: @solution[:sid], )
    end

 @conversations
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



172
173
174
175
176
177
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 172

def delete

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    @version.delete('DELETE', @uri, headers: headers)
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:



182
183
184
185
186
187
188
189
190
191
192
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 182

def fetch

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    payload = @version.fetch('GET', @uri, headers: headers)
    ServiceInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#inspectObject

Provide a detailed, user friendly representation



301
302
303
304
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 301

def inspect
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Conversations.V1.ServiceContext #{context}>"
end

#participant_conversationsParticipantConversationList, ParticipantConversationContext

Access the participant_conversations

Returns:



198
199
200
201
202
203
204
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 198

def participant_conversations
  unless @participant_conversations
    @participant_conversations = ParticipantConversationList.new(
            @version, chat_service_sid: @solution[:sid], )
  end
  @participant_conversations
end

#roles(sid = :unset) ⇒ RoleList, RoleContext

Access the roles

Returns:

Raises:

  • (ArgumentError)


228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 228

def roles(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

    if sid != :unset
        return RoleContext.new(@version, @solution[:sid],sid )
    end

    unless @roles
        @roles = RoleList.new(
            @version, chat_service_sid: @solution[:sid], )
    end

 @roles
end

#to_sObject

Provide a user friendly representation



294
295
296
297
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 294

def to_s
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Conversations.V1.ServiceContext #{context}>"
end

#users(sid = :unset) ⇒ UserList, UserContext

Access the users

Returns:

Raises:

  • (ArgumentError)


209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
# File 'lib/twilio-ruby/rest/conversations/v1/service.rb', line 209

def users(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

    if sid != :unset
        return UserContext.new(@version, @solution[:sid],sid )
    end

    unless @users
        @users = UserList.new(
            @version, chat_service_sid: @solution[:sid], )
    end

 @users
end