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

  • service_sid (String) (defaults to: nil)

    The service_sid

  • channel_sid (String) (defaults to: nil)

    The channel_sid

  • sid (String) (defaults to: nil)

    The sid


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

Returns The account_sid.

Returns:

  • (String)

    The account_sid


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

def 
  @properties['account_sid']
end

#attributesString

Returns The attributes.

Returns:

  • (String)

    The attributes


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

def attributes
  @properties['attributes']
end

#bodyString

Returns The body.

Returns:

  • (String)

    The body


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

def body
  @properties['body']
end

#channel_sidString

Returns The channel_sid.

Returns:

  • (String)

    The channel_sid


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

Returns:


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

Returns The date_created.

Returns:

  • (Time)

    The date_created


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

Returns The date_updated.

Returns:

  • (Time)

    The date_updated


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

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


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

Returns:


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

def fetch
  context.fetch
end

#fromString

Returns The from.

Returns:

  • (String)

    The from


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

def from
  @properties['from']
end

#indexString

Returns The index.

Returns:

  • (String)

    The index


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

Returns The service_sid.

Returns:

  • (String)

    The service_sid


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

Returns The sid.

Returns:

  • (String)

    The sid


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

def sid
  @properties['sid']
end

#toString

Returns The to.

Returns:

  • (String)

    The to


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

Parameters:

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

    The body

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

    The attributes

Returns:


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

Returns The url.

Returns:

  • (String)

    The url


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

def url
  @properties['url']
end

#was_editedBoolean

Returns The was_edited.

Returns:

  • (Boolean)

    The was_edited


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

def was_edited
  @properties['was_edited']
end