Class: Twilio::REST::Chat::V1::ServiceContext::ChannelContext::MessageContext

Inherits:
InstanceContext
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v1/service/channel/message.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, service_sid, channel_sid, sid) ⇒ MessageContext

Initialize the MessageContext

Parameters:

  • version (Version)

    Version that contains the resource

  • service_sid (String)

    The SID of the [Service](www.twilio.com/docs/api/chat/rest/services) to fetch the resource from.

  • channel_sid (String)

    The unique ID of the [Channel](www.twilio.com/docs/api/chat/rest/channels) the message to fetch belongs to. Can be the Channel’s sid or unique_name.

  • sid (String)

    The Twilio-provided string that uniquely identifies the Message resource to fetch.



199
200
201
202
203
204
205
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 199

def initialize(version, service_sid, channel_sid, sid)
  super(version)

  # Path Solution
  @solution = {service_sid: service_sid, channel_sid: channel_sid, sid: sid, }
  @uri = "/Services/#{@solution[:service_sid]}/Channels/#{@solution[:channel_sid]}/Messages/#{@solution[:sid]}"
end

Instance Method Details

#deleteBoolean

Delete the MessageInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



225
226
227
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 225

def delete
   @version.delete('DELETE', @uri)
end

#fetchMessageInstance

Fetch the MessageInstance

Returns:



210
211
212
213
214
215
216
217
218
219
220
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 210

def fetch
  payload = @version.fetch('GET', @uri)

  MessageInstance.new(
      @version,
      payload,
      service_sid: @solution[:service_sid],
      channel_sid: @solution[:channel_sid],
      sid: @solution[:sid],
  )
end

#inspectObject

Provide a detailed, user friendly representation



260
261
262
263
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 260

def inspect
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Chat.V1.MessageContext #{context}>"
end

#to_sObject

Provide a user friendly representation



253
254
255
256
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 253

def to_s
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Chat.V1.MessageContext #{context}>"
end

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

Update the MessageInstance

Parameters:

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

    The message to send to the channel. Can also be an empty string or null, which sets the value as an empty string. You can send structured data in the body by serializing it as a string.

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

    A valid JSON string that contains application-specific data.

Returns:



237
238
239
240
241
242
243
244
245
246
247
248
249
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/message.rb', line 237

def update(body: :unset, attributes: :unset)
  data = Twilio::Values.of({'Body' => body, 'Attributes' => attributes, })

  payload = @version.update('POST', @uri, data: data)

  MessageInstance.new(
      @version,
      payload,
      service_sid: @solution[:service_sid],
      channel_sid: @solution[:channel_sid],
      sid: @solution[:sid],
  )
end