rtedexis 0.0.2 → 0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ff585fd7cb217886d15ec722c2032107e33afc84
4
- data.tar.gz: 57b949301db6e2bd8eb26856f5f81c6b731e147d
3
+ metadata.gz: 969abb671eda791fd334e2eb72feb54c40accdd8
4
+ data.tar.gz: da27b5151337d599619e4c8b16f6ff04d3cbf32b
5
5
  SHA512:
6
- metadata.gz: 859aa7852d84c9748d8235067871bbe51dea24c0b7922db1e640cf74b9ba48e1c6f0869413e59fb13c73020ffd4118549719298a7d9135ccaf56be093a2b8241
7
- data.tar.gz: 904c197d11a930252adc539d23fbe380c1389f032c32ca22cdff012c5434dc9db6ea3b10e196fc27ea960159df2aedbfe515b08ad5f45b682a96b209bb03d557
6
+ metadata.gz: 8c2fae3452abf4894ff179a98f501d8c22d68f2df2e908565cde843c46dfb3ade1268cb7edbf8c24502ed76d34e7a3661b65a65f23ae63fbfb3ff5d14456d0a2
7
+ data.tar.gz: b2efd0f50ea0df06b6039d7787dcd54f91c8f60b1bbf3dc45580934ef43a0ca1d947bf94fa9a75df4e80b12cc4821946cc566cd86de826175b9972e4519d4876
@@ -0,0 +1,6 @@
1
+ class Rtedexis::SFTP::Response
2
+ attr_accessor :invalid_numbers
3
+ def initialize(args = {})
4
+ @invalid_numbers = args[:invalid_numbers]
5
+ end
6
+ end
data/lib/rtedexis/sftp.rb CHANGED
@@ -16,22 +16,28 @@ class Rtedexis::SFTP
16
16
 
17
17
  def send(number_list, text)
18
18
  if number_list.kind_of?(Array) and !text.empty?
19
- write_file_to_sftp_server(format_file_content(number_list, text))
19
+ file_content = generate_file_content(number_list, text)
20
+ write_file_to_sftp_server(file_content[:for_delivery])
20
21
  end
22
+ Response.new(invalid_numbers: file_content[:invalid_numbers])
21
23
  end
22
24
 
23
25
  private
24
26
 
25
- def format_file_content(number_list, text)
26
- result = ""
27
+ def generate_file_content(number_list, text)
28
+ result = {for_delivery: String.new, invalid_numbers: Array.new}
27
29
  number_list.each do |number|
28
- sended_point = 0
29
- while text.length > sended_point
30
- result << get_operator_code(number) + ';' + get_number_without_operator_code(number) + ';' + text[sended_point, 160] + "\n"
31
- sended_point += 160
32
- end
33
- end
34
- result
30
+ if is_in_cellphone_format?(number)
31
+ sended_point = 0
32
+ while text.length > sended_point
33
+ result[:for_delivery] << get_operator_code(number) + ';' + get_number_without_operator_code(number) + ';' + text[sended_point, 160] + "\n"
34
+ sended_point += 160
35
+ end
36
+ else
37
+ result[:invalid_numbers] << number
38
+ end
39
+ end
40
+ result
35
41
  end
36
42
 
37
43
  def get_operator_code(number)
@@ -66,5 +72,11 @@ class Rtedexis::SFTP
66
72
  @last_file_sended = file_name
67
73
  end
68
74
 
75
+ def is_in_cellphone_format?(number)
76
+ true if is_number?(number) and (number.length == 10 or number.length == 11)
77
+ end
69
78
 
79
+ def is_number?(string)
80
+ true if Integer(string) rescue false
81
+ end
70
82
  end
@@ -1,3 +1,3 @@
1
1
  module Rtedexis
2
- VERSION = "0.0.2"
2
+ VERSION = "0.1.0"
3
3
  end
data/lib/rtedexis.rb CHANGED
@@ -1,6 +1,8 @@
1
1
  require "rtedexis/version"
2
2
  require "rtedexis/soap"
3
3
  require "rtedexis/sftp"
4
+ require "rtedexis/response"
5
+
4
6
  module Rtedexis
5
7
 
6
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rtedexis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nerio Navea
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-03-31 00:00:00.000000000 Z
11
+ date: 2016-04-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -97,6 +97,7 @@ files:
97
97
  - bin/console
98
98
  - bin/setup
99
99
  - lib/rtedexis.rb
100
+ - lib/rtedexis/response.rb
100
101
  - lib/rtedexis/sftp.rb
101
102
  - lib/rtedexis/soap.rb
102
103
  - lib/rtedexis/version.rb