dopis_online_client 0.2.4 → 1.0.1

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.
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 2.0.0
5
+ script: bundle exec rake test
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source "http://rubygems.org"
1
+ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in dopis_online_client.gemspec
4
4
  gemspec
data/LICENSE CHANGED
@@ -1,4 +1,6 @@
1
- Copyright (c) 2009 Jiri Kubicek, KRAXNET s.r.o.
1
+ Copyright (c) 2009 - 2013 Jiri Kubicek, KRAXNET s.r.o.
2
+
3
+ MIT License
2
4
 
3
5
  Permission is hereby granted, free of charge, to any person obtaining
4
6
  a copy of this software and associated documentation files (the
data/README.md ADDED
@@ -0,0 +1,20 @@
1
+ # dopis_online_client
2
+
3
+ [![Build Status](https://travis-ci.org/kraxnet/dopis_online_client.png)](https://travis-ci.org/kraxnet/dopis_online_client)
4
+
5
+ DopisOnline je služba České pošty, s.p., která "umožnuje zákazníkovi podání dokumentu v elektronické formě (formát PDF), přičemž dodáná je uskutečněno formou klasického vytištěného dopisu."
6
+
7
+ Vice informaci na https://online.postservis.cz/Download/DopisOnline/DopisOnline.pdf
8
+
9
+ ## Usage:
10
+
11
+ require 'lib/dopis_online_client'
12
+
13
+ DopisOnlineClient.base_uri 'https://online.postservis.cz/cmdedopis'
14
+ DopisOnlineClient.auth('jmeno','heslo')
15
+
16
+ DopisOnlineClient::Request.send("letter.pdf")
17
+
18
+ ## Copyright
19
+
20
+ Copyright (c) 2009-2013 Jiří Kubíček, KRAXNET s.r.o.. See LICENSE for details.
data/Rakefile CHANGED
@@ -1,5 +1,4 @@
1
- require 'bundler'
2
- Bundler::GemHelper.install_tasks
1
+ require 'bundler/gem_tasks'
3
2
 
4
3
  task :default => :test
5
4
 
@@ -29,7 +28,7 @@ begin
29
28
  require 'sdoc'
30
29
  rescue LoadError
31
30
  end
32
- require 'rake/rdoctask'
31
+ require 'rdoc/task'
33
32
  Rake::RDocTask.new do |rdoc|
34
33
  rdoc.rdoc_dir = 'rdoc'
35
34
  rdoc.title = "Tire"
@@ -50,4 +49,4 @@ rescue LoadError
50
49
  task :rcov do
51
50
  abort "RCov is not available. In order to run rcov, you must: sudo gem install rcov"
52
51
  end
53
- end
52
+ end
@@ -1,37 +1,39 @@
1
1
  # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
4
  require "dopis_online_client/version"
4
5
 
5
- Gem::Specification.new do |s|
6
- s.name = "dopis_online_client"
7
- s.version = DopisOnlineClient::VERSION
8
- s.platform = Gem::Platform::RUBY
9
- s.authors = ["Jiri Kubicek"]
10
- s.email = ["jiri.kubicek@kraxnet.cz"]
11
- s.homepage = "http://github.com/kraxnet/dopis_online_client"
12
- s.summary = %q{Dopis Online Client Library}
13
- s.description = %q{Klientská knihovna pro práci se službou Dopis Online České pošty}
6
+ Gem::Specification.new do |gem|
7
+ gem.name = "dopis_online_client"
8
+ gem.version = DopisOnlineClient::VERSION
9
+ gem.platform = Gem::Platform::RUBY
10
+ gem.authors = ["Jiri Kubicek", "Josef Pospisil"]
11
+ gem.email = ["jiri.kubicek@kraxnet.cz", "josef.pospisil@laststar.eu"]
12
+ gem.homepage = "http://github.com/kraxnet/dopis_online_client"
13
+ gem.summary = %q{Dopis Online Client Library}
14
+ gem.description = %q{Klientská knihovna pro práci se službou Dopis Online České pošty}
14
15
 
15
- s.rubyforge_project = "dopis_online_client"
16
+ gem.rubyforge_project = "dopis_online_client"
16
17
 
17
- s.files = `git ls-files`.split("\n")
18
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
- s.require_paths = ["lib"]
18
+ gem.files = `git ls-files`.split($/)
19
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
20
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
21
+ gem.require_paths = ["lib"]
21
22
 
22
- s.extra_rdoc_files = [ "README.rdoc", "LICENSE" ]
23
- s.rdoc_options = [ "--charset=UTF-8" ]
23
+ gem.extra_rdoc_files = [ "README.md", "LICENSE" ]
24
+ gem.rdoc_options = [ "--charset=UTF-8" ]
24
25
 
25
- s.required_rubygems_version = ">= 1.3.6"
26
+ gem.required_rubygems_version = ">= 1.3.6"
26
27
 
27
- s.add_dependency "rake", ">= 0.8.0"
28
- s.add_dependency "bundler", ">= 1.0"
29
- s.add_dependency "httmultiparty"
30
- s.add_dependency "crack"
28
+ gem.add_dependency "rake", ">= 0.8.0"
29
+ gem.add_dependency "bundler", ">= 1.0"
30
+ gem.add_dependency "httmultiparty"
31
+ gem.add_dependency "multi_xml"
32
+ gem.add_dependency "builder"
31
33
 
32
- s.add_development_dependency "turn"
33
- s.add_development_dependency "shoulda"
34
- s.add_development_dependency "sdoc"
35
- s.add_development_dependency "rcov"
36
- s.add_development_dependency "fakeweb"
34
+ gem.add_development_dependency "turn"
35
+ gem.add_development_dependency "shoulda"
36
+ gem.add_development_dependency "sdoc"
37
+ gem.add_development_dependency "simplecov"
38
+ gem.add_development_dependency "fakeweb"
37
39
  end
@@ -6,22 +6,38 @@ require 'dopis_online_client/status_request'
6
6
 
7
7
  module DopisOnlineClient
8
8
 
9
- def self.base_uri(path=nil)
9
+ # Public: Sets the service uri
10
+ #
11
+ # uri - string with base uri of the service
12
+ #
13
+ def self.base_uri(path = nil)
10
14
  path ? @base_uri = path : @base_uri
11
15
  end
12
16
 
17
+ # Public: Sets authentication credentials
18
+ #
19
+ # username - string with username
20
+ # password - password
21
+ #
13
22
  def self.auth(username, password)
14
- @username=username
15
- @password=password
23
+ @username = username
24
+ @password = password
16
25
  end
17
26
 
27
+ # Public: Gets the current username
28
+ #
29
+ # Returns string with the username
30
+ #
18
31
  def self.username
19
32
  @username
20
33
  end
21
34
 
35
+ # Public: Gets the current password
36
+ #
37
+ # Returns string with the password
38
+ #
22
39
  def self.password
23
40
  @password
24
41
  end
25
-
26
42
  end
27
43
 
@@ -1,46 +1,120 @@
1
+ require 'builder'
2
+ require 'base64'
3
+ require 'ostruct'
4
+
1
5
  module DopisOnlineClient
2
6
  class Request
3
7
 
4
8
  include HTTMultiParty
5
9
 
6
- attr_reader :username, :password, :color, :postage_type, :payment_type, :response_format, :pdf_file
7
-
8
- def initialize(params)
9
- @color = params[:color] || 0 # cernobile
10
- @postage_type = params[:postage_type] || 195 # obycejne
11
- @payment_type = params[:payment_type] || 0 # fakturou
12
- @format = params[:format] || :xml
13
- @pdf_file_path = params[:pdf_file_path]
10
+ DEFAULTS = {:postage_type => 195, # common
11
+ :coupon_type => 0, # do not print
12
+ :print_type => 0, # one-sided print
13
+ :sender_type => 2, # from 1st page of the document
14
+ :recipient_type => 2,
15
+ :format => :xml
16
+ }
17
+
18
+
19
+ attr_reader :pdf_file_path, :options
20
+
21
+ # Public: Sends the request to the service
22
+ #
23
+ # pdf_file_path - string with the path to the pdf file, that will be send
24
+ # params - hash with the additional parameters
25
+ #
26
+ # Returns new DopisOnlineClient::Response
27
+ #
28
+ def self.send(pdf_file_path, params = {})
29
+ @request = new(pdf_file_path, params).deliver
30
+ end
31
+
32
+ # Public: Initializes library
33
+ #
34
+ # pdf_file_path - string with the path to the pdf file, that will be send
35
+ # params - hash with the additional parameters
36
+ #
37
+ def initialize(pdf_file_path, params = {})
38
+ params.merge!(DEFAULTS)
39
+ @options = OpenStruct.new(params)
40
+ @pdf_file_path = pdf_file_path
14
41
  self.class.base_uri DopisOnlineClient.base_uri
15
42
  end
16
-
43
+
44
+ # Public: Delivers payload to service
45
+ #
46
+ # Returns new DopisOnlineClient::Response
47
+ #
17
48
  def deliver
18
- response = self.class.post '/dopisonline.php', :body => {
19
- :user => DopisOnlineClient.username,
20
- :passwd => DopisOnlineClient.password,
21
- :barvatisku => @color,
22
- :typvyplatneho => @postage_type,
23
- :typuhrady => @payment_type,
24
- :typvystupu => @format.to_s,
25
- :soubor => File.new(@pdf_file_path)
26
- }
49
+ response = self.class.post '/dopisonline/donApi.php', :body => body
27
50
  parsed_response = parse_response(response.body)
28
51
  DopisOnlineClient::Response.new(parsed_response, response.body, response.code)
29
52
  end
30
-
53
+
54
+ # Internal: parses the body of the response
55
+ #
56
+ # body - string with service response
57
+ #
58
+ # Returns nil if the body is not present
59
+ #
31
60
  def parse_response(body)
32
61
  return nil if body.nil? or body.empty?
33
- case @format
34
- when :xml
35
- Crack::XML.parse(body)
36
- else
37
- body
38
- end
39
- end
40
-
41
- def self.send(params)
42
- @request = new(params).deliver
62
+ case options.format
63
+ when :xml
64
+ MultiXml.parse(body)
65
+ else
66
+ body
67
+ end
43
68
  end
44
69
 
70
+ # Internal: returns hash with request body
71
+ #
72
+ # Returns Hash with request body
73
+ #
74
+ def body
75
+ xml = Builder::XmlMarkup.new( :indent => 2 )
76
+ xml.instruct! :xml, :encoding => "UTF-8"
77
+ xml.dataroot do |dataroot|
78
+ dataroot.typvyplatneho options.postage_type
79
+ dataroot.typtisku options.print_type
80
+ dataroot.tiskpoukazky options.coupon_type
81
+ dataroot.typods options.sender_type
82
+ dataroot.typadr options.recipient_type
83
+ dataroot.odsid nil
84
+ dataroot.odsobrazek nil
85
+ dataroot.odsfirma nil
86
+ dataroot.odsosoba nil
87
+ dataroot.odsulice nil
88
+ dataroot.odscp nil
89
+ dataroot.odsco nil
90
+ dataroot.odsobec nil
91
+ dataroot.odspsc nil
92
+ dataroot.adrosloveni nil
93
+ dataroot.adrfirma nil
94
+ dataroot.adrosoba nil
95
+ dataroot.adrulice nil
96
+ dataroot.adrcp nil
97
+ dataroot.adrco nil
98
+ dataroot.adrobec nil
99
+ dataroot.adrpsc nil
100
+ dataroot.adriso nil
101
+ dataroot.soubory do |soubory|
102
+ soubory.soubor(:mimeType => "", :name => @pdf_file_path.split("/").last) do |soubor|
103
+ soubor.dataSoubor Base64.encode64(File.read(@pdf_file_path))
104
+ end
105
+ end
106
+ end
107
+
108
+ xml_file = Tempfile.new(["DopisOnlineNew_1_1", ".xml"])
109
+ xml_file.write xml.target!
110
+ xml_file.flush
111
+ xml_file.rewind
112
+
113
+ {
114
+ :user => DopisOnlineClient.username,
115
+ :password => DopisOnlineClient.password,
116
+ :soubor => xml_file
117
+ }
118
+ end
45
119
  end
46
- end
120
+ end
@@ -1,5 +1,3 @@
1
- require 'crack'
2
-
3
1
  module DopisOnlineClient
4
2
  class Response
5
3
  attr_accessor :body, :code
@@ -22,22 +20,22 @@ module DopisOnlineClient
22
20
 
23
21
  # Jméno odeslaného souboru
24
22
  def filename
25
- success_result["soubor"]
23
+ success_result["soubory"]["soubor"]["name"]
26
24
  end
27
25
 
28
26
  # Počet stránek
29
27
  def pages_count
30
- success_result["pocetstranek"].to_i
28
+ success_result["pocet_stranek"].to_i
31
29
  end
32
30
 
33
31
  # Kód objednávky
34
32
  def order_code
35
- success_result["kodobjednavky"].to_i
33
+ success_result["kod_objednavky"]
36
34
  end
37
35
 
38
36
  # Podací číslo
39
37
  def tracking_number
40
- success_result["podacicislo"]
38
+ success_result["podaci_cislo"]
41
39
  end
42
40
 
43
41
  # Datum podání
@@ -1,3 +1,3 @@
1
1
  module DopisOnlineClient
2
- VERSION = "0.2.4"
2
+ VERSION = "1.0.1"
3
3
  end
@@ -1,12 +1,22 @@
1
- <?xml version="1.0" encoding="windows-1250"?>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
2
  <zakazka>
3
- <soubor type="string">testing.pdf</soubor>
4
- <pocetstranek type="integer">1</pocetstranek>
5
- <kodobjednavky type="string">20090608050001</kodobjednavky>
6
- <podacicislo type="string"></podacicislo>
7
- <datumpodani type="date">2009-06-08</datumpodani>
8
- <podaciposta type="string">370 20</podaciposta>
9
- <cena mena="CZK" type="decimal">14.05</cena>
10
- <barvatisku type="integer">0</barvatisku>
11
- <typvyplatneho type="integer">67</typvyplatneho>
3
+ <chyby stav="0">
4
+ </chyby>
5
+ <typvyplatneho>195</typvyplatneho>
6
+ <typtisku>0</typtisku>
7
+ <tiskpoukazky>0</tiskpoukazky>
8
+ <kod_objednavky>20130717183959_77667</kod_objednavky>
9
+ <podaci_cislo></podaci_cislo>
10
+ <podaci_posta>370 20</podaci_posta>
11
+ <datum_podani>2013-07-17</datum_podani>
12
+ <cena>11.31 Kč</cena>
13
+ <pocet_listu>1</pocet_listu>
14
+ <pocet_stranek>1</pocet_stranek>
15
+ <xmlsoubor>DopisOnlineNew_1_120130717-84759-1z06ta5.xml</xmlsoubor>
16
+ <soubory>
17
+ <soubor name="1234.pdf">
18
+ <pozice>1</pozice>
19
+ <pocet_stranek>1</pocet_stranek>
20
+ </soubor>
21
+ </soubory>
12
22
  </zakazka>
data/test/test_helper.rb CHANGED
@@ -3,8 +3,10 @@ require 'test/unit'
3
3
  require 'shoulda'
4
4
  require 'turn' unless ENV["TM_FILEPATH"]
5
5
 
6
- require 'dopis_online_client'
7
-
8
6
  require "fakeweb"
9
7
 
8
+ $LOAD_PATH.unshift "lib"
9
+
10
+ require 'dopis_online_client'
11
+
10
12
  FakeWeb.allow_net_connect = false
@@ -23,4 +23,4 @@ module DopisOnlineClient
23
23
  end
24
24
 
25
25
  end
26
- end
26
+ end
@@ -4,20 +4,33 @@ module DopisOnlineClient
4
4
  class RequestTest < Test::Unit::TestCase
5
5
 
6
6
  context "Request#deliver" do
7
-
8
7
  setup do
9
- FakeWeb.register_uri(:post, "https://online3.postservis.cz/cmdedopis/dopisonline.php", :body => File.read(File.join(File.dirname(__FILE__),'../fixtures/success.xml')))
8
+ FakeWeb.register_uri(:post, "https://online3.postservis.cz/dopisonline/donApi.php",
9
+ :body => File.read(File.join(File.dirname(__FILE__), '../fixtures/success.xml')))
10
10
 
11
- DopisOnlineClient.base_uri 'https://online3.postservis.cz/cmdedopis'
12
- DopisOnlineClient.auth('jmeno','heslo')
13
- @response = DopisOnlineClient::Request.new(:pdf_file_path=>File.join(File.dirname(__FILE__),'../fixtures/letter.pdf')).deliver
11
+ DopisOnlineClient.base_uri 'https://online3.postservis.cz/'
12
+ DopisOnlineClient.auth('jmeno', 'heslo')
13
+ @filename = File.join(File.dirname(__FILE__), '../fixtures/letter.pdf')
14
+ @request = DopisOnlineClient::Request.new(@filename)
14
15
  end
15
16
 
16
- should "return DopisOnlineClient::Response" do
17
- assert_equal true, @response.kind_of?(DopisOnlineClient::Response)
17
+ should "set default options for sending" do
18
+ assert_equal 195, @request.options.postage_type
19
+ assert_equal 0, @request.options.coupon_type
20
+ assert_equal 0, @request.options.print_type
21
+ assert_equal 2, @request.options.sender_type
22
+ assert_equal 2, @request.options.recipient_type
23
+ assert_equal :xml, @request.options.format
18
24
  end
19
25
 
20
- end
26
+ should "set pdf_file_path" do
27
+ assert_equal @filename, @request.pdf_file_path
28
+ end
21
29
 
30
+ should "return DopisOnlineClient::Response" do
31
+ assert DopisOnlineClient::Response === @request.deliver
32
+ end
33
+ end
22
34
  end
23
35
  end
36
+
@@ -12,14 +12,14 @@ module DopisOnlineClient
12
12
  assert_equal 0, response.failure_code
13
13
  assert_nil response.failure_message
14
14
 
15
- assert_equal "testing.pdf", response.filename
15
+ assert_equal "1234.pdf", response.filename
16
16
  assert_equal 1, response.pages_count
17
- assert_equal 20090608050001, response.order_code
18
- assert_equal "", response.tracking_number
17
+ assert_equal "20130717183959_77667", response.order_code
18
+ assert_equal nil, response.tracking_number
19
19
  # assert_equal Date.parse("2009-06-08"), response.success_result["datumpodani"]
20
20
  assert_not_nil response.price
21
21
  assert_equal false, response.color
22
- assert_equal 67, response.shipping_method
22
+ assert_equal "195", response.shipping_method
23
23
  end
24
24
 
25
25
  should "parse failure correctly" do
@@ -33,7 +33,7 @@ module DopisOnlineClient
33
33
 
34
34
  def load_response_from_file(filename)
35
35
  body = File.read(File.join(File.dirname(__FILE__),'../fixtures',filename))
36
- parsed_response = Crack::XML.parse(body)
36
+ parsed_response = MultiXml.parse(body)
37
37
  DopisOnlineClient::Response.new(parsed_response, body, 200)
38
38
  end
39
39
 
metadata CHANGED
@@ -1,21 +1,22 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dopis_online_client
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
4
+ hash: 21
5
5
  prerelease:
6
6
  segments:
7
+ - 1
7
8
  - 0
8
- - 2
9
- - 4
10
- version: 0.2.4
9
+ - 1
10
+ version: 1.0.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jiri Kubicek
14
+ - Josef Pospisil
14
15
  autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2012-05-03 00:00:00 Z
19
+ date: 2013-07-18 00:00:00 Z
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: rake
@@ -63,7 +64,7 @@ dependencies:
63
64
  type: :runtime
64
65
  version_requirements: *id003
65
66
  - !ruby/object:Gem::Dependency
66
- name: crack
67
+ name: multi_xml
67
68
  prerelease: false
68
69
  requirement: &id004 !ruby/object:Gem::Requirement
69
70
  none: false
@@ -77,7 +78,7 @@ dependencies:
77
78
  type: :runtime
78
79
  version_requirements: *id004
79
80
  - !ruby/object:Gem::Dependency
80
- name: turn
81
+ name: builder
81
82
  prerelease: false
82
83
  requirement: &id005 !ruby/object:Gem::Requirement
83
84
  none: false
@@ -88,10 +89,10 @@ dependencies:
88
89
  segments:
89
90
  - 0
90
91
  version: "0"
91
- type: :development
92
+ type: :runtime
92
93
  version_requirements: *id005
93
94
  - !ruby/object:Gem::Dependency
94
- name: shoulda
95
+ name: turn
95
96
  prerelease: false
96
97
  requirement: &id006 !ruby/object:Gem::Requirement
97
98
  none: false
@@ -105,7 +106,7 @@ dependencies:
105
106
  type: :development
106
107
  version_requirements: *id006
107
108
  - !ruby/object:Gem::Dependency
108
- name: sdoc
109
+ name: shoulda
109
110
  prerelease: false
110
111
  requirement: &id007 !ruby/object:Gem::Requirement
111
112
  none: false
@@ -119,7 +120,7 @@ dependencies:
119
120
  type: :development
120
121
  version_requirements: *id007
121
122
  - !ruby/object:Gem::Dependency
122
- name: rcov
123
+ name: sdoc
123
124
  prerelease: false
124
125
  requirement: &id008 !ruby/object:Gem::Requirement
125
126
  none: false
@@ -133,7 +134,7 @@ dependencies:
133
134
  type: :development
134
135
  version_requirements: *id008
135
136
  - !ruby/object:Gem::Dependency
136
- name: fakeweb
137
+ name: simplecov
137
138
  prerelease: false
138
139
  requirement: &id009 !ruby/object:Gem::Requirement
139
140
  none: false
@@ -146,21 +147,37 @@ dependencies:
146
147
  version: "0"
147
148
  type: :development
148
149
  version_requirements: *id009
150
+ - !ruby/object:Gem::Dependency
151
+ name: fakeweb
152
+ prerelease: false
153
+ requirement: &id010 !ruby/object:Gem::Requirement
154
+ none: false
155
+ requirements:
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ hash: 3
159
+ segments:
160
+ - 0
161
+ version: "0"
162
+ type: :development
163
+ version_requirements: *id010
149
164
  description: "Klientsk\xC3\xA1 knihovna pro pr\xC3\xA1ci se slu\xC5\xBEbou Dopis Online \xC4\x8Cesk\xC3\xA9 po\xC5\xA1ty"
150
165
  email:
151
166
  - jiri.kubicek@kraxnet.cz
167
+ - josef.pospisil@laststar.eu
152
168
  executables: []
153
169
 
154
170
  extensions: []
155
171
 
156
172
  extra_rdoc_files:
157
- - README.rdoc
173
+ - README.md
158
174
  - LICENSE
159
175
  files:
160
176
  - .gitignore
177
+ - .travis.yml
161
178
  - Gemfile
162
179
  - LICENSE
163
- - README.rdoc
180
+ - README.md
164
181
  - Rakefile
165
182
  - dopis_online_client.gemspec
166
183
  - lib/dopis_online_client.rb
@@ -222,3 +239,4 @@ test_files:
222
239
  - test/unit/request_test.rb
223
240
  - test/unit/response_test.rb
224
241
  - test/unit/status_request_test.rb
242
+ has_rdoc:
data/README.rdoc DELETED
@@ -1,20 +0,0 @@
1
- = dopis_online_client
2
-
3
- DopisOnline je sluzba Ceske posty, s.p., ktera "umoznuje zakaznikovi podani dokumentu v elektronické formě (formát PDF), přičemž dodání je uskutečněno formou klasického vytištěného dopisu."
4
-
5
- Vice informaci na https://online.postservis.cz/Download/DopisOnline/DopisOnline.pdf
6
-
7
- == Usage:
8
-
9
- require 'lib/dopis_online_client'
10
-
11
- DopisOnlineClient.base_uri 'https://online.postservis.cz/cmdedopis'
12
- DopisOnlineClient.auth('jmeno','heslo')
13
-
14
- DopisOnlineClient::Request.send(
15
- :pdf_file_path=>"letter.pdf"
16
- )
17
-
18
- == Copyright
19
-
20
- Copyright (c) 2009 Jiri Kubicek, KRAXNET s.r.o.. See LICENSE for details.