ruby-bandwidth-iris 2.0.1 → 2.1.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 +4 -4
- data/README.md +63 -0
- data/lib/bandwidth-iris/csr.rb +44 -0
- data/lib/bandwidth-iris/version.rb +1 -1
- data/lib/ruby-bandwidth-iris.rb +1 -0
- data/spec/bandwidth-iris/csr_spec.rb +73 -0
- data/spec/xml.yml +1 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b1159ee27c2a2ee423bdd0ce54a1b0943749127da435a611eeb113dec178ad0
|
4
|
+
data.tar.gz: a7e09992b64e938a9dc1c3943ee8be92dc9d6b8a1ed9d3b722268879a35779bd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc146c9252add1af25853dd70416d790ba9bb5ad8b74adb6f1575e95b754cd6dcf5d5875112060b643493fcc4b970df156c8d8072db1d054c8f68a6c49faaf87
|
7
|
+
data.tar.gz: 33db19d5c8f58b4632206a82333fd526b708726b8fbed3d71ba8efe6841708a19d29e66e2a9f1357f7a3caab668c2ff132422e34116e45bbdc33b3c7aee79516
|
data/README.md
CHANGED
@@ -11,6 +11,7 @@ Ruby Client library for IRIS / BBS API
|
|
11
11
|
| 1.0.5 | Fixed incorrect generation of XML for a Disconnect request |
|
12
12
|
| 2.0.0 | Added `importTnOrders`, `removeImportedTnOrders`, `inserviceNumbers`, and `importTnChecker` endpoints. This release also changed the response body of `BandwidthIris::InServiceNumber.list()`. Please make sure to update your code to include this change. |
|
13
13
|
| 2.0.1 | Updated gem dependencies to be less restrictive |
|
14
|
+
| 2.1.0 | Added `csrs` endpoints |
|
14
15
|
|
15
16
|
## Install
|
16
17
|
|
@@ -694,3 +695,65 @@ remove_imported_tn_order = {
|
|
694
695
|
response = BandwidthIris::RemoveImportedTnOrders.create_remove_imported_tn_order(remove_imported_tn_order)
|
695
696
|
puts response
|
696
697
|
```
|
698
|
+
|
699
|
+
## CSR
|
700
|
+
|
701
|
+
### Create CSR Order
|
702
|
+
|
703
|
+
```ruby
|
704
|
+
csr_data = {
|
705
|
+
:customer_order_id => "order id",
|
706
|
+
:working_or_billing_telephone_number => "5554443333"
|
707
|
+
}
|
708
|
+
|
709
|
+
response = BandwidthIris::Csr.create(csr_data)
|
710
|
+
puts response[0][:order_id]
|
711
|
+
```
|
712
|
+
|
713
|
+
### Replace CSR Order
|
714
|
+
|
715
|
+
```ruby
|
716
|
+
csr_data = {
|
717
|
+
:customer_order_id => "order id",
|
718
|
+
:working_or_billing_telephone_number => "5554443333"
|
719
|
+
}
|
720
|
+
|
721
|
+
response = BandwidthIris::Csr.replace("csr_id", csr_data)
|
722
|
+
puts response[0][:order_id]
|
723
|
+
```
|
724
|
+
|
725
|
+
### Get CSR Order
|
726
|
+
|
727
|
+
```ruby
|
728
|
+
response = BandwidthIris::Csr.get("csr_id")
|
729
|
+
puts response[0][:order_id]
|
730
|
+
```
|
731
|
+
|
732
|
+
### Get CSR Order Notes
|
733
|
+
|
734
|
+
```ruby
|
735
|
+
response = BandwidthIris::Csr.get_notes("csr_id")
|
736
|
+
puts response[0][:note][0][:id]
|
737
|
+
```
|
738
|
+
|
739
|
+
### Add CSR Order Note
|
740
|
+
|
741
|
+
```ruby
|
742
|
+
note_data = {
|
743
|
+
:user_id => "id",
|
744
|
+
:description => "description"
|
745
|
+
}
|
746
|
+
|
747
|
+
BandwidthIris::Csr.add_note("csr_id", note_data)
|
748
|
+
```
|
749
|
+
|
750
|
+
### Update CSR Order Note
|
751
|
+
|
752
|
+
```ruby
|
753
|
+
note_data = {
|
754
|
+
:user_id => "id",
|
755
|
+
:description => "description"
|
756
|
+
}
|
757
|
+
|
758
|
+
BandwidthIris::Csr.update_note("csr_id", "note_id", note_data)
|
759
|
+
```
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module BandwidthIris
|
2
|
+
CSR_PATH = 'csrs'
|
3
|
+
|
4
|
+
class Csr
|
5
|
+
extend ClientWrapper
|
6
|
+
include ApiItem
|
7
|
+
|
8
|
+
def self.create(client, csr_data)
|
9
|
+
data = client.make_request(:post, client.concat_account_path("#{CSR_PATH}"), {:csr => csr_data})
|
10
|
+
return data
|
11
|
+
end
|
12
|
+
wrap_client_arg :create
|
13
|
+
|
14
|
+
def self.get(client, csr_id)
|
15
|
+
data = client.make_request(:get, client.concat_account_path("#{CSR_PATH}/#{csr_id}"))
|
16
|
+
return data
|
17
|
+
end
|
18
|
+
wrap_client_arg :get
|
19
|
+
|
20
|
+
def self.replace(client, csr_id, csr_data)
|
21
|
+
data = client.make_request(:put, client.concat_account_path("#{CSR_PATH}/#{csr_id}"), {:csr => csr_data})
|
22
|
+
return data
|
23
|
+
end
|
24
|
+
wrap_client_arg :replace
|
25
|
+
|
26
|
+
def self.get_notes(client, csr_id)
|
27
|
+
data = client.make_request(:get, client.concat_account_path("#{CSR_PATH}/#{csr_id}/notes"))
|
28
|
+
return data
|
29
|
+
end
|
30
|
+
wrap_client_arg :get_notes
|
31
|
+
|
32
|
+
def self.add_note(client, csr_id, note_data)
|
33
|
+
data = client.make_request(:post, client.concat_account_path("#{CSR_PATH}/#{csr_id}/notes"), {:note => note_data})
|
34
|
+
return data
|
35
|
+
end
|
36
|
+
wrap_client_arg :add_note
|
37
|
+
|
38
|
+
def self.update_note(client, csr_id, note_id, note_data)
|
39
|
+
data = client.make_request(:put, client.concat_account_path("#{CSR_PATH}/#{csr_id}/notes/#{note_id}"), {:note => note_data})
|
40
|
+
return data
|
41
|
+
end
|
42
|
+
wrap_client_arg :update_note
|
43
|
+
end
|
44
|
+
end
|
data/lib/ruby-bandwidth-iris.rb
CHANGED
@@ -0,0 +1,73 @@
|
|
1
|
+
describe BandwidthIris::Csr do
|
2
|
+
client = nil
|
3
|
+
|
4
|
+
before :each do
|
5
|
+
client = Helper.get_client()
|
6
|
+
end
|
7
|
+
|
8
|
+
after :each do
|
9
|
+
client.stubs.verify_stubbed_calls()
|
10
|
+
end
|
11
|
+
|
12
|
+
describe '#create' do
|
13
|
+
it 'should create a csr' do
|
14
|
+
data = {
|
15
|
+
:customer_order_id => "123",
|
16
|
+
:working_or_billing_telephone_number => "5554443333"
|
17
|
+
}
|
18
|
+
client.stubs.post("/v1.0/accounts/accountId/csrs", client.build_xml({:csr => data})) {|env| [200, {}, Helper.xml['csr']]}
|
19
|
+
item = BandwidthIris::Csr.create(client, data)
|
20
|
+
expect(item[0][:status]).to eql("RECEIVED")
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
describe '#get' do
|
25
|
+
it 'should get a csr' do
|
26
|
+
client.stubs.get("/v1.0/accounts/accountId/csrs/123") {|env| [200, {}, Helper.xml['csr']]}
|
27
|
+
item = BandwidthIris::Csr.get(client, "123")
|
28
|
+
expect(item[0][:status]).to eql("RECEIVED")
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
describe '#replace' do
|
33
|
+
it 'should replace a csr' do
|
34
|
+
data = {
|
35
|
+
:customer_order_id => "123",
|
36
|
+
:working_or_billing_telephone_number => "5554443333"
|
37
|
+
}
|
38
|
+
client.stubs.put("/v1.0/accounts/accountId/csrs/123", client.build_xml({:csr => data})) {|env| [200, {}, Helper.xml['csr']]}
|
39
|
+
item = BandwidthIris::Csr.replace(client, "123", data)
|
40
|
+
expect(item[0][:status]).to eql("RECEIVED")
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
describe '#getnotes' do
|
45
|
+
it 'should get csr notes' do
|
46
|
+
client.stubs.get("/v1.0/accounts/accountId/csrs/123/notes") {|env| [200, {}, Helper.xml['notes']]}
|
47
|
+
item = BandwidthIris::Csr.get_notes(client, "123")
|
48
|
+
expect(item[0][:note][0][:id]).to eql(11299)
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
describe '#addnote' do
|
53
|
+
it 'should add csr note' do
|
54
|
+
data = {
|
55
|
+
:user_id => "id",
|
56
|
+
:description => "description"
|
57
|
+
}
|
58
|
+
client.stubs.post("/v1.0/accounts/accountId/csrs/123/notes", client.build_xml({:note => data})) {|env| [200, {}, ""]}
|
59
|
+
BandwidthIris::Csr.add_note(client, "123", data)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
describe '#updatenote' do
|
64
|
+
it 'should update csr note' do
|
65
|
+
data = {
|
66
|
+
:user_id => "id",
|
67
|
+
:description => "description"
|
68
|
+
}
|
69
|
+
client.stubs.put("/v1.0/accounts/accountId/csrs/123/notes/456", client.build_xml({:note => data})) {|env| [200, {}, ""]}
|
70
|
+
BandwidthIris::Csr.update_note(client, "123", "456", data)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
data/spec/xml.yml
CHANGED
@@ -46,3 +46,4 @@
|
|
46
46
|
lsr_orders: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><LsrOrders><TotalCount>5</TotalCount><LsrOrderSummary><accountId>9999999</accountId><CountOfTNs>2</CountOfTNs><CustomerOrderId>FineCustomerid</CustomerOrderId><userId>team_ua</userId><lastModifiedDate>2015-03-02T09:10:16.193Z</lastModifiedDate><OrderType>lsr</OrderType><OrderDate>2015-03-25T11:44:42.941Z</OrderDate><OrderStatus>PENDING</OrderStatus><ActualFocDate>2015-03-25</ActualFocDate><BillingTelephoneNumber>2526795000</BillingTelephoneNumber><CreatedByUser>lsrOnlyUser</CreatedByUser><OrderId>7d644c88-ef23-4307-96ab-20253666d0c7</OrderId><Pon>ATT-011515-324234</Pon><PonVersion>0</PonVersion><RequestedFocDate>2015-11-15</RequestedFocDate></LsrOrderSummary><!-- SNIP --><LsrOrderSummary><accountId>9999999</accountId><CountOfTNs>2</CountOfTNs><CustomerOrderId>MyId5</CustomerOrderId><lastModifiedDate>2015-03-03T14:07:19.926Z</lastModifiedDate><OrderType>lsr</OrderType><OrderDate>2015-03-25T11:44:42.941Z</OrderDate><OrderStatus>NEW</OrderStatus><ActualFocDate>2015-03-25</ActualFocDate><BillingTelephoneNumber>2526795000</BillingTelephoneNumber><CreatedByUser>lsrOnlyUser</CreatedByUser><OrderId>00cf7e08-cab0-4515-9a77-2d0a7da09415</OrderId><Pon>testpon1002</Pon><PonVersion>0</PonVersion><RequestedFocDate>2015-11-15</RequestedFocDate></LsrOrderSummary></LsrOrders>"
|
47
47
|
account: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><AccountResponse><Account><AccountId>14</AccountId><CompanyName>CWI Hosting</CompanyName><AccountType>Business</AccountType><NenaId></NenaId><Tiers><Tier>0</Tier></Tiers><Address><HouseNumber>60</HouseNumber><HouseSuffix></HouseSuffix><PreDirectional></PreDirectional><StreetName>Pine</StreetName><StreetSuffix>St</StreetSuffix><PostDirectional></PostDirectional><AddressLine2></AddressLine2><City>Denver</City><StateCode>CO</StateCode><Zip>80016</Zip><PlusFour></PlusFour><County></County><Country>United States</Country><AddressType>Service</AddressType></Address><Contact><FirstName>Sanjay</FirstName><LastName>Rao</LastName><Phone>9195441234</Phone><Email>srao@bandwidth.com</Email></Contact><ReservationAllowed>true</ReservationAllowed><LnpEnabled>true</LnpEnabled><AltSpid>X455</AltSpid><SPID>9999</SPID><PortCarrierType>WIRELINE</PortCarrierType></Account></AccountResponse>"
|
48
48
|
import_tn_checker: '<?xml version="1.0" encoding="UTF-8"?><ImportTnCheckerPayload><TelephoneNumbers><TelephoneNumber>5554443333</TelephoneNumber><TelephoneNumber>5553334444</TelephoneNumber></TelephoneNumbers></ImportTnCheckerPayload>'
|
49
|
+
csr: '<?xml version="1.0" encoding="UTF-8"?><CsrResponse><Status>RECEIVED</Status></CsrResponse>'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-bandwidth-iris
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrey Belchikov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02-
|
11
|
+
date: 2020-02-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: builder
|
@@ -171,6 +171,7 @@ files:
|
|
171
171
|
- lib/bandwidth-iris/client.rb
|
172
172
|
- lib/bandwidth-iris/client_wrapper.rb
|
173
173
|
- lib/bandwidth-iris/covered_rate_center.rb
|
174
|
+
- lib/bandwidth-iris/csr.rb
|
174
175
|
- lib/bandwidth-iris/disc_number.rb
|
175
176
|
- lib/bandwidth-iris/disconnect.rb
|
176
177
|
- lib/bandwidth-iris/dlda.rb
|
@@ -202,6 +203,7 @@ files:
|
|
202
203
|
- spec/bandwidth-iris/city_spec.rb
|
203
204
|
- spec/bandwidth-iris/client_spec.rb
|
204
205
|
- spec/bandwidth-iris/covered_rate_center_spec.rb
|
206
|
+
- spec/bandwidth-iris/csr_spec.rb
|
205
207
|
- spec/bandwidth-iris/disc_number_spec.rb
|
206
208
|
- spec/bandwidth-iris/disconnect_spec.rb
|
207
209
|
- spec/bandwidth-iris/dlda_spec.rb
|
@@ -255,6 +257,7 @@ test_files:
|
|
255
257
|
- spec/bandwidth-iris/city_spec.rb
|
256
258
|
- spec/bandwidth-iris/client_spec.rb
|
257
259
|
- spec/bandwidth-iris/covered_rate_center_spec.rb
|
260
|
+
- spec/bandwidth-iris/csr_spec.rb
|
258
261
|
- spec/bandwidth-iris/disc_number_spec.rb
|
259
262
|
- spec/bandwidth-iris/disconnect_spec.rb
|
260
263
|
- spec/bandwidth-iris/dlda_spec.rb
|