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



272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 272

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'].to_i,
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sidString



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

def 
  @properties['account_sid']
end

#attributesString



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

def attributes
  @properties['attributes']
end

#bodyString



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

def body
  @properties['body']
end

#channel_sidString



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



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

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

#date_createdTime



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



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

Deletes the MessageInstance



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

def delete
  context.delete
end

#fetchMessageInstance

Fetch a MessageInstance



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

def fetch
  context.fetch
end

#fromString



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

def from
  @properties['from']
end

#indexString



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



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

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

#service_sidString



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



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

def sid
  @properties['sid']
end

#toString



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



423
424
425
426
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 423

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



417
418
419
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 417

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

#urlString



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

def url
  @properties['url']
end

#was_editedBoolean



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

def was_edited
  @properties['was_edited']
end