infusion 0.0.1 → 0.0.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/infusion.gemspec CHANGED
@@ -1,4 +1,4 @@
1
- # coding: utf-8
1
+ # -*- encoding: utf-8 -*-
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'infusion/version'
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.summary = %q{Methods includes add, update contact to IS and campaign setup}
13
13
  spec.homepage = ""
14
14
  spec.license = "MIT"
15
-
15
+ spec.rubyforge_project = "infusion"
16
16
  spec.files = `git ls-files`.split($/)
17
17
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
data/infusion.gemspec~ ADDED
@@ -0,0 +1,23 @@
1
+ # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'infusion/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "infusion"
8
+ spec.version = Infusion::VERSION
9
+ spec.authors = ["Jagdish.Barabari"]
10
+ spec.email = ["jagdish.barabari@example.com"]
11
+ spec.description = %q{A custom Ruby wrapper for the Infusionsoft API }
12
+ spec.summary = %q{Methods includes add, update contact to IS and campaign setup}
13
+ spec.homepage = ""
14
+ spec.license = "MIT"
15
+ spec.rubyforge_project = "infusion"
16
+ spec.files = `git ls-files`.split($/)
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
20
+
21
+ spec.add_development_dependency "bundler", "~> 1.3"
22
+ spec.add_development_dependency "rake"
23
+ end
data/lib/infusion.rb CHANGED
@@ -5,7 +5,7 @@ require 'yaml'
5
5
 
6
6
 
7
7
  module Infusion
8
- config = YAML.load_file("config.yaml")
8
+ config = YAML.load_file("#{RAILS_ROOT}/config/config.yml")
9
9
  @key = config["config"]["key"]
10
10
  server = config["config"]["server"]
11
11
  @server = XMLRPC::Client.new2(server)
@@ -114,4 +114,8 @@ module Infusion
114
114
  puts "ensure! #{attempts}"
115
115
  end
116
116
  end
117
+
118
+
119
+
120
+
117
121
  end
data/lib/infusion.rb~ ADDED
@@ -0,0 +1,122 @@
1
+ require "infusion/version"
2
+ require 'xmlrpc/client'
3
+ require 'pp'
4
+ require 'yaml'
5
+
6
+
7
+ module Infusion
8
+ config = YAML.load_file("#{RAILS_ROOT}/config/config.yml")
9
+ @key = config["config"]["key"]
10
+ server = config["config"]["server"]
11
+ @server = XMLRPC::Client.new2(server)
12
+ #method for get the data from the table
13
+
14
+ def self.data_load(table, id, selected_fields)
15
+ attempts = 0
16
+ begin
17
+ main_product = @server.call("DataService.load", @key,table, id, selected_fields)
18
+ rescue Exception
19
+ attempts += 1
20
+ retry unless attempts > 1000
21
+ exit -1
22
+ ensure
23
+ puts "ensure! #{attempts}"
24
+ end
25
+ end
26
+
27
+ # method to opt in email
28
+
29
+ def self.optin(email, message)
30
+ @server.call("APIEmailService.optIn", @key,email,message)
31
+ end
32
+
33
+ # method for find email from IS
34
+ def self.findByEmail(email, contact_info)
35
+ attempts = 0
36
+ begin
37
+ @server.call("ContactService.findByEmail", @key, email,contact_info)
38
+ rescue Exception
39
+ attempts += 1
40
+ retry unless attempts > 1000
41
+ exit -1
42
+ ensure
43
+ puts "ensure! #{attempts}"
44
+ end
45
+ end
46
+
47
+ # method for contact add
48
+ def self.add_contact(contact)
49
+ attempts = 0
50
+ begin
51
+ server.call("ContactService.add", @key, contact)
52
+ rescue Exception
53
+ attempts += 1
54
+ retry unless attempts > 1000
55
+ exit -1
56
+ ensure
57
+ puts "ensure! #{attempts}"
58
+ end
59
+ end
60
+
61
+ # method for update the contact_info
62
+ def self.update(user_id, contact)
63
+ attempts = 0
64
+ begin
65
+ @server.call("ContactService.update", @key,user_id,contact)
66
+ rescue Exception
67
+ attempts += 1
68
+ retry unless attempts > 1000
69
+ exit -1
70
+ ensure
71
+ puts "ensure! #{attempts}"
72
+ end
73
+ end
74
+
75
+ # method for merge contacts
76
+ def self.merge(user_id, merge_id)
77
+ attempts = 0
78
+ begin
79
+ @server.call("ContactService.merge", @key,user_id, merge_id)
80
+ rescue Exception
81
+ attempts += 1
82
+ retry unless attempts > 1000
83
+ exit -1
84
+ ensure
85
+ puts "ensure! #{attempts}"
86
+ end
87
+ end
88
+
89
+ # method for add contact to campaign
90
+ def self.campaign(results, campaign_id)
91
+ attempts = 0
92
+ begin
93
+ @server.call("ContactService.addToGroup",@key,results,campaign_id)
94
+ rescue Exception
95
+ attempts += 1
96
+ retry unless attempts > 1000
97
+ exit -1
98
+ ensure
99
+ puts "ensure! #{attempts}"
100
+ end
101
+
102
+ end
103
+
104
+ # find by query this method is for to check subscription
105
+ def self.query(query, fields)
106
+ attempts = 0
107
+ begin
108
+ @server.call("DataService.query",@key,"RecurringOrder",10,0,query,fields)
109
+ rescue Exception
110
+ attempts += 1
111
+ retry unless attempts > 1000
112
+ exit -1
113
+ ensure
114
+ puts "ensure! #{attempts}"
115
+ end
116
+ end
117
+ def method_missing(method, *args, &block)
118
+ return super unless new.respond_to?(method)
119
+ new.send(method, *args, &block)
120
+ end
121
+
122
+ end
@@ -1,3 +1,3 @@
1
1
  module Infusion
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: infusion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -56,7 +56,9 @@ files:
56
56
  - README.md
57
57
  - Rakefile
58
58
  - infusion.gemspec
59
+ - infusion.gemspec~
59
60
  - lib/infusion.rb
61
+ - lib/infusion.rb~
60
62
  - lib/infusion/version.rb
61
63
  homepage: ''
62
64
  licenses:
@@ -78,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
80
  - !ruby/object:Gem::Version
79
81
  version: '0'
80
82
  requirements: []
81
- rubyforge_project:
83
+ rubyforge_project: infusion
82
84
  rubygems_version: 1.8.25
83
85
  signing_key:
84
86
  specification_version: 3