salesking / sk_sdk

SalesKing SDK for creating apps and using the API
https://www.salesking.eu
MIT License
8 stars 2 forks source link

= SalesKing SDK

Automate your workflow's by integrating and connecting your business with SalesKing. This Ruby Software-Development-Kit provides solid and handy tools for building SalesKing App's(using oAuth2) and API clients.

== Install

gem install sk_sdk

Dependencies (gem's):

== Classes

All classes must be explicitly required so each can be used on their own.

require 'sk_sdk/signed_request' require 'sk_sdk/oauth' require 'sk_sdk/base' require 'sk_sdk/sync'

=== API client

Uses ActiveResource to CRUD SalesKing object's {see usage in README}[https://github.com/salesking/sk_sdk/blob/master/lib/sk_sdk/]

=== {oAuth}[https://github.com/salesking/sk_sdk/blob/master/lib/sk_sdk/oauth.rb]

Get an oAuth2 access token and create oAuth related URL's. There also is an {omniAuth strategy}[https://github.com/salesking/sk_sdk/blob/master/lib/sk_sdk/omni_auth].

=== {SignedRequest}[https://github.com/salesking/sk_sdk/blob/master/lib/sk_sdk/signed_request.rb]

De/encoding of signed_request parameter on canvas pages and PubSub/Webhook callbacks.

=== {Sync}[https://github.com/salesking/sk_sdk/blob/master/lib/sk_sdk/sync.rb]

Map & Synchronize fields of a local with an remote object. Tackles the problem of normalizing objects to match internal data structures. Synchronization is done by a field-mapping and also sports transition methods for each way.

== Usage

Read specs: https://github.com/salesking/sk_sdk/tree/master/spec/sk_sdk

== Tests

Before you run the tests install required gems via bundler. We are providing several Gemfiles because of different patches for active_resource v2 vs v3. This definitly sucks, but as long as we stay with ARes we need to ensure it is working with every version.

Before running the specs, add your SalesKing credentials to /spec/settings.yml cp spec/settings.yml.default spec/settings.yml

test with most recent ARes version

bundle install rake spec

test with ActiveResource 3

BUNDLE_GEMFILE=ci/Gemfile_ar3 bundle install BUNDLE_GEMFILE=ci/Gemfile_ar3 bundle exec rake spec

test with ActiveResource 5

BUNDLE_GEMFILE=ci/Gemfile_ar5 bundle install BUNDLE_GEMFILE=ci/Gemfile_ar5 bundle exec rake spec

Copyright (c) 2011-2022 Georg Leciejewski, released under the MIT license