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



255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 255

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



308
309
310
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 308

def 
  @properties['account_sid']
end

#attributesString



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

def attributes
  @properties['attributes']
end

#bodyString



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

def body
  @properties['body']
end

#channel_sidString



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

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



288
289
290
291
292
293
294
295
296
297
298
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 288

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

#date_createdTime



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

def date_created
  @properties['date_created']
end

#date_updatedTime



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

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Delete the MessageInstance



388
389
390
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 388

def delete
  context.delete
end

#fetchMessageInstance

Fetch the MessageInstance



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

def fetch
  context.fetch
end

#fromString



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

def from
  @properties['from']
end

#indexString



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

def index
  @properties['index']
end

#inspectObject

Provide a detailed, user friendly representation



410
411
412
413
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 410

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

#service_sidString



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

def service_sid
  @properties['service_sid']
end

#sidString



302
303
304
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb', line 302

def sid
  @properties['sid']
end

#toString



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

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



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

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



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

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

#urlString



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

def url
  @properties['url']
end

#was_editedBoolean



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

def was_edited
  @properties['was_edited']
end