plivo 0.3.19 → 4.0.0.beta.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +14 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +10 -0
  5. data/AUTHORS.md +4 -0
  6. data/CHANGELOG.md +19 -0
  7. data/Gemfile +3 -0
  8. data/LICENSE.txt +19 -0
  9. data/README.md +105 -24
  10. data/Rakefile +7 -0
  11. data/lib/plivo.rb +9 -815
  12. data/lib/plivo/base.rb +9 -0
  13. data/lib/plivo/base/resource.rb +85 -0
  14. data/lib/plivo/base/resource_interface.rb +93 -0
  15. data/lib/plivo/base/response.rb +29 -0
  16. data/lib/plivo/exceptions.rb +50 -0
  17. data/lib/plivo/resources.rb +14 -0
  18. data/lib/plivo/resources/accounts.rb +174 -0
  19. data/lib/plivo/resources/applications.rb +233 -0
  20. data/lib/plivo/resources/calls.rb +492 -0
  21. data/lib/plivo/resources/conferences.rb +371 -0
  22. data/lib/plivo/resources/endpoints.rb +130 -0
  23. data/lib/plivo/resources/messages.rb +178 -0
  24. data/lib/plivo/resources/numbers.rb +302 -0
  25. data/lib/plivo/resources/pricings.rb +43 -0
  26. data/lib/plivo/resources/recordings.rb +114 -0
  27. data/lib/plivo/rest_client.rb +199 -0
  28. data/lib/plivo/utils.rb +107 -0
  29. data/lib/plivo/version.rb +3 -0
  30. data/lib/plivo/xml.rb +27 -0
  31. data/lib/plivo/xml/conference.rb +20 -0
  32. data/lib/plivo/xml/dial.rb +16 -0
  33. data/lib/plivo/xml/dtmf.rb +13 -0
  34. data/lib/plivo/xml/element.rb +83 -0
  35. data/lib/plivo/xml/get_digits.rb +15 -0
  36. data/lib/plivo/xml/hangup.rb +12 -0
  37. data/lib/plivo/xml/message.rb +13 -0
  38. data/lib/plivo/xml/number.rb +13 -0
  39. data/lib/plivo/xml/play.rb +13 -0
  40. data/lib/plivo/xml/plivo_xml.rb +19 -0
  41. data/lib/plivo/xml/pre_answer.rb +12 -0
  42. data/lib/plivo/xml/record.rb +17 -0
  43. data/lib/plivo/xml/redirect.rb +13 -0
  44. data/lib/plivo/xml/response.rb +21 -0
  45. data/lib/plivo/xml/speak.rb +17 -0
  46. data/lib/plivo/xml/user.rb +13 -0
  47. data/lib/plivo/xml/wait.rb +12 -0
  48. data/plivo.gemspec +44 -0
  49. metadata +134 -45
  50. data/ext/mkrf_conf.rb +0 -9
@@ -0,0 +1,3 @@
1
+ module Plivo
2
+ VERSION = '4.0.0.beta.2'.freeze
3
+ end
data/lib/plivo/xml.rb ADDED
@@ -0,0 +1,27 @@
1
+ require 'rexml/document'
2
+ require 'htmlentities'
3
+
4
+ require_relative 'xml/element'
5
+ require_relative 'xml/response'
6
+ require_relative 'xml/conference'
7
+ require_relative 'xml/dial'
8
+ require_relative 'xml/dtmf'
9
+ require_relative 'xml/get_digits'
10
+ require_relative 'xml/hangup'
11
+ require_relative 'xml/message'
12
+ require_relative 'xml/number'
13
+ require_relative 'xml/play'
14
+ require_relative 'xml/pre_answer'
15
+ require_relative 'xml/record'
16
+ require_relative 'xml/redirect'
17
+ require_relative 'xml/speak'
18
+ require_relative 'xml/user'
19
+ require_relative 'xml/wait'
20
+ require_relative 'xml/plivo_xml'
21
+
22
+ include Plivo::Exceptions
23
+
24
+ module Plivo
25
+ module XML
26
+ end
27
+ end
@@ -0,0 +1,20 @@
1
+ module Plivo
2
+ module XML
3
+ class Conference < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[muted beep startConferenceOnEnter
6
+ endConferenceOnExit waitSound enterSound exitSound
7
+ timeLimit hangupOnStar maxMembers
8
+ record recordFileFormat action method redirect
9
+ digitsMatch callbackUrl callbackMethod
10
+ stayAlone floorEvent
11
+ transcriptionType transcriptionUrl
12
+ transcriptionMethod recordWhenAlone relayDTMF]
13
+
14
+ def initialize(body, attributes = {})
15
+ raise PlivoXMLError, 'No conference name set for Conference' unless body
16
+ super(body, attributes)
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,16 @@
1
+ module Plivo
2
+ module XML
3
+ class Dial < Element
4
+ @nestables = %w[Number User]
5
+ @valid_attributes = %w[action method timeout hangupOnStar
6
+ timeLimit callerId callerName confirmSound
7
+ dialMusic confirmKey redirect
8
+ callbackUrl callbackMethod digitsMatch digitsMatchBLeg
9
+ sipHeaders]
10
+
11
+ def initialize(attributes = {}, &block)
12
+ super(nil, attributes, &block)
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,13 @@
1
+ module Plivo
2
+ module XML
3
+ class DTMF < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[async]
6
+
7
+ def initialize(body, attributes = {})
8
+ raise PlivoXMLError, 'No digits set for DTMF' unless body
9
+ super(body, attributes)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,83 @@
1
+ module Plivo
2
+ module XML
3
+ class Element
4
+ class << self
5
+ attr_accessor :valid_attributes, :nestables
6
+ end
7
+ @nestables = []
8
+ @valid_attributes = []
9
+
10
+ attr_accessor :node, :name
11
+
12
+ def initialize(body = nil, attributes = {})
13
+ @name = self.class.name.split('::')[2]
14
+ @body = body
15
+ @node = REXML::Element.new @name
16
+ attributes.each do |k, v|
17
+ if self.class.valid_attributes.include?(k.to_s)
18
+ @node.attributes[k.to_s] = convert_value(v)
19
+ else
20
+ raise PlivoXMLError, "invalid attribute #{k} for #{@name}"
21
+ end
22
+ end
23
+
24
+ @node.text = @body if @body
25
+
26
+ # Allow for nested "nestable" elements using a code block
27
+ # ie
28
+ # Plivo::XML::Response.new do |r|
29
+ # r.Dial do |n|
30
+ # n.Number '+15557779999'
31
+ # end
32
+ # end
33
+ yield(self) if block_given?
34
+ end
35
+
36
+ def method_missing(method, *args, &block)
37
+ # Handle the addElement methods
38
+ method = Regexp.last_match(1).to_sym if method.to_s =~ /^add(.*)/
39
+ # Add the element
40
+ begin
41
+ add(Plivo::XML.const_get(method).new(*args, &block))
42
+ rescue StandardError => e
43
+ raise PlivoXMLError, e.message
44
+ end
45
+ end
46
+
47
+ def convert_value(v)
48
+ case v
49
+ when true
50
+ 'true'
51
+ when false
52
+ 'false'
53
+ when nil
54
+ 'none'
55
+ when 'get'
56
+ 'GET'
57
+ when 'post'
58
+ 'POST'
59
+ else
60
+ v
61
+ end
62
+ end
63
+
64
+ def add(element)
65
+ raise PlivoXMLError, 'invalid element' unless element
66
+ if self.class.nestables.include?(element.name)
67
+ @node.elements << element.node
68
+ element
69
+ else
70
+ raise PlivoXMLError, "#{element.name} not nestable in #{@name}"
71
+ end
72
+ end
73
+
74
+ def to_xml
75
+ @node.to_s
76
+ end
77
+
78
+ def to_s
79
+ @node.to_s
80
+ end
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,15 @@
1
+ module Plivo
2
+ module XML
3
+ class GetDigits < Element
4
+ @nestables = %w[Speak Play Wait]
5
+ @valid_attributes = %w[action method timeout digitTimeout
6
+ numDigits retries invalidDigitsSound
7
+ validDigits playBeep redirect finishOnKey
8
+ digitTimeout log]
9
+
10
+ def initialize(attributes = {}, &block)
11
+ super(nil, attributes, &block)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,12 @@
1
+ module Plivo
2
+ module XML
3
+ class Hangup < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[schedule reason]
6
+
7
+ def initialize(attributes = {})
8
+ super(nil, attributes)
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ module Plivo
2
+ module XML
3
+ class Message < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[src dst type callbackUrl callbackMethod]
6
+
7
+ def initialize(body, attributes = {})
8
+ raise PlivoXMLError, 'No text set for Message' unless body
9
+ super(body, attributes)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ module Plivo
2
+ module XML
3
+ class Number < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[sendDigits sendOnPreanswer]
6
+
7
+ def initialize(body, attributes = {})
8
+ raise PlivoXMLError, 'No number set for Number' unless body
9
+ super(body, attributes)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ module Plivo
2
+ module XML
3
+ class Play < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[loop]
6
+
7
+ def initialize(body, attributes = {})
8
+ raise PlivoXMLError 'No url set for Play' unless body
9
+ super(body, attributes)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,19 @@
1
+ module Plivo
2
+ module XML
3
+ class PlivoXML
4
+ attr_accessor :response
5
+
6
+ def initialize(response = nil)
7
+ response.nil? ? @response = Plivo::XML::Response.new : @response = response
8
+ end
9
+
10
+ def to_xml
11
+ '<?xml version="1.0" encoding="utf-8" ?>' + @response.to_xml
12
+ end
13
+
14
+ def to_s
15
+ '<?xml version="1.0" encoding="utf-8" ?>' + @response.to_s
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,12 @@
1
+ module Plivo
2
+ module XML
3
+ class PreAnswer < Element
4
+ @nestables = %w[Play Speak GetDigits Wait Redirect Message DTMF]
5
+ @valid_attributes = []
6
+
7
+ def initialize(attributes = {}, &block)
8
+ super(nil, attributes, &block)
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,17 @@
1
+ module Plivo
2
+ module XML
3
+ class Record < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[action method timeout finishOnKey
6
+ maxLength playBeep recordSession
7
+ startOnDialAnswer redirect fileFormat
8
+ callbackUrl callbackMethod
9
+ transcriptionType transcriptionUrl
10
+ transcriptionMethod]
11
+
12
+ def initialize(attributes = {})
13
+ super(nil, attributes)
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,13 @@
1
+ module Plivo
2
+ module XML
3
+ class Redirect < Element
4
+ @nestables = []
5
+ @valid_attributes = ['method']
6
+
7
+ def initialize(body, attributes = {})
8
+ raise PlivoError 'No url set for Redirect' unless body
9
+ super(body, attributes)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,21 @@
1
+ module Plivo
2
+ module XML
3
+ class Response < Element
4
+ @nestables = %w[Speak Play GetDigits Record Dial Message
5
+ Redirect Wait Hangup PreAnswer Conference DTMF]
6
+ @valid_attributes = []
7
+
8
+ def initialize
9
+ super(nil, {})
10
+ end
11
+
12
+ def to_xml
13
+ super()
14
+ end
15
+
16
+ def to_s
17
+ super()
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,17 @@
1
+ module Plivo
2
+ module XML
3
+ class Speak < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[voice language loop]
6
+
7
+ def initialize(body, attributes = {})
8
+ if !body
9
+ raise PlivoXMLError, 'No text set for Speak'
10
+ else
11
+ body = HTMLEntities.new(:html4).encode(body, :decimal)
12
+ end
13
+ super(body, attributes)
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,13 @@
1
+ module Plivo
2
+ module XML
3
+ class User < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[sendDigits sendOnPreanswer sipHeaders]
6
+
7
+ def initialize(body, attributes = {})
8
+ raise PlivoXMLError, 'No user set for User' unless body
9
+ super(body, attributes)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ module Plivo
2
+ module XML
3
+ class Wait < Element
4
+ @nestables = []
5
+ @valid_attributes = %w[length silence minSilence beep]
6
+
7
+ def initialize(attributes = {})
8
+ super(nil, attributes)
9
+ end
10
+ end
11
+ end
12
+ end
data/plivo.gemspec ADDED
@@ -0,0 +1,44 @@
1
+ # coding: utf-8
2
+
3
+ lib = File.expand_path('../lib', __FILE__)
4
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
+ require 'plivo/version'
6
+
7
+ Gem::Specification.new do |spec|
8
+ spec.name = 'plivo'
9
+ spec.version = Plivo::VERSION
10
+ spec.authors = ['The Plivo SDKs Team']
11
+ spec.email = ['sdks@plivo.com']
12
+
13
+ spec.summary = 'A Ruby SDK to make voice calls & send SMS using Plivo '\
14
+ 'and to generate Plivo XML'
15
+ spec.description = 'The Plivo Ruby SDK makes it simpler to integrate '\
16
+ 'communications into your Ruby applications using the '\
17
+ 'Plivo REST API. Using the SDK, you will be able to '\
18
+ 'make voice calls, send SMS and generate Plivo XML to '\
19
+ 'control your call flows.'\
20
+ ''\
21
+ 'See https://github.com/plivo/plivo-ruby for more information.'
22
+ spec.homepage = 'https://github.com/plivo/plivo-ruby'
23
+ spec.license = 'MIT'
24
+
25
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
26
+ f.match(%r{^(test|spec|features)/})
27
+ end
28
+
29
+ spec.bindir = 'bin'
30
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
31
+ spec.require_paths = ['lib']
32
+
33
+ spec.required_ruby_version = '>= 2.0.0'
34
+
35
+ spec.add_dependency 'faraday', '~> 0.9'
36
+ spec.add_dependency 'faraday_middleware', '~> 0.11.0.1'
37
+ spec.add_dependency 'htmlentities'
38
+
39
+ spec.add_development_dependency 'bundler', '~> 1.14'
40
+ spec.add_development_dependency 'rake', '~> 10.0'
41
+ spec.add_development_dependency 'rspec', '~> 3.0'
42
+ spec.add_development_dependency 'json'
43
+ spec.add_development_dependency 'simplecov'
44
+ end
metadata CHANGED
@@ -1,101 +1,189 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: plivo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.19
4
+ version: 4.0.0.beta.2
5
5
  platform: ruby
6
6
  authors:
7
- - Plivo Inc
7
+ - The Plivo SDKs Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-25 00:00:00.000000000 Z
11
+ date: 2017-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: builder
14
+ name: faraday
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.1.2
19
+ version: '0.9'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 2.1.2
26
+ version: '0.9'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rest-client
28
+ name: faraday_middleware
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.6'
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: 1.6.7
33
+ version: 0.11.0.1
37
34
  type: :runtime
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
38
  - - "~>"
42
39
  - !ruby/object:Gem::Version
43
- version: '1.6'
40
+ version: 0.11.0.1
41
+ - !ruby/object:Gem::Dependency
42
+ name: htmlentities
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
44
45
  - - ">="
45
46
  - !ruby/object:Gem::Version
46
- version: 1.6.7
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
47
55
  - !ruby/object:Gem::Dependency
48
- name: json
56
+ name: bundler
49
57
  requirement: !ruby/object:Gem::Requirement
50
58
  requirements:
51
59
  - - "~>"
52
60
  - !ruby/object:Gem::Version
53
- version: '1.6'
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: 1.6.6
57
- type: :runtime
61
+ version: '1.14'
62
+ type: :development
58
63
  prerelease: false
59
64
  version_requirements: !ruby/object:Gem::Requirement
60
65
  requirements:
61
66
  - - "~>"
62
67
  - !ruby/object:Gem::Version
63
- version: '1.6'
64
- - - ">="
68
+ version: '1.14'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
65
74
  - !ruby/object:Gem::Version
66
- version: 1.6.6
75
+ version: '10.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '10.0'
67
83
  - !ruby/object:Gem::Dependency
68
- name: htmlentities
84
+ name: rspec
69
85
  requirement: !ruby/object:Gem::Requirement
70
86
  requirements:
71
87
  - - "~>"
72
88
  - !ruby/object:Gem::Version
73
- version: '4.3'
89
+ version: '3.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '3.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: json
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
74
101
  - - ">="
75
102
  - !ruby/object:Gem::Version
76
- version: 4.3.1
77
- type: :runtime
103
+ version: '0'
104
+ type: :development
78
105
  prerelease: false
79
106
  version_requirements: !ruby/object:Gem::Requirement
80
107
  requirements:
81
- - - "~>"
108
+ - - ">="
82
109
  - !ruby/object:Gem::Version
83
- version: '4.3'
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: simplecov
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
84
115
  - - ">="
85
116
  - !ruby/object:Gem::Version
86
- version: 4.3.1
87
- description: A Ruby gem for interacting with the Plivo Cloud Platform
88
- email: support@plivo.com
89
- executables: []
90
- extensions:
91
- - ext/mkrf_conf.rb
92
- extra_rdoc_files:
93
- - README.md
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ description: The Plivo Ruby SDK makes it simpler to integrate communications into
126
+ your Ruby applications using the Plivo REST API. Using the SDK, you will be able
127
+ to make voice calls, send SMS and generate Plivo XML to control your call flows.See
128
+ https://github.com/plivo/plivo-ruby for more information.
129
+ email:
130
+ - sdks@plivo.com
131
+ executables:
132
+ - console
133
+ - setup
134
+ extensions: []
135
+ extra_rdoc_files: []
94
136
  files:
137
+ - ".gitignore"
138
+ - ".rspec"
139
+ - ".travis.yml"
140
+ - AUTHORS.md
141
+ - CHANGELOG.md
142
+ - Gemfile
143
+ - LICENSE.txt
95
144
  - README.md
96
- - ext/mkrf_conf.rb
145
+ - Rakefile
146
+ - bin/console
147
+ - bin/setup
97
148
  - lib/plivo.rb
98
- homepage: http://www.plivo.com
149
+ - lib/plivo/base.rb
150
+ - lib/plivo/base/resource.rb
151
+ - lib/plivo/base/resource_interface.rb
152
+ - lib/plivo/base/response.rb
153
+ - lib/plivo/exceptions.rb
154
+ - lib/plivo/resources.rb
155
+ - lib/plivo/resources/accounts.rb
156
+ - lib/plivo/resources/applications.rb
157
+ - lib/plivo/resources/calls.rb
158
+ - lib/plivo/resources/conferences.rb
159
+ - lib/plivo/resources/endpoints.rb
160
+ - lib/plivo/resources/messages.rb
161
+ - lib/plivo/resources/numbers.rb
162
+ - lib/plivo/resources/pricings.rb
163
+ - lib/plivo/resources/recordings.rb
164
+ - lib/plivo/rest_client.rb
165
+ - lib/plivo/utils.rb
166
+ - lib/plivo/version.rb
167
+ - lib/plivo/xml.rb
168
+ - lib/plivo/xml/conference.rb
169
+ - lib/plivo/xml/dial.rb
170
+ - lib/plivo/xml/dtmf.rb
171
+ - lib/plivo/xml/element.rb
172
+ - lib/plivo/xml/get_digits.rb
173
+ - lib/plivo/xml/hangup.rb
174
+ - lib/plivo/xml/message.rb
175
+ - lib/plivo/xml/number.rb
176
+ - lib/plivo/xml/play.rb
177
+ - lib/plivo/xml/plivo_xml.rb
178
+ - lib/plivo/xml/pre_answer.rb
179
+ - lib/plivo/xml/record.rb
180
+ - lib/plivo/xml/redirect.rb
181
+ - lib/plivo/xml/response.rb
182
+ - lib/plivo/xml/speak.rb
183
+ - lib/plivo/xml/user.rb
184
+ - lib/plivo/xml/wait.rb
185
+ - plivo.gemspec
186
+ homepage: https://github.com/plivo/plivo-ruby
99
187
  licenses:
100
188
  - MIT
101
189
  metadata: {}
@@ -107,16 +195,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
107
195
  requirements:
108
196
  - - ">="
109
197
  - !ruby/object:Gem::Version
110
- version: '0'
198
+ version: 2.0.0
111
199
  required_rubygems_version: !ruby/object:Gem::Requirement
112
200
  requirements:
113
- - - ">="
201
+ - - ">"
114
202
  - !ruby/object:Gem::Version
115
- version: '0'
203
+ version: 1.3.1
116
204
  requirements: []
117
205
  rubyforge_project:
118
- rubygems_version: 2.2.2
206
+ rubygems_version: 2.6.11
119
207
  signing_key:
120
208
  specification_version: 4
121
- summary: A Ruby gem for communicating with the Plivo Cloud Platform
209
+ summary: A Ruby SDK to make voice calls & send SMS using Plivo and to generate Plivo
210
+ XML
122
211
  test_files: []