Class: Twilio::REST::Conversations::V1::UserContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/conversations/v1/user.rb,
lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb

Defined Under Namespace

Classes: UserConversationContext, UserConversationInstance, UserConversationList, UserConversationPage

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ UserContext

Initialize the UserContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    The SID of the User resource to update. This value can be either the sid or the identity of the User resource to update.



164
165
166
167
168
169
170
171
172
173
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 164

def initialize(version, sid)
    super(version)

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

    # Dependents
    @user_conversations = nil
end

Instance Method Details

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the UserInstance

Parameters:

  • x_twilio_webhook_enabled (UserEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



178
179
180
181
182
183
184
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 178

def delete(
    x_twilio_webhook_enabled: :unset
)

    headers = Twilio::Values.of({ 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
    @version.delete('DELETE', @uri, headers: headers)
end

#fetchUserInstance

Fetch the UserInstance

Returns:



189
190
191
192
193
194
195
196
197
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 189

def fetch

    payload = @version.fetch('GET', @uri)
    UserInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#inspectObject

Provide a detailed, user friendly representation



257
258
259
260
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 257

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

#to_sObject

Provide a user friendly representation



250
251
252
253
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 250

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

#update(friendly_name: :unset, attributes: :unset, role_sid: :unset, x_twilio_webhook_enabled: :unset) ⇒ UserInstance

Update the UserInstance

Parameters:

  • friendly_name (String) (defaults to: :unset)

    The string that you assigned to describe the resource.

  • attributes (String) (defaults to: :unset)

    The JSON Object string that stores application-specific data. If attributes have not been set, {} is returned.

  • role_sid (String) (defaults to: :unset)

    The SID of a service-level Role to assign to the user.

  • x_twilio_webhook_enabled (UserEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 206

def update(
    friendly_name: :unset, 
    attributes: :unset, 
    role_sid: :unset, 
    x_twilio_webhook_enabled: :unset
)

    data = Twilio::Values.of({
        'FriendlyName' => friendly_name,
        'Attributes' => attributes,
        'RoleSid' => role_sid,
    })

    headers = Twilio::Values.of({ 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
    payload = @version.update('POST', @uri, data: data, headers: headers)
    UserInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#user_conversations(conversation_sid = :unset) ⇒ UserConversationList, UserConversationContext

Access the user_conversations

Returns:

Raises:

  • (ArgumentError)


232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
# File 'lib/twilio-ruby/rest/conversations/v1/user.rb', line 232

def user_conversations(conversation_sid=:unset)

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

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

    unless @user_conversations
        @user_conversations = UserConversationList.new(
            @version, user_sid: @solution[:sid], )
    end

 @user_conversations
end