Class: Twilio::REST::FrontlineApi::V1::UserInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/frontline_api/v1/user.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ UserInstance

Initialize the UserInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this User resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 166

def initialize(version, payload , sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'identity' => payload['identity'],
        'friendly_name' => payload['friendly_name'],
        'avatar' => payload['avatar'],
        'state' => payload['state'],
        'is_available' => payload['is_available'],
        'url' => payload['url'],
    }

    # Context
    @instance_context = nil
    @params = { 'sid' => sid  || @properties['sid']  , }
end

Instance Method Details

#avatarString

Returns The avatar URL which will be shown in Frontline application.

Returns:

  • (String)

    The avatar URL which will be shown in Frontline application.



216
217
218
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 216

def avatar
    @properties['avatar']
end

#contextUserContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



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

def context
    unless @instance_context
        @instance_context = UserContext.new(@version , @params['sid'])
    end
    @instance_context
end

#fetchUserInstance

Fetch the UserInstance

Returns:



241
242
243
244
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 241

def fetch

    context.fetch
end

#friendly_nameString

Returns The string that you assigned to describe the User.

Returns:

  • (String)

    The string that you assigned to describe the User.



210
211
212
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 210

def friendly_name
    @properties['friendly_name']
end

#identityString

Returns The application-defined string that uniquely identifies the resource’s User. This value is often a username or an email address, and is case-sensitive.

Returns:

  • (String)

    The application-defined string that uniquely identifies the resource’s User. This value is often a username or an email address, and is case-sensitive.



204
205
206
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 204

def identity
    @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



277
278
279
280
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 277

def inspect
    values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.FrontlineApi.V1.UserInstance #{values}>"
end

#is_availableBoolean

Returns Whether the User is available for new conversations. Defaults to ‘false` for new users.

Returns:

  • (Boolean)

    Whether the User is available for new conversations. Defaults to ‘false` for new users.



228
229
230
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 228

def is_available
    @properties['is_available']
end

#sidString

Returns The unique string that we created to identify the User resource.

Returns:

  • (String)

    The unique string that we created to identify the User resource.



198
199
200
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 198

def sid
    @properties['sid']
end

#stateStateType

Returns:

  • (StateType)


222
223
224
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 222

def state
    @properties['state']
end

#to_sObject

Provide a user friendly representation



270
271
272
273
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 270

def to_s
    values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.FrontlineApi.V1.UserInstance #{values}>"
end

#update(friendly_name: :unset, avatar: :unset, state: :unset, is_available: :unset) ⇒ UserInstance

Update the UserInstance

Parameters:

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

    The string that you assigned to describe the User.

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

    The avatar URL which will be shown in Frontline application.

  • state (StateType) (defaults to: :unset)
  • is_available (Boolean) (defaults to: :unset)

    Whether the User is available for new conversations. Set to ‘false` to prevent User from receiving new inbound conversations if you are using [Pool Routing](www.twilio.com/docs/frontline/handle-incoming-conversations#3-pool-routing).

Returns:



253
254
255
256
257
258
259
260
261
262
263
264
265
266
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 253

def update(
    friendly_name: :unset, 
    avatar: :unset, 
    state: :unset, 
    is_available: :unset
)

    context.update(
        friendly_name: friendly_name, 
        avatar: avatar, 
        state: state, 
        is_available: is_available, 
    )
end

#urlString

Returns An absolute API resource URL for this user.

Returns:

  • (String)

    An absolute API resource URL for this user.



234
235
236
# File 'lib/twilio-ruby/rest/frontline_api/v1/user.rb', line 234

def url
    @properties['url']
end