twilio-ruby 3.12.3 → 3.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +8 -8
  2. data/CHANGES.md +12 -0
  3. data/README.md +14 -14
  4. data/Rakefile +2 -2
  5. data/docs/faq.rst +3 -3
  6. data/docs/getting-started.rst +17 -12
  7. data/docs/usage/accounts.rst +6 -6
  8. data/docs/usage/applications.rst +5 -5
  9. data/docs/usage/basics.rst +1 -1
  10. data/docs/usage/caller-ids.rst +4 -2
  11. data/docs/usage/conferences.rst +1 -1
  12. data/docs/usage/errors.rst +3 -3
  13. data/docs/usage/messages.rst +24 -16
  14. data/docs/usage/phone-calls.rst +10 -8
  15. data/docs/usage/phone-numbers.rst +15 -11
  16. data/docs/usage/sip.rst +9 -8
  17. data/docs/usage/twiml.rst +2 -2
  18. data/examples/examples.rb +44 -20
  19. data/lib/rack/twilio_webhook_authentication.rb +5 -1
  20. data/lib/twilio-ruby/rest/calls.rb +4 -4
  21. data/lib/twilio-ruby/rest/client.rb +25 -23
  22. data/lib/twilio-ruby/rest/conferences/participants.rb +2 -2
  23. data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +1 -1
  24. data/lib/twilio-ruby/rest/instance_resource.rb +9 -5
  25. data/lib/twilio-ruby/rest/list_resource.rb +18 -10
  26. data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +1 -1
  27. data/lib/twilio-ruby/rest/queues/members.rb +1 -1
  28. data/lib/twilio-ruby/rest/sip.rb +1 -3
  29. data/lib/twilio-ruby/rest/utils.rb +11 -3
  30. data/lib/twilio-ruby/util/capability.rb +4 -4
  31. data/lib/twilio-ruby/version.rb +1 -1
  32. data/spec/rack/twilio_webhook_authentication_spec.rb +18 -6
  33. data/spec/rest/account_spec.rb +24 -8
  34. data/spec/rest/call_spec.rb +6 -2
  35. data/spec/rest/client_spec.rb +37 -14
  36. data/spec/rest/conference_spec.rb +3 -1
  37. data/spec/rest/instance_resource_spec.rb +1 -1
  38. data/spec/rest/numbers_spec.rb +18 -6
  39. data/spec/rest/queue_spec.rb +3 -1
  40. data/spec/rest/recording_spec.rb +3 -1
  41. data/spec/util/url_encode_spec.rb +1 -1
  42. metadata +1 -1
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YTAxY2JmOWY5NjY3MTMyNTA1ZTVhMWE1NmMyZmIxYzI3NjNhYWVlYw==
4
+ ZDRmNTExMjMzZmVlZGE4ODU1OTAyMjM4YzU2ZjViYjY0ZjA5ODBiMg==
5
5
  data.tar.gz: !binary |-
6
- NTQwYTVkMDFhMGUzNzAyMzE0NGQyN2U2YmJiMWQ5ZmE2NzZkZjVmNg==
6
+ NjhkMTg4ODMyNzU4ZjJlODU3YmZjZDJhNDkyZjI1MWMwOTlkMmNhNA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ZjY4MTY2ZmRlY2M0YzJhMzA3OTMxMTBlZmEwZjlkNzgxNWJmMTRiODQ4NDRh
10
- OWUxYjEwOWQ5MDczNGI3MTEwZGM3ZmZkNWM5YzU1ZjNiY2NjZGI0ZTIwZTBl
11
- N2JiOGQ1YTE5YTE0MDNkYWVjMjI3ZDRhMmQ3YzJhMmFiZGZlZDg=
9
+ NzMxNzNmNWViMDI5M2E3Yjk4MGUwMzRlZjhkZjY0YzQ5NGE2ODA4OTZkYjU4
10
+ MTA5MzdjNTk2YWU5NzgzMzYxZjZmNTZiY2Y3MmI3ZWJjNDQyYjc0MDdlMzQw
11
+ ODE0N2RkZTA1NzM1ZGNmYzYyMDQyMWQ2MzkzNGM0Y2Y4NDY0NzU=
12
12
  data.tar.gz: !binary |-
13
- YTA2ZWZhZDdiZDRiOWYwY2MxOThjM2RlNDkyMzZjOWUyNWI0ZjI5ZTQ3Mjc3
14
- NjAxOWNjMjFlNmVhMWE3OGM5YzExNTJjNWNmNGUzMDFlMGZlYTRjMTk3MGZk
15
- MDNlYTUxYzkwNDRiMWVjNDY1YjY3OGVlZjU5NDAwMWMxN2YwNTU=
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
- :from => '+14159341234',
61
- :to => '+16105557069',
62
- :body => 'Hey there!'
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
- :from => '+14159341234',
71
- :to => '+16105557069',
72
- :body => 'Hey there!',
73
- :media_url => 'http://example.com/smileyface.jpg',
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
- :from => '+14159341234',
83
- :to => '+18004567890',
84
- :url => 'http://example.com/call-handler',
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
- :contains => 'AWESOME'
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(:phone_number => @number)
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', :voice => 'alice'
162
- r.Dial :callerId => '+14159992222' do |d|
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
@@ -6,5 +6,5 @@ require 'rspec/core/rake_task'
6
6
  desc 'Run all specs'
7
7
  RSpec::Core::RakeTask.new(:spec)
8
8
 
9
- task :default => :spec
10
- task :test => :spec
9
+ task default: :spec
10
+ task test: :spec
@@ -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
- :format => :international,
38
- :spaces => ''
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
@@ -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({:to => "9991231234", :from => "9991231234",
23
- :url => "http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient"})
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({:to => "+12316851234",
42
- :from => "+15555555555",
43
- :body => "Hello there!"})
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({:to => "+15558676309",
60
- :from => "+15555555555",
61
- :body => "Jenny I need you!",
62
- :media_url => "http://twilio.com/heart.jpg"})
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", :loop => 5
80
+ r.Play "https://api.twilio.com/cowbell.mp3", loop: 5
76
81
  end.text
77
82
 
78
83
  .. code-block:: xml
@@ -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({:friendly_name => "My Awesome Account"})
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({:name => "My Awesome SubAccount"})
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({:status => 'suspended'}
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({:status => 'active'}
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({:status => 'closed'}
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
 
@@ -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({:friendly_name => 'FOO'})}.each do |app|
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({:friendly_name => "My New App"})
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({:voice_url => url})
90
-
90
+ @application.update(voice_url: url)
91
91
 
92
92
  Deleting an Application
93
93
  -------------------------
@@ -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(:page=>3, :page_size=>25)
73
+ @calls = @client.calls.list(page: 3, page_size: 25)
74
74
 
75
75
 
76
76
  Get an Individual Resource
@@ -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(:phone_number => "+44 9876543212")
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(:phone_number => "+15555555555")
45
+ @response = @client.outgoing_caller_ids.list(phone_number: "+15555555555")
44
46
  @callerid = response[0]
45
47
  @callerid.delete()
@@ -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({:status => "in-progress"})
46
+ @conferences = @client.conferences.list(status: "in-progress")
47
47
 
48
48
  @conference.each do |conference|
49
49
  puts conference.friendly_name
@@ -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
- :from => '+1234567890',
24
- :to => '+1234567890',
25
- :body => 'Hello world'
23
+ from: '+1234567890',
24
+ to: '+1234567890',
25
+ body: 'Hello world'
26
26
  })
27
27
  rescue Twilio::REST::RequestError => e
28
28
  puts e.message
@@ -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({:to => "+13216851234",
28
- :from => "+15555555555",
29
- :body => "Hello!"})
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({:to => "+15558676309",
52
- :from => "+15555555555",
53
- :body => "Jenny I need you!",
54
- :media_url => "http://twilio.com/heart.jpg"})
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({:to => "+15558676309",
62
- :from => "+15555555555",
63
- :body => "Jenny I need you!",
64
- :media_url => [
65
- "http://twilio.com/heart.jpg",
66
- "http://twilio.com/rose.jpg"
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({:to => "+5466758723", :date_sent => "2011-01-01"})
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
@@ -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({:to => "9991231234",
29
- :from => "9991231234",
30
- :url => "http://foo.com/call.xml"})
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({:call => sid})
93
- puts @client.recordings.list({:call => sid})
94
- puts @client.transcriptions.list({:call => sid})
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({:status => "in-progress"})
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({:status => "in-progress"})
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(:area_code=>"530")
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(:contains=>"FOO")
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(:contains=>"D*D")
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(:country=>"FR")
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({:phone_number => "+15305431234"})
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(api_version="2010-04-01").each do |number|
142
- number.update({:voice_url => "http://twimlets.com/holdmusic?" +
143
- "Bucket=com.twilio.music.ambient",
144
- :status_callback => "http://example.com/callback"})
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(:sms_application_sid => "APXXXXXXXXXXXXXXXXXX")
169
+ @number.update(sms_application_sid: "APXXXXXXXXXXXXXXXXXX")
166
170
 
167
171
  See :doc:`/usage/applications` for instructions on updating and maintaining Applications.
168
172