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.



766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 766

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_sid ⇒ String

Returns The SID of the Account associated with the Message resource.

Returns:

  • (String) —

    The SID of the Account associated with the Message resource



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

def 
    @properties['account_sid']
end

#api_version ⇒ String

Returns The API version used to process the Message.

Returns:

  • (String) —

    The API version used to process the Message



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

def api_version
    @properties['api_version']
end

#body ⇒ String

Returns The text content of the message.

Returns:

  • (String) —

    The text content of the message



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

def body
    @properties['body']
end

#context ⇒ MessageContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



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

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

#date_created ⇒ Time

Returns The RFC 2822 timestamp (in GMT) of when the Message resource was created.

Returns:

  • (Time) —

    The RFC 2822 timestamp (in GMT) of when the Message resource was created



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

def date_created
    @properties['date_created']
end

#date_sent ⇒ Time

Returns The RFC 2822 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 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.



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

def date_sent
    @properties['date_sent']
end

#date_updated ⇒ Time

Returns The RFC 2822 timestamp (in GMT) of when the Message resource was last updated.

Returns:

  • (Time) —

    The RFC 2822 timestamp (in GMT) of when the Message resource was last updated



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

def date_updated
    @properties['date_updated']
end

#delete ⇒ Boolean

Delete the MessageInstance

Returns:

  • (Boolean) —

    True if delete succeeds, false otherwise



933
934
935
936
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 933

def delete

    context.delete
end

#direction ⇒ Direction

Returns:

  • (Direction)


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

def direction
    @properties['direction']
end

#error_code ⇒ String

Returns The error code 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 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.



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

def error_code
    @properties['error_code']
end

#error_message ⇒ String

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.



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

def error_message
    @properties['error_message']
end

#feedback ⇒ feedback

Access the feedback

Returns:



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

def feedback
    context.feedback
end

#fetch ⇒ MessageInstance

Fetch the MessageInstance

Returns:



941
942
943
944
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 941

def fetch

    context.fetch
end

#from ⇒ String

Returns The sender's phone number (in E.164 format), alphanumeric sender ID, Wireless SIM, short code, or channel address (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:

  • (String) —

    The sender's phone number (in E.164 format), alphanumeric sender ID, Wireless SIM, short code, or channel address (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.



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

def from
    @properties['from']
end

#inspect ⇒ Object

Provide a detailed, user friendly representation



985
986
987
988
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 985

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

#media ⇒ media

Access the media

Returns:



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

def media
    context.media
end

#messaging_service_sid ⇒ String

Returns The SID of the Messaging Service associated with the Message resource. A unique default value is assigned if a Messaging Service is not used.

Returns:

  • (String) —

    The SID of the Messaging Service associated with the Message resource. A unique default value is assigned if a Messaging Service is not used.



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

def messaging_service_sid
    @properties['messaging_service_sid']
end

#num_media ⇒ String

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

Returns:

  • (String) —

    The number of media files associated with the Message resource.



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

def num_media
    @properties['num_media']
end

#num_segments ⇒ String

Returns The number of segments that make up the complete message. SMS message bodies that exceed the 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 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.



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

def num_segments
    @properties['num_segments']
end

#price ⇒ String

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 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 for more details.



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

def price
    @properties['price']
end

#price_unit ⇒ String

Returns The currency in which price is measured, in ISO 4127 format (e.g. usd, eur, jpy).

Returns:

  • (String) —

    The currency in which price is measured, in ISO 4127 format (e.g. usd, eur, jpy).



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

def price_unit
    @properties['price_unit']
end

#sid ⇒ String

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

Returns:

  • (String) —

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



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

def sid
    @properties['sid']
end

#status ⇒ Status

Returns:

  • (Status)


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

def status
    @properties['status']
end

#subresource_uris ⇒ Hash

Returns A list of related resources identified by their URIs relative to https://api.twilio.com.

Returns:

  • (Hash) —

    A list of related resources identified by their URIs relative to https://api.twilio.com



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

def subresource_uris
    @properties['subresource_uris']
end

#to ⇒ String

Returns The recipient's phone number (in E.164 format) or channel address (e.g. whatsapp:+15552229999).

Returns:

  • (String) —

    The recipient's phone number (in E.164 format) or channel address (e.g. whatsapp:+15552229999)



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

def to
    @properties['to']
end

#to_s ⇒ Object

Provide a user friendly representation



978
979
980
981
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 978

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:



951
952
953
954
955
956
957
958
959
960
# File 'lib/twilio-ruby/rest/api/v2010/account/message.rb', line 951

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

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

#uri ⇒ String

Returns The URI of the Message resource, relative to https://api.twilio.com.

Returns:

  • (String) —

    The URI of the Message resource, relative to https://api.twilio.com.



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

def uri
    @properties['uri']
end