Class: Twilio::REST::Api::V2010::AccountContext::MessageInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/api/v2010/account/message.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, account_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) (defaults to: nil)

    The SID of the Account that created this Message resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 752

def initialize(version, payload , account_sid: nil, sid: nil)
    super(version)
    
    
    # Marshaled Properties
    @properties = { 
        'body' => payload['body'],
        'num_segments' => payload['num_segments'],
        'direction' => payload['direction'],
        'from' => payload['from'],
        'to' => payload['to'],
        'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
        'price' => payload['price'],
        'error_message' => payload['error_message'],
        'uri' => payload['uri'],
        'account_sid' => payload['account_sid'],
        'num_media' => payload['num_media'],
        'status' => payload['status'],
        'messaging_service_sid' => payload['messaging_service_sid'],
        'sid' => payload['sid'],
        'date_sent' => Twilio.deserialize_rfc2822(payload['date_sent']),
        'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
        'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
        'price_unit' => payload['price_unit'],
        'api_version' => payload['api_version'],
        'subresource_uris' => payload['subresource_uris'],
    }

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

Instance Method Details

#account_sidString

Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) associated with the Message resource.

Returns:



852
853
854
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 852

def 
    @properties['account_sid']
end

#api_versionString

Returns The API version used to process the Message.

Returns:

  • (String)

    The API version used to process the Message



906
907
908
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 906

def api_version
    @properties['api_version']
end

#bodyString

Returns The text content of the message.

Returns:

  • (String)

    The text content of the message



798
799
800
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 798

def body
    @properties['body']
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:



789
790
791
792
793
794
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 789

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

#date_createdTime

Returns The [RFC 2822](datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message resource was created.

Returns:



888
889
890
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 888

def date_created
    @properties['date_created']
end

#date_sentTime

Returns The [RFC 2822](datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message was sent. For an outgoing message, this is when Twilio sent the message. For an incoming message, this is when Twilio sent the HTTP request to your incoming message webhook URL.

Returns:

  • (Time)

    The [RFC 2822](datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message was sent. For an outgoing message, this is when Twilio sent the message. For an incoming message, this is when Twilio sent the HTTP request to your incoming message webhook URL.



882
883
884
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 882

def date_sent
    @properties['date_sent']
end

#date_updatedTime

Returns The [RFC 2822](datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message resource was last updated.

Returns:



828
829
830
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 828

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the MessageInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



919
920
921
922
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 919

def delete

    context.delete
end

#directionDirection

Returns:

  • (Direction)


810
811
812
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 810

def direction
    @properties['direction']
end

#error_codeString

Returns The [error code](www.twilio.com/docs/api/errors) returned if the Message ‘status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.

Returns:

  • (String)

    The [error code](www.twilio.com/docs/api/errors) returned if the Message ‘status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.



894
895
896
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 894

def error_code
    @properties['error_code']
end

#error_messageString

Returns The description of the ‘error_code` if the Message `status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.

Returns:

  • (String)

    The description of the ‘error_code` if the Message `status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.



840
841
842
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 840

def error_message
    @properties['error_message']
end

#feedbackfeedback

Access the feedback

Returns:



951
952
953
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 951

def feedback
    context.feedback
end

#fetchMessageInstance

Fetch the MessageInstance

Returns:



927
928
929
930
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 927

def fetch

    context.fetch
end

#fromString

Returns The sender’s phone number (in [E.164](en.wikipedia.org/wiki/E.164) format), [alphanumeric sender ID](www.twilio.com/docs/sms/quickstart), [Wireless SIM](www.twilio.com/docs/iot/wireless/programmable-wireless-send-machine-machine-sms-commands), [short code](www.twilio.com/en-us/messaging/channels/sms/short-codes), or [channel address](www.twilio.com/docs/messaging/channels) (e.g., ‘whatsapp:+15554449999`). For incoming messages, this is the number or channel address of the sender. For outgoing messages, this value is a Twilio phone number, alphanumeric sender ID, short code, or channel address from which the message is sent.

Returns:



816
817
818
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 816

def from
    @properties['from']
end

#inspectObject

Provide a detailed, user friendly representation



971
972
973
974
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 971

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

#mediamedia

Access the media

Returns:



958
959
960
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 958

def media
    context.media
end

#messaging_service_sidString

Returns The SID of the [Messaging Service](www.twilio.com/docs/messaging/api/service-resource) associated with the Message resource. A unique default value is assigned if a Messaging Service is not used.

Returns:



870
871
872
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 870

def messaging_service_sid
    @properties['messaging_service_sid']
end

#num_mediaString

Returns The number of media files associated with the Message resource.

Returns:

  • (String)

    The number of media files associated with the Message resource.



858
859
860
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 858

def num_media
    @properties['num_media']
end

#num_segmentsString

Returns The number of segments that make up the complete message. SMS message bodies that exceed the [character limit](www.twilio.com/docs/glossary/what-sms-character-limit) are segmented and charged as multiple messages. Note: For messages sent via a Messaging Service, ‘num_segments` is initially `0`, since a sender hasn’t yet been assigned.

Returns:

  • (String)

    The number of segments that make up the complete message. SMS message bodies that exceed the [character limit](www.twilio.com/docs/glossary/what-sms-character-limit) are segmented and charged as multiple messages. Note: For messages sent via a Messaging Service, ‘num_segments` is initially `0`, since a sender hasn’t yet been assigned.



804
805
806
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 804

def num_segments
    @properties['num_segments']
end

#priceString

Returns The amount billed for the message in the currency specified by ‘price_unit`. The `price` is populated after the message has been sent/received, and may not be immediately availalble. View the [Pricing page](www.twilio.com/en-us/pricing) for more details.

Returns:

  • (String)

    The amount billed for the message in the currency specified by ‘price_unit`. The `price` is populated after the message has been sent/received, and may not be immediately availalble. View the [Pricing page](www.twilio.com/en-us/pricing) for more details.



834
835
836
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 834

def price
    @properties['price']
end

#price_unitString

Returns The currency in which ‘price` is measured, in [ISO 4127](www.iso.org/iso/home/standards/currency_codes.htm) format (e.g. `usd`, `eur`, `jpy`).

Returns:



900
901
902
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 900

def price_unit
    @properties['price_unit']
end

#sidString

Returns The unique, Twilio-provided string that identifies the Message resource.

Returns:

  • (String)

    The unique, Twilio-provided string that identifies the Message resource.



876
877
878
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 876

def sid
    @properties['sid']
end

#statusStatus

Returns:

  • (Status)


864
865
866
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 864

def status
    @properties['status']
end

#subresource_urisHash

Returns A list of related resources identified by their URIs relative to ‘api.twilio.com`.

Returns:

  • (Hash)

    A list of related resources identified by their URIs relative to ‘api.twilio.com`



912
913
914
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 912

def subresource_uris
    @properties['subresource_uris']
end

#toString

Returns The recipient’s phone number (in [E.164](en.wikipedia.org/wiki/E.164) format) or [channel address](www.twilio.com/docs/messaging/channels) (e.g. ‘whatsapp:+15552229999`).

Returns:



822
823
824
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 822

def to
    @properties['to']
end

#to_sObject

Provide a user friendly representation



964
965
966
967
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 964

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

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

Update the MessageInstance

Parameters:

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

    The new ‘body` of the Message resource. To redact the text content of a Message, this parameter’s value must be an empty string

  • status (UpdateStatus) (defaults to: :unset)

Returns:



937
938
939
940
941
942
943
944
945
946
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 937

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

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

#uriString

Returns The URI of the Message resource, relative to ‘api.twilio.com`.

Returns:

  • (String)

    The URI of the Message resource, relative to ‘api.twilio.com`.



846
847
848
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 846

def uri
    @properties['uri']
end