fedex 2.2.1 → 2.2.2

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/Readme.md CHANGED
@@ -1,11 +1,13 @@
1
1
  # Fedex Rate Web Service
2
2
 
3
+
3
4
  For more information visit [Fedex Web Services for Shipping](https://www.fedex.com/wpor/web/jsp/drclinks.jsp?links=wss/index.html).
4
5
 
5
6
  This version uses the Non-SOAP Web Services so there is no need to download the
6
7
  Fedex WSDL files, note however that you will need to apply for development/production credentials.
7
8
 
8
- Note: This is work in progress make sure to test your results.
9
+ Note: Please make sure to test your results.
10
+
9
11
 
10
12
  # Installation:
11
13
 
@@ -115,6 +117,16 @@ Fedex provides multiple total values; `total_net_charge` is the final amount you
115
117
  @total_net_freight="32.1",
116
118
  @rate_zone="51">
117
119
  ```
120
+ ### ** Get a Transit time **
121
+ ```ruby
122
+ ship = fedex.ship(:shipper=>shipper,
123
+ :recipient => recipient,
124
+ :packages => packages,
125
+ :service_type => "FEDEX_GROUND",
126
+ :shipping_details => shipping_details)
127
+ puts ship[:completed_shipment_detail][:operational_detail] [:transit_time]
128
+ ```
129
+ Above code will give you the transit time.
118
130
 
119
131
  ### ** Generate a shipping label (PDF) **
120
132
 
@@ -227,7 +239,7 @@ Fedex::Shipment::DROP_OFF_TYPES
227
239
  - [parndt](https://github.com/parndt) (Philip Arndt)
228
240
  - [mmell](https://github.com/mmell) (Michael Mell)
229
241
  - [jordanbyron](https://github.com/jordanbyron) (Jordan Byron)
230
- - [GermanC4](https://github.com/GermanC4) (German Garcia)
242
+ - [geermc4](https://github.com/geermc4) (German Garcia)
231
243
  - [janders223] (https://github.com/janders223) (Jim Anders)
232
244
  - [jlambert121] (https://github.com/jlambert121) (Justin Lambert)
233
245
 
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
14
14
 
15
15
  s.rubyforge_project = "fedex"
16
16
 
17
- s.add_dependency 'httparty', '~> 0.8.0'
17
+ s.add_dependency 'httparty', '~> 0.9.0'
18
18
  s.add_dependency 'nokogiri', '~> 1.5.0'
19
19
 
20
20
  s.add_development_dependency "rspec", '~> 2.9.0'
@@ -23,7 +23,7 @@ module Fedex
23
23
  error_message = if response[:address_validation_reply]
24
24
  [response[:address_validation_reply][:notifications]].flatten.first[:message]
25
25
  else
26
- api_response["Fault"]["detail"]["fault"]["reason"]
26
+ "#{api_response["Fault"]["detail"]["fault"]["reason"]}\n#{api_response["Fault"]["detail"]["fault"]["details"]["ValidationFailureDetail"]["message"]}"
27
27
  end rescue $1
28
28
  raise RateError, error_message
29
29
  end
@@ -89,4 +89,4 @@ module Fedex
89
89
 
90
90
  end
91
91
  end
92
- end
92
+ end
@@ -15,7 +15,7 @@ module Fedex
15
15
  error_message = if response[:rate_reply]
16
16
  [response[:rate_reply][:notifications]].flatten.first[:message]
17
17
  else
18
- api_response["Fault"]["detail"]["fault"]["reason"]
18
+ "#{api_response["Fault"]["detail"]["fault"]["reason"]}\n#{api_response["Fault"]["detail"]["fault"]["details"]["ValidationFailureDetail"]["message"]}"
19
19
  end rescue $1
20
20
  raise RateError, error_message
21
21
  end
@@ -63,4 +63,4 @@ module Fedex
63
63
 
64
64
  end
65
65
  end
66
- end
66
+ end
@@ -70,7 +70,7 @@ module Fedex
70
70
  error_message = if response[:process_shipment_reply]
71
71
  [response[:process_shipment_reply][:notifications]].flatten.first[:message]
72
72
  else
73
- api_response["Fault"]["detail"]["fault"]["reason"]
73
+ "#{api_response["Fault"]["detail"]["fault"]["reason"]}\n#{api_response["Fault"]["detail"]["fault"]["details"]["ValidationFailureDetail"]["message"]}"
74
74
  end rescue $1
75
75
  raise RateError, error_message
76
76
  end
@@ -15,7 +15,7 @@ module Fedex
15
15
  @credentials = credentials
16
16
 
17
17
  # Optional
18
- @include_detailed_scans = options[:include_detailed_scans]
18
+ @include_detailed_scans = options[:include_detailed_scans] || true
19
19
  @uuid = options[:uuid]
20
20
  @paging_token = options[:paging_token]
21
21
 
@@ -25,6 +25,7 @@ module Fedex
25
25
  end
26
26
 
27
27
  def process_request
28
+ puts build_xml
28
29
  api_response = self.class.post(api_url, :body => build_xml)
29
30
  puts api_response if @debug == true
30
31
  response = parse_response(api_response)
@@ -37,7 +38,7 @@ module Fedex
37
38
  error_message = if response[:track_reply]
38
39
  response[:track_reply][:notifications][:message]
39
40
  else
40
- api_response["Fault"]["detail"]["fault"]["reason"]
41
+ "#{api_response["Fault"]["detail"]["fault"]["reason"]}\n#{api_response["Fault"]["detail"]["fault"]["details"]["ValidationFailureDetail"]["message"]}"
41
42
  end rescue $1
42
43
  raise RateError, error_message
43
44
  end
@@ -86,4 +87,4 @@ module Fedex
86
87
 
87
88
  end
88
89
  end
89
- end
90
+ end
@@ -38,7 +38,9 @@ module Fedex
38
38
  @signature_name = details[:delivery_signature_name]
39
39
  @service_type = details[:service_type]
40
40
  @status = details[:status_description]
41
- @delivery_at = Time.parse(details[:actual_delivery_timestamp])
41
+ if details.has_key?(:actual_delivery_timestamp)
42
+ @delivery_at = Time.parse(details[:actual_delivery_timestamp])
43
+ end
42
44
 
43
45
  @events = details[:events].map do |event_details|
44
46
  Event.new(event_details)
@@ -1,3 +1,3 @@
1
1
  module Fedex
2
- VERSION = "2.2.1"
2
+ VERSION = "2.2.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fedex
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
4
+ version: 2.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,22 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-24 00:00:00.000000000 Z
12
+ date: 2012-12-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
- requirement: &70200674635740 !ruby/object:Gem::Requirement
16
+ requirement: &70199311767300 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: 0.8.0
21
+ version: 0.9.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70200674635740
24
+ version_requirements: *70199311767300
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: nokogiri
27
- requirement: &70200674635240 !ruby/object:Gem::Requirement
27
+ requirement: &70199311766780 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.5.0
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70200674635240
35
+ version_requirements: *70199311766780
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rspec
38
- requirement: &70200674634760 !ruby/object:Gem::Requirement
38
+ requirement: &70199311766300 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 2.9.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70200674634760
46
+ version_requirements: *70199311766300
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: vcr
49
- requirement: &70200674634280 !ruby/object:Gem::Requirement
49
+ requirement: &70199311765820 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.0.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70200674634280
57
+ version_requirements: *70199311765820
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: fakeweb
60
- requirement: &70200674633880 !ruby/object:Gem::Requirement
60
+ requirement: &70199311765440 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70200674633880
68
+ version_requirements: *70199311765440
69
69
  description: Provides an interface to Fedex Web Services(version 10) - shipping rates,
70
70
  generate labels and address validation
71
71
  email: