twilio-ruby 3.12.3 → 3.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/CHANGES.md +12 -0
- data/README.md +14 -14
- data/Rakefile +2 -2
- data/docs/faq.rst +3 -3
- data/docs/getting-started.rst +17 -12
- data/docs/usage/accounts.rst +6 -6
- data/docs/usage/applications.rst +5 -5
- data/docs/usage/basics.rst +1 -1
- data/docs/usage/caller-ids.rst +4 -2
- data/docs/usage/conferences.rst +1 -1
- data/docs/usage/errors.rst +3 -3
- data/docs/usage/messages.rst +24 -16
- data/docs/usage/phone-calls.rst +10 -8
- data/docs/usage/phone-numbers.rst +15 -11
- data/docs/usage/sip.rst +9 -8
- data/docs/usage/twiml.rst +2 -2
- data/examples/examples.rb +44 -20
- data/lib/rack/twilio_webhook_authentication.rb +5 -1
- data/lib/twilio-ruby/rest/calls.rb +4 -4
- data/lib/twilio-ruby/rest/client.rb +25 -23
- data/lib/twilio-ruby/rest/conferences/participants.rb +2 -2
- data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +1 -1
- data/lib/twilio-ruby/rest/instance_resource.rb +9 -5
- data/lib/twilio-ruby/rest/list_resource.rb +18 -10
- data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +1 -1
- data/lib/twilio-ruby/rest/queues/members.rb +1 -1
- data/lib/twilio-ruby/rest/sip.rb +1 -3
- data/lib/twilio-ruby/rest/utils.rb +11 -3
- data/lib/twilio-ruby/util/capability.rb +4 -4
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/rack/twilio_webhook_authentication_spec.rb +18 -6
- data/spec/rest/account_spec.rb +24 -8
- data/spec/rest/call_spec.rb +6 -2
- data/spec/rest/client_spec.rb +37 -14
- data/spec/rest/conference_spec.rb +3 -1
- data/spec/rest/instance_resource_spec.rb +1 -1
- data/spec/rest/numbers_spec.rb +18 -6
- data/spec/rest/queue_spec.rb +3 -1
- data/spec/rest/recording_spec.rb +3 -1
- data/spec/util/url_encode_spec.rb +1 -1
- metadata +1 -1
    
        checksums.yaml
    CHANGED
    
    | @@ -1,15 +1,15 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            !binary "U0hBMQ==":
         | 
| 3 3 | 
             
              metadata.gz: !binary |-
         | 
| 4 | 
            -
                 | 
| 4 | 
            +
                ZDRmNTExMjMzZmVlZGE4ODU1OTAyMjM4YzU2ZjViYjY0ZjA5ODBiMg==
         | 
| 5 5 | 
             
              data.tar.gz: !binary |-
         | 
| 6 | 
            -
                 | 
| 6 | 
            +
                NjhkMTg4ODMyNzU4ZjJlODU3YmZjZDJhNDkyZjI1MWMwOTlkMmNhNA==
         | 
| 7 7 | 
             
            SHA512:
         | 
| 8 8 | 
             
              metadata.gz: !binary |-
         | 
| 9 | 
            -
                 | 
| 10 | 
            -
                 | 
| 11 | 
            -
                 | 
| 9 | 
            +
                NzMxNzNmNWViMDI5M2E3Yjk4MGUwMzRlZjhkZjY0YzQ5NGE2ODA4OTZkYjU4
         | 
| 10 | 
            +
                MTA5MzdjNTk2YWU5NzgzMzYxZjZmNTZiY2Y3MmI3ZWJjNDQyYjc0MDdlMzQw
         | 
| 11 | 
            +
                ODE0N2RkZTA1NzM1ZGNmYzYyMDQyMWQ2MzkzNGM0Y2Y4NDY0NzU=
         | 
| 12 12 | 
             
              data.tar.gz: !binary |-
         | 
| 13 | 
            -
                 | 
| 14 | 
            -
                 | 
| 15 | 
            -
                 | 
| 13 | 
            +
                OWY4YWVhYjEzZjYwZmMwMGNhZjM2YzE3MWExZmY0YzFkZWYxZDg0MDk0ZDcw
         | 
| 14 | 
            +
                NWE1MGJmNjdmZWI3MGQyNGY2M2I2NDU3NTNlY2ZmNzNhMjUwNGNlMmJhNjdj
         | 
| 15 | 
            +
                NDI3OTE1ZTg1MDFkMDFmNjE0NjgxOWUzMjE1ZmU0NmI4ZjgxOGM=
         | 
    
        data/CHANGES.md
    CHANGED
    
    | @@ -1,6 +1,18 @@ | |
| 1 1 | 
             
            twilio-ruby changelog
         | 
| 2 2 | 
             
            =====================
         | 
| 3 3 |  | 
| 4 | 
            +
            Version 3.13.0
         | 
| 5 | 
            +
            --------------
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            Released September 23, 2014
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            - Deprecates 1.8.7 support
         | 
| 10 | 
            +
            - Internal code style changes including:
         | 
| 11 | 
            +
                - change symbol hash syntax to Ruby 1.9 style
         | 
| 12 | 
            +
                - remove curly braces from hash arguments to methods
         | 
| 13 | 
            +
                - add spaces around curly braces in blocks
         | 
| 14 | 
            +
                - reduces all lines to less than 80 characters
         | 
| 15 | 
            +
             | 
| 4 16 | 
             
            Version 3.12.3
         | 
| 5 17 | 
             
            --------------
         | 
| 6 18 |  | 
    
        data/README.md
    CHANGED
    
    | @@ -57,9 +57,9 @@ end | |
| 57 57 |  | 
| 58 58 | 
             
            ``` ruby
         | 
| 59 59 | 
             
            @client.messages.create(
         | 
| 60 | 
            -
              : | 
| 61 | 
            -
              : | 
| 62 | 
            -
              : | 
| 60 | 
            +
              from: '+14159341234',
         | 
| 61 | 
            +
              to: '+16105557069',
         | 
| 62 | 
            +
              body: 'Hey there!'
         | 
| 63 63 | 
             
            )
         | 
| 64 64 | 
             
            ```
         | 
| 65 65 |  | 
| @@ -67,10 +67,10 @@ end | |
| 67 67 |  | 
| 68 68 | 
             
            ``` ruby
         | 
| 69 69 | 
             
            @client.messages.create(
         | 
| 70 | 
            -
              : | 
| 71 | 
            -
              : | 
| 72 | 
            -
              : | 
| 73 | 
            -
              : | 
| 70 | 
            +
              from: '+14159341234',
         | 
| 71 | 
            +
              to: '+16105557069',
         | 
| 72 | 
            +
              body: 'Hey there!',
         | 
| 73 | 
            +
              media_url: 'http://example.com/smileyface.jpg'
         | 
| 74 74 | 
             
            )
         | 
| 75 75 | 
             
            ```
         | 
| 76 76 |  | 
| @@ -79,9 +79,9 @@ end | |
| 79 79 | 
             
            ``` ruby
         | 
| 80 80 | 
             
            # make a new outgoing call
         | 
| 81 81 | 
             
            @call = @client.calls.create(
         | 
| 82 | 
            -
              : | 
| 83 | 
            -
              : | 
| 84 | 
            -
              : | 
| 82 | 
            +
              from: '+14159341234',
         | 
| 83 | 
            +
              to: '+18004567890',
         | 
| 84 | 
            +
              url: 'http://example.com/call-handler'
         | 
| 85 85 | 
             
            )
         | 
| 86 86 |  | 
| 87 87 | 
             
            # hangup a ringing call, but don't touch it if it's connected
         | 
| @@ -109,13 +109,13 @@ end | |
| 109 109 | 
             
            ``` ruby
         | 
| 110 110 | 
             
            # print some available numbers
         | 
| 111 111 | 
             
            @numbers = @client.available_phone_numbers.get('US').local.list(
         | 
| 112 | 
            -
              : | 
| 112 | 
            +
              contains: 'AWESOME'
         | 
| 113 113 | 
             
            )
         | 
| 114 114 | 
             
            @numbers.each {|num| puts num.phone_number}
         | 
| 115 115 |  | 
| 116 116 | 
             
            # buy the first one
         | 
| 117 117 | 
             
            @number = @numbers[0].phone_number
         | 
| 118 | 
            -
            @client.incoming_phone_numbers.create(: | 
| 118 | 
            +
            @client.incoming_phone_numbers.create(phone_number: @number)
         | 
| 119 119 | 
             
            ```
         | 
| 120 120 |  | 
| 121 121 | 
             
            ## Getting Started With Client Capability Tokens
         | 
| @@ -158,8 +158,8 @@ require 'twilio-ruby' | |
| 158 158 |  | 
| 159 159 | 
             
            # build up a response
         | 
| 160 160 | 
             
            response = Twilio::TwiML::Response.new do |r|
         | 
| 161 | 
            -
              r.Say 'hello there', : | 
| 162 | 
            -
              r.Dial : | 
| 161 | 
            +
              r.Say 'hello there', voice: 'alice'
         | 
| 162 | 
            +
              r.Dial callerId: '+14159992222' do |d|
         | 
| 163 163 | 
             
                d.Client 'jenny'
         | 
| 164 164 | 
             
              end
         | 
| 165 165 | 
             
            end
         | 
    
        data/Rakefile
    CHANGED
    
    
    
        data/docs/faq.rst
    CHANGED
    
    | @@ -34,9 +34,9 @@ Then you can convert user input to phone numbers like this: | |
| 34 34 | 
             
                def convert_to_e164(raw_phone)
         | 
| 35 35 | 
             
                    Phony.format(
         | 
| 36 36 | 
             
                        raw_phone,
         | 
| 37 | 
            -
                        : | 
| 38 | 
            -
                        : | 
| 37 | 
            +
                        format: :international,
         | 
| 38 | 
            +
                        spaces: ''
         | 
| 39 39 | 
             
                    ).gsub(/\s+/, "") # Phony won't remove all spaces
         | 
| 40 | 
            -
                end | 
| 40 | 
            +
                end
         | 
| 41 41 |  | 
| 42 42 | 
             
                puts convert_to_e164('212 555 1234')   # prints +12125551234
         | 
    
        data/docs/getting-started.rst
    CHANGED
    
    | @@ -19,8 +19,11 @@ Make a Call | |
| 19 19 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 20 20 |  | 
| 21 21 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 22 | 
            -
                @call = @client.calls.create( | 
| 23 | 
            -
             | 
| 22 | 
            +
                @call = @client.calls.create(
         | 
| 23 | 
            +
                  to: "9991231234",
         | 
| 24 | 
            +
                  from: "9991231234",
         | 
| 25 | 
            +
                  url: "http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient"
         | 
| 26 | 
            +
                )
         | 
| 24 27 | 
             
                puts @call.length
         | 
| 25 28 | 
             
                puts @call.sid
         | 
| 26 29 |  | 
| @@ -38,10 +41,11 @@ Send an SMS | |
| 38 41 |  | 
| 39 42 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 40 43 |  | 
| 41 | 
            -
                @message = @client.messages.create( | 
| 42 | 
            -
             | 
| 43 | 
            -
             | 
| 44 | 
            -
             | 
| 44 | 
            +
                @message = @client.messages.create(
         | 
| 45 | 
            +
                  to: "+12316851234",
         | 
| 46 | 
            +
                  from: "+15555555555",
         | 
| 47 | 
            +
                  body: "Hello there!"
         | 
| 48 | 
            +
                )
         | 
| 45 49 |  | 
| 46 50 | 
             
            Send an MMS
         | 
| 47 51 | 
             
            ===========
         | 
| @@ -56,11 +60,12 @@ Send an MMS | |
| 56 60 |  | 
| 57 61 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 58 62 |  | 
| 59 | 
            -
                @message = @client.messages.create( | 
| 60 | 
            -
             | 
| 61 | 
            -
             | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 63 | 
            +
                @message = @client.messages.create(
         | 
| 64 | 
            +
                  to: "+15558676309",
         | 
| 65 | 
            +
                  from: "+15555555555",
         | 
| 66 | 
            +
                  body: "Jenny I need you!",
         | 
| 67 | 
            +
                  media_url: "http://twilio.com/heart.jpg"
         | 
| 68 | 
            +
                )
         | 
| 64 69 |  | 
| 65 70 | 
             
            Generating TwiML
         | 
| 66 71 | 
             
            =================
         | 
| @@ -72,7 +77,7 @@ to easily create such responses. | |
| 72 77 | 
             
            .. code-block:: ruby
         | 
| 73 78 |  | 
| 74 79 | 
             
                Twilio::TwiML::Response do |r|
         | 
| 75 | 
            -
                    r.Play "https://api.twilio.com/cowbell.mp3", : | 
| 80 | 
            +
                    r.Play "https://api.twilio.com/cowbell.mp3", loop: 5
         | 
| 76 81 | 
             
                end.text
         | 
| 77 82 |  | 
| 78 83 | 
             
            .. code-block:: xml
         | 
    
        data/docs/usage/accounts.rst
    CHANGED
    
    | @@ -28,7 +28,7 @@ Right now the only valid attribute is :attr:`friendly_name`. | |
| 28 28 |  | 
| 29 29 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 30 30 | 
             
                @account = @client.accounts.get(account_sid)
         | 
| 31 | 
            -
                @account.update( | 
| 31 | 
            +
                @account.update(friendly_name: "My Awesome Account")
         | 
| 32 32 |  | 
| 33 33 |  | 
| 34 34 | 
             
            Creating Subaccounts
         | 
| @@ -45,7 +45,7 @@ Subaccounts are easy to make. | |
| 45 45 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 46 46 |  | 
| 47 47 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 48 | 
            -
                @subaccount = @client.accounts.create( | 
| 48 | 
            +
                @subaccount = @client.accounts.create(name: "My Awesome SubAccount")
         | 
| 49 49 |  | 
| 50 50 |  | 
| 51 51 | 
             
            Managing Subaccounts
         | 
| @@ -70,20 +70,20 @@ Client X hasn't paid you recently, so let's suspend their account. | |
| 70 70 |  | 
| 71 71 | 
             
            .. code-block:: ruby
         | 
| 72 72 |  | 
| 73 | 
            -
                @subaccount.update( | 
| 73 | 
            +
                @subaccount.update(status: 'suspended')
         | 
| 74 74 |  | 
| 75 75 | 
             
            If it was just a misunderstanding, reenable their account.
         | 
| 76 76 |  | 
| 77 77 | 
             
            .. code-block:: ruby
         | 
| 78 78 |  | 
| 79 | 
            -
                @subaccount.update( | 
| 79 | 
            +
                @subaccount.update(status: 'active')
         | 
| 80 80 |  | 
| 81 81 | 
             
            Otherwise, close their account permanently.
         | 
| 82 82 |  | 
| 83 83 | 
             
            .. code-block:: ruby
         | 
| 84 84 |  | 
| 85 | 
            -
                @subaccount.update( | 
| 85 | 
            +
                @subaccount.update(status: 'closed')
         | 
| 86 86 |  | 
| 87 87 | 
             
            .. warning::
         | 
| 88 | 
            -
                This action can't be undone. | 
| 88 | 
            +
                This action can't be undone.
         | 
| 89 89 |  | 
    
        data/docs/usage/applications.rst
    CHANGED
    
    | @@ -45,7 +45,7 @@ You can filter applications by FriendlyName | |
| 45 45 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 46 46 |  | 
| 47 47 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 48 | 
            -
                @client.applications.list( | 
| 48 | 
            +
                @client.applications.list(friendly_name: 'FOO').each do |app|
         | 
| 49 49 | 
             
                    puts app.sid
         | 
| 50 50 | 
             
                end
         | 
| 51 51 |  | 
| @@ -66,8 +66,9 @@ accepts many other arguments for url configuration. | |
| 66 66 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 67 67 |  | 
| 68 68 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 69 | 
            -
                @application = @client.applications.create( | 
| 70 | 
            -
             | 
| 69 | 
            +
                @application = @client.applications.create(
         | 
| 70 | 
            +
                  friendly_name: "My New App"
         | 
| 71 | 
            +
                )
         | 
| 71 72 |  | 
| 72 73 | 
             
            Updating an Application
         | 
| 73 74 | 
             
            ------------------------
         | 
| @@ -86,8 +87,7 @@ Updating an Application | |
| 86 87 | 
             
                app_sid = 'AP123' # the app you'd like to update
         | 
| 87 88 |  | 
| 88 89 | 
             
                @application = @client.applications.get(app_sid)
         | 
| 89 | 
            -
                @application.update( | 
| 90 | 
            -
             | 
| 90 | 
            +
                @application.update(voice_url: url)
         | 
| 91 91 |  | 
| 92 92 | 
             
            Deleting an Application
         | 
| 93 93 | 
             
            -------------------------
         | 
    
        data/docs/usage/basics.rst
    CHANGED
    
    | @@ -70,7 +70,7 @@ The following will return page 3 with page size of 25. | |
| 70 70 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 71 71 |  | 
| 72 72 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 73 | 
            -
            	@calls = @client.calls.list(: | 
| 73 | 
            +
            	@calls = @client.calls.list(page: 3, page_size: 25)
         | 
| 74 74 |  | 
| 75 75 |  | 
| 76 76 | 
             
            Get an Individual Resource
         | 
    
        data/docs/usage/caller-ids.rst
    CHANGED
    
    | @@ -19,7 +19,9 @@ Validating a phone number is quick and easy. | |
| 19 19 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 20 20 |  | 
| 21 21 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 22 | 
            -
                @response = @client.outgoing_caller_ids.create( | 
| 22 | 
            +
                @response = @client.outgoing_caller_ids.create(
         | 
| 23 | 
            +
                    phone_number: "+44 9876543212"
         | 
| 24 | 
            +
                )
         | 
| 23 25 | 
             
                puts @response.validation_code
         | 
| 24 26 |  | 
| 25 27 | 
             
            Twilio will call the provided number and wait for the validation code to be
         | 
| @@ -40,6 +42,6 @@ Deleting a phone number is quick and easy. | |
| 40 42 |  | 
| 41 43 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 42 44 |  | 
| 43 | 
            -
                @response = @client.outgoing_caller_ids.list(: | 
| 45 | 
            +
                @response = @client.outgoing_caller_ids.list(phone_number: "+15555555555")
         | 
| 44 46 | 
             
                @callerid = response[0]
         | 
| 45 47 | 
             
                @callerid.delete()
         | 
    
        data/docs/usage/conferences.rst
    CHANGED
    
    | @@ -43,7 +43,7 @@ will return a list of all in-progress conferences and print their friendly name. | |
| 43 43 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 44 44 |  | 
| 45 45 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 46 | 
            -
                @conferences = @client.conferences.list( | 
| 46 | 
            +
                @conferences = @client.conferences.list(status: "in-progress")
         | 
| 47 47 |  | 
| 48 48 | 
             
                @conference.each do |conference|
         | 
| 49 49 | 
             
                    puts conference.friendly_name
         | 
    
        data/docs/usage/errors.rst
    CHANGED
    
    | @@ -20,9 +20,9 @@ handled appropriately. | |
| 20 20 | 
             
                begin
         | 
| 21 21 | 
             
                    @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 22 22 | 
             
                    client.messages.create({
         | 
| 23 | 
            -
                        : | 
| 24 | 
            -
                        : | 
| 25 | 
            -
                        : | 
| 23 | 
            +
                        from: '+1234567890',
         | 
| 24 | 
            +
                        to: '+1234567890',
         | 
| 25 | 
            +
                        body: 'Hello world'
         | 
| 26 26 | 
             
                    })
         | 
| 27 27 | 
             
                rescue Twilio::REST::RequestError => e
         | 
| 28 28 | 
             
                    puts e.message
         | 
    
        data/docs/usage/messages.rst
    CHANGED
    
    | @@ -24,9 +24,11 @@ Send a text message in only a few lines of code. | |
| 24 24 |  | 
| 25 25 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 26 26 |  | 
| 27 | 
            -
                @message = @client.messages.create( | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 27 | 
            +
                @message = @client.messages.create(
         | 
| 28 | 
            +
                  to: "+13216851234",
         | 
| 29 | 
            +
                  from: "+15555555555",
         | 
| 30 | 
            +
                  body: "Hello!"
         | 
| 31 | 
            +
                )
         | 
| 30 32 |  | 
| 31 33 | 
             
            If you want to send a message from a `short code
         | 
| 32 34 | 
             
            <http://www.twilio.com/api/sms/short-codes>`_ on Twilio, just set :attr:`from`
         | 
| @@ -48,24 +50,27 @@ To send a picture, set :attr:`media_url` to the url of the picture you wish to s | |
| 48 50 |  | 
| 49 51 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 50 52 |  | 
| 51 | 
            -
                @message = @client.messages.create( | 
| 52 | 
            -
             | 
| 53 | 
            -
             | 
| 54 | 
            -
             | 
| 53 | 
            +
                @message = @client.messages.create(
         | 
| 54 | 
            +
                  to: "+15558676309",
         | 
| 55 | 
            +
                  from: "+15555555555",
         | 
| 56 | 
            +
                  body: "Jenny I need you!",
         | 
| 57 | 
            +
                  media_url: "http://twilio.com/heart.jpg"
         | 
| 58 | 
            +
                )
         | 
| 55 59 |  | 
| 56 60 | 
             
            You can send multiple pictures in the same message by setting :attr:`media_url` to
         | 
| 57 61 | 
             
            an array of urls.
         | 
| 58 62 |  | 
| 59 63 | 
             
            .. code-block:: ruby
         | 
| 60 64 |  | 
| 61 | 
            -
                @message = @client.messages.create( | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 64 | 
            -
             | 
| 65 | 
            -
             | 
| 66 | 
            -
             | 
| 67 | 
            -
             | 
| 68 | 
            -
             | 
| 65 | 
            +
                @message = @client.messages.create(
         | 
| 66 | 
            +
                  to: "+15558676309",
         | 
| 67 | 
            +
                  from: "+15555555555",
         | 
| 68 | 
            +
                  body: "Jenny I need you!",
         | 
| 69 | 
            +
                  media_url: [
         | 
| 70 | 
            +
                    "http://twilio.com/heart.jpg",
         | 
| 71 | 
            +
                    "http://twilio.com/rose.jpg"
         | 
| 72 | 
            +
                  ]
         | 
| 73 | 
            +
                )
         | 
| 69 74 |  | 
| 70 75 | 
             
            Retrieving Sent Messages
         | 
| 71 76 | 
             
            -------------------------
         | 
| @@ -101,7 +106,10 @@ The following will only show messages to "+5466758723" on January 1st, 2011. | |
| 101 106 |  | 
| 102 107 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 103 108 |  | 
| 104 | 
            -
                @messages = @client.messages.list( | 
| 109 | 
            +
                @messages = @client.messages.list(
         | 
| 110 | 
            +
                  to: "+5466758723",
         | 
| 111 | 
            +
                  date_sent: "2011-01-01"
         | 
| 112 | 
            +
                )
         | 
| 105 113 |  | 
| 106 114 | 
             
                @messages.each do |message|
         | 
| 107 115 | 
             
                    puts message.body
         | 
    
        data/docs/usage/phone-calls.rst
    CHANGED
    
    | @@ -25,9 +25,11 @@ outputs valid `TwiML <http://www.twilio.com/docs/api/twiml/>`_. | |
| 25 25 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 26 26 |  | 
| 27 27 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 28 | 
            -
                @call = @client.calls.create( | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 28 | 
            +
                @call = @client.calls.create(
         | 
| 29 | 
            +
                  to: "9991231234",
         | 
| 30 | 
            +
                  from: "9991231234",
         | 
| 31 | 
            +
                  url: "http://foo.com/call.xml"
         | 
| 32 | 
            +
                )
         | 
| 31 33 | 
             
                puts @call.length
         | 
| 32 34 | 
             
                puts @call.sid
         | 
| 33 35 |  | 
| @@ -89,9 +91,9 @@ However, what if you only have a `CallSid`, and not the actual | |
| 89 91 |  | 
| 90 92 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 91 93 | 
             
                sid = "CA24234"
         | 
| 92 | 
            -
                puts @client.notifications.list( | 
| 93 | 
            -
                puts @client.recordings.list( | 
| 94 | 
            -
                puts @client.transcriptions.list( | 
| 94 | 
            +
                puts @client.notifications.list(call: sid)
         | 
| 95 | 
            +
                puts @client.recordings.list(call: sid)
         | 
| 96 | 
            +
                puts @client.transcriptions.list(call: sid)
         | 
| 95 97 |  | 
| 96 98 |  | 
| 97 99 | 
             
            Modifying Live Calls
         | 
| @@ -109,7 +111,7 @@ redirect them as necessary | |
| 109 111 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 110 112 |  | 
| 111 113 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 112 | 
            -
                @calls = @client.calls.list( | 
| 114 | 
            +
                @calls = @client.calls.list(status: "in-progress")
         | 
| 113 115 |  | 
| 114 116 | 
             
                @calls.each do |call|
         | 
| 115 117 | 
             
                    call.redirect_to("http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient")
         | 
| @@ -127,7 +129,7 @@ Ending all live calls is also possible | |
| 127 129 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 128 130 |  | 
| 129 131 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 130 | 
            -
                @calls = @client.calls.list( | 
| 132 | 
            +
                @calls = @client.calls.list(status: "in-progress")
         | 
| 131 133 |  | 
| 132 134 | 
             
                @calls.each do |call|
         | 
| 133 135 | 
             
                    call.hangup()
         | 
| @@ -27,7 +27,7 @@ Once we find one, we'll purchase it for our account. | |
| 27 27 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 28 28 |  | 
| 29 29 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 30 | 
            -
                numbers = @client.available_phone_numbers.list(: | 
| 30 | 
            +
                numbers = @client.available_phone_numbers.list(area_code: "530")
         | 
| 31 31 |  | 
| 32 32 | 
             
                if numbers:
         | 
| 33 33 | 
             
                    numbers[0].purchase()
         | 
| @@ -67,13 +67,13 @@ The following example will find any phone number with "FOO" in it. | |
| 67 67 |  | 
| 68 68 | 
             
            .. code-block:: ruby
         | 
| 69 69 |  | 
| 70 | 
            -
            	numbers = @client.available_phone_numbers.list(: | 
| 70 | 
            +
            	numbers = @client.available_phone_numbers.list(contains: "FOO")
         | 
| 71 71 |  | 
| 72 72 | 
             
            You can use the ''*'' wildcard to match any character. The following example finds any phone number that matches the pattern ''D*D''.
         | 
| 73 73 |  | 
| 74 74 | 
             
            .. code-block:: ruby
         | 
| 75 75 |  | 
| 76 | 
            -
            	numbers = @client.available_phone_numbers.list(: | 
| 76 | 
            +
            	numbers = @client.available_phone_numbers.list(contains: "D*D")
         | 
| 77 77 |  | 
| 78 78 |  | 
| 79 79 | 
             
            International Numbers
         | 
| @@ -85,7 +85,7 @@ international numbers. | |
| 85 85 |  | 
| 86 86 | 
             
            .. code-block:: ruby
         | 
| 87 87 |  | 
| 88 | 
            -
            	numbers = @client.available_phone_numbers.list(: | 
| 88 | 
            +
            	numbers = @client.available_phone_numbers.list(country: "FR")
         | 
| 89 89 |  | 
| 90 90 |  | 
| 91 91 | 
             
            :meth:`PhoneNumbers.search` method has plenty of other options to augment your search :
         | 
| @@ -115,7 +115,9 @@ If you've found a phone number you want, you can purchase the number. | |
| 115 115 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 116 116 |  | 
| 117 117 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 118 | 
            -
                @number = @client.available_phone_numbers.purchase( | 
| 118 | 
            +
                @number = @client.available_phone_numbers.purchase(
         | 
| 119 | 
            +
                  phone_number: "+15305431234"
         | 
| 120 | 
            +
                )
         | 
| 119 121 |  | 
| 120 122 | 
             
            However, it's easier to purchase numbers after finding them using search (as
         | 
| 121 123 | 
             
            shown in the first example).
         | 
| @@ -138,11 +140,13 @@ listed in the `IncomingPhoneNumbers Resource documentation | |
| 138 140 | 
             
                auth_token = "YYYYYYYYYYYYYYYYYY"
         | 
| 139 141 |  | 
| 140 142 | 
             
                @client = Twilio::REST::Client.new account_sid, auth_token
         | 
| 141 | 
            -
                @client.available_phone_numbers.list | 
| 142 | 
            -
             | 
| 143 | 
            -
             | 
| 144 | 
            -
             | 
| 145 | 
            -
             | 
| 143 | 
            +
                @client.available_phone_numbers.list.each do |number|
         | 
| 144 | 
            +
                  number.update(
         | 
| 145 | 
            +
                    voice_url: "http://twimlets.com/holdmusic?" \
         | 
| 146 | 
            +
                               "Bucket=com.twilio.music.ambient",
         | 
| 147 | 
            +
                    status_callback: "http://example.com/callback"
         | 
| 148 | 
            +
                  )
         | 
| 149 | 
            +
                end
         | 
| 146 150 |  | 
| 147 151 | 
             
            Changing Applications
         | 
| 148 152 | 
             
            ----------------------
         | 
| @@ -162,7 +166,7 @@ An :class:`Application` encapsulates all necessary URLs for use with phone numbe | |
| 162 166 | 
             
                phone_sid = "PNXXXXXXXXXXXXXXXXX"
         | 
| 163 167 |  | 
| 164 168 | 
             
                @number = @client.available_phone_numbers.get(phone_sid)
         | 
| 165 | 
            -
                @number.update(: | 
| 169 | 
            +
                @number.update(sms_application_sid: "APXXXXXXXXXXXXXXXXXX")
         | 
| 166 170 |  | 
| 167 171 | 
             
            See :doc:`/usage/applications` for instructions on updating and maintaining Applications.
         | 
| 168 172 |  |