Class: Twilio::REST::IpMessaging::V1::ServiceContext::ChannelContext::MessageInstance

Inherits:
Twilio::REST::InstanceResource show all
Defined in:
lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, channel_sid: nil, sid: nil) ⇒ MessageInstance

Initialize the MessageInstance

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 Message resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 281

def initialize(version, payload , service_sid: nil, channel_sid: nil, sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'account_sid' => payload['account_sid'],
        'attributes' => payload['attributes'],
        'service_sid' => payload['service_sid'],
        'to' => payload['to'],
        'channel_sid' => payload['channel_sid'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'was_edited' => payload['was_edited'],
        'from' => payload['from'],
        'body' => payload['body'],
        'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
        'url' => payload['url'],
    }

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

Instance Method Details

#account_sidString

Returns:

  • (String)


325
326
327
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 325

def 
    @properties['account_sid']
end

#attributesString

Returns:

  • (String)


331
332
333
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 331

def attributes
    @properties['attributes']
end

#bodyString

Returns:

  • (String)


379
380
381
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 379

def body
    @properties['body']
end

#channel_sidString

Returns:

  • (String)


349
350
351
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 349

def channel_sid
    @properties['channel_sid']
end

#contextMessageContext

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

Returns:



310
311
312
313
314
315
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 310

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

#date_createdTime

Returns:

  • (Time)


355
356
357
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 355

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


361
362
363
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 361

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the MessageInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



398
399
400
401
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 398

def delete

    context.delete
end

#fetchMessageInstance

Fetch the MessageInstance

Returns:



406
407
408
409
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 406

def fetch

    context.fetch
end

#fromString

Returns:

  • (String)


373
374
375
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 373

def from
    @properties['from']
end

#indexString

Returns:

  • (String)


385
386
387
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 385

def index
    @properties['index']
end

#inspectObject

Provide a detailed, user friendly representation



436
437
438
439
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 436

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

#service_sidString

Returns:

  • (String)


337
338
339
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 337

def service_sid
    @properties['service_sid']
end

#sidString

Returns:

  • (String)


319
320
321
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 319

def sid
    @properties['sid']
end

#toString

Returns:

  • (String)


343
344
345
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 343

def to
    @properties['to']
end

#to_sObject

Provide a user friendly representation



429
430
431
432
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 429

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

#update(body: :unset, attributes: :unset) ⇒ MessageInstance

Update the MessageInstance

Parameters:

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

Returns:



416
417
418
419
420
421
422
423
424
425
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 416

def update(
    body: :unset, 
    attributes: :unset
)

    context.update(
        body: body, 
        attributes: attributes, 
    )
end

#urlString

Returns:

  • (String)


391
392
393
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 391

def url
    @properties['url']
end

#was_editedBoolean

Returns:

  • (Boolean)


367
368
369
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 367

def was_edited
    @properties['was_edited']
end