didww-v3 1.2.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/tests.yml +27 -0
  3. data/.rubocop.yml +22 -19
  4. data/CHANGELOG.md +75 -0
  5. data/Gemfile +20 -0
  6. data/README.md +8 -1
  7. data/Rakefile +6 -1
  8. data/bin/console +1 -0
  9. data/didww-v3.gemspec +3 -18
  10. data/lib/didww/{middleware.rb → base_middleware.rb} +5 -4
  11. data/lib/didww/callback/const.rb +14 -0
  12. data/lib/didww/callback/request_validator.rb +77 -0
  13. data/lib/didww/client.rb +101 -26
  14. data/lib/didww/complex_objects/base.rb +6 -4
  15. data/lib/didww/complex_objects/capacity_order_item.rb +17 -0
  16. data/lib/didww/complex_objects/configurations/base.rb +143 -2
  17. data/lib/didww/complex_objects/configurations/h323_configuration.rb +1 -0
  18. data/lib/didww/complex_objects/configurations/iax2_configuration.rb +1 -0
  19. data/lib/didww/complex_objects/configurations/pstn_configuration.rb +1 -0
  20. data/lib/didww/complex_objects/configurations/sip_configuration.rb +34 -3
  21. data/lib/didww/complex_objects/configurations.rb +1 -0
  22. data/lib/didww/complex_objects/did_order_item.rb +14 -7
  23. data/lib/didww/complex_objects/export_filters.rb +26 -0
  24. data/lib/didww/encrypt.rb +101 -0
  25. data/lib/didww/jsonapi_middleware.rb +21 -0
  26. data/lib/didww/resource/address.rb +37 -0
  27. data/lib/didww/resource/address_verification.rb +56 -0
  28. data/lib/didww/resource/area.rb +12 -0
  29. data/lib/didww/{resources → resource}/available_did.rb +1 -0
  30. data/lib/didww/{resources → resource}/balance.rb +1 -0
  31. data/lib/didww/{resources → resource}/base.rb +2 -2
  32. data/lib/didww/resource/capacity_pool.rb +47 -0
  33. data/lib/didww/resource/city.rb +14 -0
  34. data/lib/didww/{resources → resource}/country.rb +1 -0
  35. data/lib/didww/{resources → resource}/did.rb +11 -3
  36. data/lib/didww/{resources → resource}/did_group.rb +13 -21
  37. data/lib/didww/{resources → resource}/did_group_type.rb +1 -0
  38. data/lib/didww/{resources → resource}/did_reservation.rb +1 -0
  39. data/lib/didww/resource/encrypted_file.rb +58 -0
  40. data/lib/didww/{resources/cdr_export.rb → resource/export.rb} +24 -5
  41. data/lib/didww/resource/identity.rb +78 -0
  42. data/lib/didww/{resources → resource}/order.rb +21 -12
  43. data/lib/didww/resource/permanent_supporting_document.rb +15 -0
  44. data/lib/didww/{resources → resource}/pop.rb +1 -0
  45. data/lib/didww/resource/proof.rb +19 -0
  46. data/lib/didww/resource/proof_type.rb +14 -0
  47. data/lib/didww/resource/public_key.rb +12 -0
  48. data/lib/didww/resource/qty_based_pricing.rb +20 -0
  49. data/lib/didww/{resources → resource}/region.rb +1 -0
  50. data/lib/didww/resource/requirement.rb +61 -0
  51. data/lib/didww/resource/requirement_validation.rb +10 -0
  52. data/lib/didww/resource/shared_capacity_group.rb +27 -0
  53. data/lib/didww/{resources → resource}/stock_keeping_unit.rb +1 -0
  54. data/lib/didww/resource/supporting_document_template.rb +14 -0
  55. data/lib/didww/{resources/trunk.rb → resource/voice_in_trunk.rb} +40 -4
  56. data/lib/didww/{resources/trunk_group.rb → resource/voice_in_trunk_group.rb} +3 -2
  57. data/lib/didww/resource/voice_out_trunk.rb +75 -0
  58. data/lib/didww/resource/voice_out_trunk_regenerate_credential.rb +11 -0
  59. data/lib/didww/types/ip_addresses.rb +23 -0
  60. data/lib/didww/types/strings.rb +21 -0
  61. data/lib/didww/types.rb +12 -0
  62. data/lib/didww/version.rb +2 -1
  63. data/lib/didww.rb +6 -1
  64. metadata +59 -176
  65. data/.travis.yml +0 -5
  66. data/lib/didww/complex_objects/cdr_export_filter.rb +0 -23
  67. data/lib/didww/complex_objects/configurations/const.rb +0 -149
  68. data/lib/didww/resources/city.rb +0 -9
  69. data/lib/didww/resources/trunk/const.rb +0 -46
@@ -1,46 +0,0 @@
1
- module DIDWW
2
- module Resource
3
- class Trunk < Base
4
- module CONST
5
- # Allowed values for trunk.cli_format
6
- CLI_FORMAT_RAW = 'raw' .freeze
7
- CLI_FORMAT_E164 = 'e164' .freeze
8
- CLI_FORMAT_LOCAL = 'local' .freeze
9
-
10
- CLI_FORMATS = {
11
- CLI_FORMAT_RAW => 'Raw' .freeze,
12
- CLI_FORMAT_E164 => 'E.164' .freeze,
13
- CLI_FORMAT_LOCAL => 'Local' .freeze
14
- }.freeze
15
-
16
- # Configuration types
17
- CONF_TYPE_SIP = 'sip_configurations' .freeze
18
- CONF_TYPE_H323 = 'h323_configurations' .freeze
19
- CONF_TYPE_IAX2 = 'iax2_configurations' .freeze
20
- CONF_TYPE_PSTN = 'pstn_configurations' .freeze
21
-
22
- CONF_TYPES = {
23
- CONF_TYPE_SIP => 'SIP' .freeze,
24
- CONF_TYPE_H323 => 'H323' .freeze,
25
- CONF_TYPE_IAX2 => 'IAX2' .freeze,
26
- CONF_TYPE_PSTN => 'PSTN' .freeze
27
- }.freeze
28
-
29
- CONF_TYPE_CLASSES = {
30
- CONF_TYPE_SIP => DIDWW::ComplexObject::SipConfiguration,
31
- CONF_TYPE_H323 => DIDWW::ComplexObject::H323Configuration,
32
- CONF_TYPE_IAX2 => DIDWW::ComplexObject::Iax2Configuration,
33
- CONF_TYPE_PSTN => DIDWW::ComplexObject::PstnConfiguration
34
- }.freeze
35
-
36
- def cli_format_human
37
- CLI_FORMATS[cli_format]
38
- end
39
-
40
- def configuration_type_human
41
- CONF_TYPES[configuration.type] if configuration
42
- end
43
- end
44
- end
45
- end
46
- end