telapi 1.1.0 → 1.2.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.
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YzI4YWUyMzAzNDM1MWZmYjQ0NGVjZGI1M2RjMGRmZGQxNWJlZGNhYg==
5
+ data.tar.gz: !binary |-
6
+ MDQ5MGRhZGI0Nzc3ODg0ZWQwNTNhYzc5NGI0NjE1M2RjMGRiNGQxMg==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ M2VlNGVmYzRlODBmOWMyYTI3ODQxMzg3ZDg0NjQ2NmMwODExYjc4MGU4M2Fm
10
+ YWQ4MDE4NmRmZTlmOGIzYzU0NTI0MmRhM2Y5YWI0MTQyMDU0NGQ3MmU0ZjBk
11
+ Y2I4YmI1YWQ5YTc3MjY2ODRjNDQxMGMwMWMxMjczNjMyNWIwOGM=
12
+ data.tar.gz: !binary |-
13
+ OWU0MDIyODk3NWIzZmY0YmEyYjEwMmMzMTVjZDBiOWVmM2I2YmU3YjYxNzQ4
14
+ Y2NlOTYyZWU4ZWM2N2QzMzM5NzFlOTY1N2FkZDI3Y2I0MmY1NzM0NjZiOTI2
15
+ YWViYzQxMmE5ZWZkZjQzZjVmNjM1YjZkYjAxNzE4Zjg0NDk2MmI=
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012 Phil Misiowiec
1
+ Copyright (c) 2013 TelAPI
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -58,7 +58,7 @@ Methods that return collections wrap Resource objects in a Resource Collection i
58
58
 
59
59
  ## Documentation
60
60
 
61
- Detailed documentation can be found at [RubyDoc](http://rubydoc.info/gems/telapi/) and [the official TelAPI documentation site](http://www.telapi.com/docs/).
61
+ Detailed documentation for this libray can be found at [TelAPI-Ruby Reference](http://telapi.github.com/telapi-ruby/) or [RubyDoc](http://rubydoc.info/gems/telapi/).
62
62
 
63
63
  ## Usage Examples - REST API
64
64
 
@@ -10,6 +10,7 @@ require 'telapi/resource_collection'
10
10
  require 'telapi/account'
11
11
  require 'telapi/application'
12
12
  require 'telapi/available_phone_number'
13
+ require 'telapi/bna'
13
14
  require 'telapi/call'
14
15
  require 'telapi/caller_id'
15
16
  require 'telapi/carrier'
@@ -21,5 +22,7 @@ require 'telapi/notification'
21
22
  require 'telapi/participant'
22
23
  require 'telapi/recording'
23
24
  require 'telapi/transcription'
25
+ require 'telapi/usage'
26
+ require 'telapi/fax'
24
27
 
25
28
  require 'telapi/inbound_xml'
@@ -25,10 +25,8 @@ module Telapi
25
25
  # Creates an application, returning a Telapi::Application object
26
26
  # See http://www.telapi.com/docs/api/rest/applications/create/
27
27
  #
28
- # Required params:
29
- # +name+:: string
30
- #
31
28
  # Optional params is a hash containing:
29
+ # +FriendlyName+:: string
32
30
  # +VoiceUrl+:: valid URL
33
31
  # +VoiceMethod+:: (POST) or GET
34
32
  # +VoiceFallbackUrl+:: valid URL
@@ -40,11 +38,10 @@ module Telapi
40
38
  # +SmsFallbackMethod+:: (POST) or GET
41
39
  # +HeartbeatUrl+:: valid URL
42
40
  # +HeartbeatMethod+:: (POST) or GET
43
- # +StatusCallback+:: valid URL
44
- # +StatusCallbackMethod+:: (POST) or GET
45
- def create(name, optional_params = {})
46
- opts = { :FriendlyName => name }.merge(optional_params)
47
- response = Network.post(['Applications'], opts)
41
+ # +HangupCallback+:: valid URL
42
+ # +HangupCallbackMethod+:: (POST) or GET
43
+ def create(optional_params = {})
44
+ response = Network.post(['Applications'], optional_params)
48
45
  Application.new(response)
49
46
  end
50
47
 
@@ -55,8 +52,6 @@ module Telapi
55
52
  # +id+:: application id
56
53
  #
57
54
  # Optional params is a hash supporting same options under ::create
58
- # in addition to:
59
- # +FriendlyName+:: string
60
55
  def update(id, optional_params = {})
61
56
  response = Network.post(['Applications', id], optional_params)
62
57
  Application.new(response)
@@ -72,6 +67,16 @@ module Telapi
72
67
  Application.new(response)
73
68
  end
74
69
 
70
+ # Generates TelAPI JavaScript SDK credentials
71
+ # See http://www.telapi.com/docs/sdks/javascript/
72
+ #
73
+ # Required params:
74
+ # +id+:: application id
75
+ def generate_token(id, optional_params = {})
76
+ response = Network.post(['Applications', id, 'GenerateToken'], optional_params)
77
+ Application.new(response)
78
+ end
79
+
75
80
  end
76
81
 
77
82
  # See ::update
@@ -7,15 +7,16 @@ module Telapi
7
7
  # See http://www.telapi.com/docs/api/rest/available-phone-numbers/list/
8
8
  #
9
9
  # Required params:
10
- # +country_code_iso+:: country code (ISO), see http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
10
+ # +country_code+:: country code (ISO), see http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
11
+ # +num_type+:: Local or TollFree
11
12
  #
12
13
  # Optional params is a hash containing:
13
14
  # +AreaCode+:: valid area code, e.g. 415
14
15
  # +Contains+:: 0-9, lower and upper case letters of the alphabet (Aa-Zz), or *
15
16
  # +InRegion+:: valid region (state or province) abbreviation
16
17
  # +InPostalCode+:: valid postal code
17
- def list(country_code_iso, optional_params = {})
18
- response = Network.get(['AvailablePhoneNumbers', country_code_iso, 'Local'], optional_params)
18
+ def list(country_code, num_type, optional_params = {})
19
+ response = Network.get(['AvailablePhoneNumbers', country_code, num_type], optional_params)
19
20
  ResourceCollection.new(response, 'available_phone_numbers', self)
20
21
  end
21
22
 
@@ -0,0 +1,16 @@
1
+ module Telapi
2
+ # Wraps TelAPI BNA lookup functionality
3
+ class Bna < Resource
4
+ class << self
5
+
6
+ # Returns a Telapi::Bna object given a phone number
7
+ # See http://www.telapi.com/docs/api/rest/carrier-services/bna-lookup/
8
+ def lookup(phone_number)
9
+ opts = { :PhoneNumber => phone_number }
10
+ response = Network.get(['BNA'], opts)
11
+ Bna.new(response)
12
+ end
13
+
14
+ end
15
+ end
16
+ end
@@ -13,6 +13,7 @@ module Telapi
13
13
  # +StartTime+:: date in the following format: YYYY-MM-DD
14
14
  # +Page+:: integer greater than 0
15
15
  # +PageSize+:: integer greater than 0
16
+ # +DisableFaxDirections+:: true or (false)
16
17
  def list(optional_params = {})
17
18
  response = Network.get(['Calls'], optional_params)
18
19
  ResourceCollection.new(response, 'calls', self)
@@ -43,6 +44,10 @@ module Telapi
43
44
  # +SendDigits+:: 0-9, #, or *
44
45
  # +Timeout+:: integer greater than or equal to 0 (default: 60)
45
46
  # +HideCallerId+:: true or (false)
47
+ # +StraightToVoicemail+:: true or (false)
48
+ # +IfMachine+:: redirect, hangup, or (continue)
49
+ # +IfMachineUrl+:: valid URL
50
+ # +IfMachineMethod+:: (POST) or GET
46
51
  def make(to, from, url, optional_params = {})
47
52
  opts = { :To => to, :From => from, :Url => url }.merge(optional_params)
48
53
  response = Network.post(['Calls'], opts)
@@ -0,0 +1,47 @@
1
+ module Telapi
2
+ # Wraps TelAPI Fax Fax functionality
3
+ class Fax < Resource
4
+ class << self
5
+
6
+ # Returns a resource collection containing Telapi::Fax objects
7
+ # See http://www.telapi.com/docs/api/rest/faxes/list/
8
+ #
9
+ # Optional params is a hash containing:
10
+ # +To+:: mobile phone number
11
+ # +From+:: TelAPI or mobile phone number
12
+ # +StartTime+:: date in the following format: YYYY-MM-DD
13
+ # +Status+:: sending, queued, receiving, comm-error, call-dropped
14
+ # +Page+:: integer greater than 0
15
+ # +PageSize+:: integer greater than 0
16
+ def list(optional_params = {})
17
+ response = Network.get(['Faxes'], optional_params)
18
+ ResourceCollection.new(response, 'faxes', self)
19
+ end
20
+
21
+ # Returns a specific Telapi::Fax object given its id
22
+ # See http://www.telapi.com/docs/api/rest/faxes/view/
23
+ def get(id)
24
+ response = Network.get(['Faxes', id])
25
+ Fax.new(response)
26
+ end
27
+
28
+ # Creates a Fax, returning a Telapi::Fax object
29
+ # See http://www.telapi.com/docs/api/rest/faxes/send/
30
+ #
31
+ # Required params:
32
+ # +to+:: mobile phone number
33
+ # +from+:: TelAPI or mobile phone number
34
+ # +url+:: valid URL of the media file to be faxed
35
+ #
36
+ # Optional params:
37
+ # +status_callback+:: valid URL
38
+ # +status_callback+:: (POST) or GET
39
+ def create(to, from, url, optional_params = {})
40
+ opts = { :To => to, :From => from, :Url => url }.merge(optional_params)
41
+ response = Network.post(['Faxes'], opts)
42
+ Fax.new(response)
43
+ end
44
+
45
+ end
46
+ end
47
+ end
@@ -26,14 +26,31 @@ module Telapi
26
26
  # Creates a new incoming phone number, returning a Telapi::IncomingPhoneNumber object
27
27
  # See http://www.telapi.com/docs/api/rest/incoming-phone-numbers/add-or-delete/
28
28
  #
29
- # Required params:
30
- # +phone_number+:: area code, e.g. 18052585701
31
- def create(phone_number)
32
- opts = { :PhoneNumber => phone_number }
33
- response = Network.post(['IncomingPhoneNumbers'], opts)
29
+ # Conditional params:
30
+ # +PhoneNumber+:: e.g. 18055555701
31
+ # +AreaCode+:: e.g. 732
32
+ #
33
+ # Optional params is a hash containing:
34
+ # +FriendlyName+:: string
35
+ # +VoiceUrl+:: valid URL
36
+ # +VoiceMethod+:: (POST) or GET
37
+ # +VoiceFallbackUrl+:: valid URL
38
+ # +VoiceFallbackMethod+:: (POST) or GET
39
+ # +VoiceCallerIdLookup+:: true or (false)
40
+ # +SmsUrl+:: valid URL
41
+ # +SmsMethod+:: (POST) or GET
42
+ # +SmsFallbackUrl+:: valid URL
43
+ # +SmsFallbackMethod+:: (POST) or GET
44
+ # +HeartbeatUrl+:: valid URL
45
+ # +HeartbeatMethod+:: (POST) or GET
46
+ # +HangupCallback+:: valid URL
47
+ # +HangupCallbackMethod+:: (POST) or GET
48
+ def create(optional_params = {})
49
+ response = Network.post(['IncomingPhoneNumbers'], optional_params)
34
50
  IncomingPhoneNumber.new(response)
35
51
  end
36
52
 
53
+
37
54
  # Delete an incoming phone number, returning a Telapi::IncomingPhoneNumber object
38
55
  # See http://www.telapi.com/docs/api/rest/incoming-phone-numbers/add-or-delete/
39
56
  #
@@ -63,8 +80,8 @@ module Telapi
63
80
  # +SmsFallbackMethod+:: (POST) or GET
64
81
  # +HeartbeatUrl+:: valid URL
65
82
  # +HeartbeatMethod+:: (POST) or GET
66
- # +StatusCallback+:: valid URL
67
- # +StatusCallbackMethod+:: (POST) or GET
83
+ # +HangupCallback+:: valid URL
84
+ # +HangupCallbackMethod+:: (POST) or GET
68
85
  def update(id, optional_params = {})
69
86
  response = Network.post(['IncomingPhoneNumbers', id], optional_params)
70
87
  IncomingPhoneNumber.new(response)
@@ -9,6 +9,7 @@ module Telapi
9
9
  # Also, recordings can be scoped to a call, see Telapi::Call::recordings
10
10
  #
11
11
  # Optional params is a hash containing:
12
+ # +CallSid+:: Show recordings made during a particular call
12
13
  # +DateCreated+:: date in the following format: YYYY-MM-DD
13
14
  # +Page+:: integer greater than 0
14
15
  # +PageSize+:: integer greater than 0
@@ -9,6 +9,8 @@ module Telapi
9
9
  # Also, Transcriptions can be scoped to a recording, see Telapi::Recording::transcriptions
10
10
  #
11
11
  # Optional params is a hash containing:
12
+ # +Status+:: in-progress, completed, or failed
13
+ # +DateTranscribed+:: YYYY-MM-DD format
12
14
  # +Page+:: integer greater than 0
13
15
  # +PageSize+:: integer greater than 0
14
16
  def list(optional_params = {})
@@ -0,0 +1,30 @@
1
+ module Telapi
2
+ # Wraps TelAPI Usage functionality
3
+ class Usage < Resource
4
+ class << self
5
+
6
+ # Returns a resource collection containing Telapi::Usage objects
7
+ # See http://www.telapi.com/docs/api/rest/accounts/list-usages/
8
+ #
9
+ # Optional params is a hash containing:
10
+ # +Day+:: day in the following format: DD
11
+ # +Month+:: month in the following format: MM
12
+ # +Year+:: year in the following format: YYYY
13
+ # +Product+:: integer representing a product
14
+ # +Page+:: integer greater than 0
15
+ # +PageSize+:: integer greater than 0
16
+ def list(optional_params = {})
17
+ response = Network.get(['Usages'], optional_params)
18
+ ResourceCollection.new(response, 'usages', self)
19
+ end
20
+
21
+ # Returns a specific Telapi::Usage object given its id
22
+ # See http://www.telapi.com/docs/api/rest/accounts/view-usage/
23
+ def get(id)
24
+ response = Network.get(['Usages', id])
25
+ Usage.new(response)
26
+ end
27
+
28
+ end
29
+ end
30
+ end
@@ -1,3 +1,3 @@
1
1
  module Telapi
2
- VERSION = "1.1.0"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -66,4 +66,11 @@ describe Telapi::Application do
66
66
  klass.get('abc123').delete
67
67
  end
68
68
  end
69
+
70
+ describe ".generate_token" do
71
+ it "calls api via http post and returns an Application resource" do
72
+ api_should_use(:post)
73
+ klass.generate_token('abc123').should be_a(klass)
74
+ end
75
+ end
69
76
  end
@@ -13,14 +13,14 @@ describe Telapi::AvailablePhoneNumber do
13
13
 
14
14
  it "calls api via http get and returns a ResourceCollection" do
15
15
  api_should_use(:get)
16
- klass.list('US').should be_a(Telapi::ResourceCollection)
16
+ klass.list('US', 'Local').should be_a(Telapi::ResourceCollection)
17
17
  end
18
18
 
19
19
  context "when Available Phone Numbers exist" do
20
20
  before { stub_telapi_request('{ "available_phone_numbers": [{ "phone_number": "+14242495526" }] }') }
21
21
 
22
22
  it "has a collection of Available Phone Number objects" do
23
- klass.list('US').first.should be_a(klass)
23
+ klass.list('US', 'Local').first.should be_a(klass)
24
24
  end
25
25
  end
26
26
  end
@@ -0,0 +1,17 @@
1
+ require 'spec_helper'
2
+
3
+ describe Telapi::Bna do
4
+ before do
5
+ stub_telapi_request
6
+ set_account_sid_and_auth_token
7
+ end
8
+
9
+ it { should be_kind_of(Telapi::Resource) }
10
+
11
+ describe ".lookup" do
12
+ it "calls api via http get and returns a BNA resource" do
13
+ api_should_use(:get)
14
+ klass.lookup('17325551234').should be_a(klass)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ describe Telapi::Fax do
4
+ before do
5
+ stub_telapi_request
6
+ set_account_sid_and_auth_token
7
+ end
8
+
9
+ it { should be_kind_of(Telapi::Resource) }
10
+
11
+ describe ".list" do
12
+ before { stub_telapi_request('{ "faxes": [] }') }
13
+
14
+ it "calls api via http get and returns a ResourceCollection" do
15
+ api_should_use(:get)
16
+ klass.list.should be_a(Telapi::ResourceCollection)
17
+ end
18
+
19
+ context "when Faxes exist" do
20
+ before { stub_telapi_request('{ "faxes": [{ "from": "+14245551234","to": "+17325551234"}] }') }
21
+
22
+ it "has a collection of Fax objects" do
23
+ klass.list.first.should be_a(klass)
24
+ end
25
+ end
26
+ end
27
+
28
+ describe ".get" do
29
+ it "calls api via http get and returns a Fax resource" do
30
+ api_should_use(:get)
31
+ klass.get('abc123').should be_a(klass)
32
+ end
33
+ end
34
+
35
+ describe ".create" do
36
+ it "calls api via http post and returns a Fax resource" do
37
+ api_should_use(:post)
38
+ klass.create('(111) 111-1111', '(999) 999-9999', 'http://telapi.com/documents/cloud-fax.tiff').should be_a(klass)
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,34 @@
1
+ require 'spec_helper'
2
+
3
+ describe Telapi::Usage do
4
+ before do
5
+ stub_telapi_request
6
+ set_account_sid_and_auth_token
7
+ end
8
+
9
+ it { should be_kind_of(Telapi::Resource) }
10
+
11
+ describe ".list" do
12
+ before { stub_telapi_request('{ "usages": [] }') }
13
+
14
+ it "calls api via http get and returns a ResourceCollection" do
15
+ api_should_use(:get)
16
+ klass.list.should be_a(Telapi::ResourceCollection)
17
+ end
18
+
19
+ context "when Usages exist" do
20
+ before { stub_telapi_request('{ "usages": [{ "Product": "Carrier Lookup" }] }') }
21
+
22
+ it "has a collection of Usage objects" do
23
+ klass.list.first.should be_a(klass)
24
+ end
25
+ end
26
+ end
27
+
28
+ describe ".get" do
29
+ it "calls api via http get and returns a Usage resource" do
30
+ api_should_use(:get)
31
+ klass.get('abc123').should be_a(klass)
32
+ end
33
+ end
34
+ end
@@ -6,8 +6,8 @@ require 'telapi/version'
6
6
  Gem::Specification.new do |gem|
7
7
  gem.name = "telapi"
8
8
  gem.version = Telapi::VERSION
9
- gem.authors = ["Phil Misiowiec"]
10
- gem.email = ["phil@webficient.com"]
9
+ gem.authors = ["Phil Misiowiec", "Matt Meyer"]
10
+ gem.email = ["phil@webficient.com", "mmeyer@telapi.com"]
11
11
  gem.description = %q{TelAPI wrapper. See www.telapi.com.}
12
12
  gem.summary = %q{TelAPI wrapper}
13
13
  gem.homepage = "http://github.com/telapi/telapi-ruby"
metadata CHANGED
@@ -1,20 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: telapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
5
- prerelease:
4
+ version: 1.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Phil Misiowiec
8
+ - Matt Meyer
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-15 00:00:00.000000000 Z
12
+ date: 2013-03-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
16
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
17
  requirements:
19
18
  - - ! '>='
20
19
  - !ruby/object:Gem::Version
@@ -22,7 +21,6 @@ dependencies:
22
21
  type: :runtime
23
22
  prerelease: false
24
23
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
24
  requirements:
27
25
  - - ! '>='
28
26
  - !ruby/object:Gem::Version
@@ -30,7 +28,6 @@ dependencies:
30
28
  - !ruby/object:Gem::Dependency
31
29
  name: multi_json
32
30
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
31
  requirements:
35
32
  - - ! '>='
36
33
  - !ruby/object:Gem::Version
@@ -38,7 +35,6 @@ dependencies:
38
35
  type: :runtime
39
36
  prerelease: false
40
37
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
38
  requirements:
43
39
  - - ! '>='
44
40
  - !ruby/object:Gem::Version
@@ -46,7 +42,6 @@ dependencies:
46
42
  - !ruby/object:Gem::Dependency
47
43
  name: nokogiri
48
44
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
45
  requirements:
51
46
  - - ! '>='
52
47
  - !ruby/object:Gem::Version
@@ -54,7 +49,6 @@ dependencies:
54
49
  type: :runtime
55
50
  prerelease: false
56
51
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
52
  requirements:
59
53
  - - ! '>='
60
54
  - !ruby/object:Gem::Version
@@ -62,7 +56,6 @@ dependencies:
62
56
  - !ruby/object:Gem::Dependency
63
57
  name: recursive-open-struct
64
58
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
59
  requirements:
67
60
  - - ! '>='
68
61
  - !ruby/object:Gem::Version
@@ -70,7 +63,6 @@ dependencies:
70
63
  type: :runtime
71
64
  prerelease: false
72
65
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
66
  requirements:
75
67
  - - ! '>='
76
68
  - !ruby/object:Gem::Version
@@ -78,7 +70,6 @@ dependencies:
78
70
  - !ruby/object:Gem::Dependency
79
71
  name: rake
80
72
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
73
  requirements:
83
74
  - - ~>
84
75
  - !ruby/object:Gem::Version
@@ -86,7 +77,6 @@ dependencies:
86
77
  type: :development
87
78
  prerelease: false
88
79
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
80
  requirements:
91
81
  - - ~>
92
82
  - !ruby/object:Gem::Version
@@ -94,7 +84,6 @@ dependencies:
94
84
  - !ruby/object:Gem::Dependency
95
85
  name: rspec
96
86
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
87
  requirements:
99
88
  - - ~>
100
89
  - !ruby/object:Gem::Version
@@ -102,7 +91,6 @@ dependencies:
102
91
  type: :development
103
92
  prerelease: false
104
93
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
94
  requirements:
107
95
  - - ~>
108
96
  - !ruby/object:Gem::Version
@@ -110,7 +98,6 @@ dependencies:
110
98
  - !ruby/object:Gem::Dependency
111
99
  name: fakeweb
112
100
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
101
  requirements:
115
102
  - - ! '>='
116
103
  - !ruby/object:Gem::Version
@@ -118,7 +105,6 @@ dependencies:
118
105
  type: :development
119
106
  prerelease: false
120
107
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
108
  requirements:
123
109
  - - ! '>='
124
110
  - !ruby/object:Gem::Version
@@ -126,6 +112,7 @@ dependencies:
126
112
  description: TelAPI wrapper. See www.telapi.com.
127
113
  email:
128
114
  - phil@webficient.com
115
+ - mmeyer@telapi.com
129
116
  executables: []
130
117
  extensions: []
131
118
  extra_rdoc_files:
@@ -140,12 +127,14 @@ files:
140
127
  - lib/telapi/account.rb
141
128
  - lib/telapi/application.rb
142
129
  - lib/telapi/available_phone_number.rb
130
+ - lib/telapi/bna.rb
143
131
  - lib/telapi/call.rb
144
132
  - lib/telapi/caller_id.rb
145
133
  - lib/telapi/carrier.rb
146
134
  - lib/telapi/conference.rb
147
135
  - lib/telapi/configuration.rb
148
136
  - lib/telapi/error.rb
137
+ - lib/telapi/fax.rb
149
138
  - lib/telapi/fraud.rb
150
139
  - lib/telapi/inbound_xml.rb
151
140
  - lib/telapi/incoming_phone_number.rb
@@ -157,18 +146,21 @@ files:
157
146
  - lib/telapi/resource.rb
158
147
  - lib/telapi/resource_collection.rb
159
148
  - lib/telapi/transcription.rb
149
+ - lib/telapi/usage.rb
160
150
  - lib/telapi/version.rb
161
151
  - spec/spec_helper.rb
162
152
  - spec/support/telapi_helpers.rb
163
153
  - spec/telapi/account_spec.rb
164
154
  - spec/telapi/application_spec.rb
165
155
  - spec/telapi/available_phone_number_spec.rb
156
+ - spec/telapi/bna_spec.rb
166
157
  - spec/telapi/call_spec.rb
167
158
  - spec/telapi/caller_id_spec.rb
168
159
  - spec/telapi/carrier_spec.rb
169
160
  - spec/telapi/conference_spec.rb
170
161
  - spec/telapi/configuration_spec.rb
171
162
  - spec/telapi/error_spec.rb
163
+ - spec/telapi/fax_spec.rb
172
164
  - spec/telapi/fraud_spec.rb
173
165
  - spec/telapi/inbound_xml_spec.rb
174
166
  - spec/telapi/incoming_phone_number_spec.rb
@@ -180,30 +172,30 @@ files:
180
172
  - spec/telapi/resource_collection_spec.rb
181
173
  - spec/telapi/resource_spec.rb
182
174
  - spec/telapi/transcription_spec.rb
175
+ - spec/telapi/usage_spec.rb
183
176
  - telapi-ruby.gemspec
184
177
  homepage: http://github.com/telapi/telapi-ruby
185
178
  licenses: []
179
+ metadata: {}
186
180
  post_install_message:
187
181
  rdoc_options: []
188
182
  require_paths:
189
183
  - lib
190
184
  required_ruby_version: !ruby/object:Gem::Requirement
191
- none: false
192
185
  requirements:
193
186
  - - ! '>='
194
187
  - !ruby/object:Gem::Version
195
188
  version: '0'
196
189
  required_rubygems_version: !ruby/object:Gem::Requirement
197
- none: false
198
190
  requirements:
199
191
  - - ! '>='
200
192
  - !ruby/object:Gem::Version
201
193
  version: '0'
202
194
  requirements: []
203
195
  rubyforge_project: telapi-ruby
204
- rubygems_version: 1.8.23
196
+ rubygems_version: 2.0.1
205
197
  signing_key:
206
- specification_version: 3
198
+ specification_version: 4
207
199
  summary: TelAPI wrapper
208
200
  test_files:
209
201
  - spec/spec_helper.rb
@@ -211,12 +203,14 @@ test_files:
211
203
  - spec/telapi/account_spec.rb
212
204
  - spec/telapi/application_spec.rb
213
205
  - spec/telapi/available_phone_number_spec.rb
206
+ - spec/telapi/bna_spec.rb
214
207
  - spec/telapi/call_spec.rb
215
208
  - spec/telapi/caller_id_spec.rb
216
209
  - spec/telapi/carrier_spec.rb
217
210
  - spec/telapi/conference_spec.rb
218
211
  - spec/telapi/configuration_spec.rb
219
212
  - spec/telapi/error_spec.rb
213
+ - spec/telapi/fax_spec.rb
220
214
  - spec/telapi/fraud_spec.rb
221
215
  - spec/telapi/inbound_xml_spec.rb
222
216
  - spec/telapi/incoming_phone_number_spec.rb
@@ -228,3 +222,4 @@ test_files:
228
222
  - spec/telapi/resource_collection_spec.rb
229
223
  - spec/telapi/resource_spec.rb
230
224
  - spec/telapi/transcription_spec.rb
225
+ - spec/telapi/usage_spec.rb