Project

lce

0.0
No commit activity in last 3 years
No release in over 3 years
A Ruby library that provides an interface to the LCE web services.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.5
>= 0
~> 3.0
~> 1.18.0

Runtime

 Project Readme

Lce

A Ruby library that provides an interface to the LCE web services.

Installation

This library is packaged as a gem. So you can add this line to your application's Gemfile:

gem 'lce'

And then execute:

$ bundle

Or install it yourself as:

$ gem install lce

Configuration

You can configure this gem by using a configuration block :

Lce.configure do |config|
  config.environment = :staging
  config.login = 'login'
  config.password = 'password'
end

If you are using the gem in a Rails application, you can store this configuation with oher initializers in :

RAILS_ROOT/config/initializers/lce.rb

Here are all available configuration options with their default values :

Lce.configure do |config|
  # Switch to :production when you are ready to go live
  config.environment = :staging 

  # No default for authentication attributes. You should have received that by email if not ask us at support@lce.io
  config.login = 
  config.password =

  # You can set it to Rails.logger if you are using a rails app.
  config.logger = Logger.new(STDOUT)

  # You can set your own application's name and version.
  config.application = 'ruby-lce' 
  config.version = '0.0.1'
end

Usage

Once configured, you can start making request to the lce webservices. The full documentation for all requests and attributes is available at https://www.lce.io/docs

Requesting a quote

quote_params = {
  shipper: {city: "Toulouse", postal_code: "31000", country:"FR"},
  recipient: {city: "Nice", postal_code: "06000", country: "FR", is_a_company: false},
  parcels: [
    {length: 25,height: 25, width: 25, weight: 3}
  ]
}
quote = Lce::Quote.request(quote_params)

Placing an order

order_params = {
  shipper: {name: "Firstname Lastname", street: "999, street name", phone: "+33699999999", email: "support@lce.io"},
  recipient: {name: "Firstname Lastname", street: "111, other street", phone: "+33600000", email: "support@lce.io"},
  parcels: [{description: 'Gift'}]
}

# First, we select an offer we want to order (for this example, we are using the first one)
offer = quote.offers.first
order = offer.place_order(order_params)

Retrieving the labels

# We can retrieve the labels
labels = order.labels
# and write them to our drive
File.open("order-#{order.id}.pdf", "wb") do |f|
  f.write(labels)
end  

Getting the tracking informations

# And then, we can get the tracking events by parcels
order.tracking

Contributing

  1. Fork it ( http://github.com/lce/ruby-lce/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request