eurus-weibo-commercial 0.1.1 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 285ed49393a2f3a0d674b17cf457064fcf4b956d
4
- data.tar.gz: af368355926b6b35819ed67e05a56910d402d5cf
3
+ metadata.gz: aa4a17d6737b586012047a8af9915184ef3defb8
4
+ data.tar.gz: caa5408b387b9e0996a7574a94715dbe66a92c29
5
5
  SHA512:
6
- metadata.gz: 7ca065c897e1fec9f4333e2ac712a429f1a2ca4387b057c210258113ab674bc8f1049060cdfdc51a3b3fddd9952cd0d7af7d9dd732d96a8ad06bbe1b3be03489
7
- data.tar.gz: 3f391ef86a8125e08806972ed35a920b3a3a505335f5d88eae7ce68b7b119012e2bf6bfa09e703500638d30632752ce71a860e2ab42b56d4acd336d033cd7fcd
6
+ metadata.gz: 5958b4ffe599dbe344933837d07eca003b4d89b6bac4aeff0149ae7e3b804668cfadc62be3cc145e2aff90c5d5dd2be1114581c0a0f1525859d6735077513f4b
7
+ data.tar.gz: 09001f0690115590c10b046fdd9793396693d5f21814133abaeeb4947b58c72aaf133e7da64430f0cc6a40abe509c8ed57fdc8a72370b495e7aad0a30a0bdffc
data/README.md CHANGED
@@ -50,8 +50,9 @@ update_subscribe "add_uids", "eurusit"
50
50
  # delete uids (support user id or user screen name)
51
51
  update_subscribe "del_uids", "eurusit"
52
52
  ```
53
+
53
54
  Notice!
54
- You can only update no more than 20 keywords, and no more than 50 uids.
55
+ You can only update no more than 20 keywords, and no more than 50 uids. If you pass with no arguments, this will simply return the infomation of the subscribe.
55
56
 
56
57
  ## Development && Contributing
57
58
 
data/lib/eurus/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Eurus
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.1"
3
3
  end
@@ -2,6 +2,7 @@ require 'awesome_print'
2
2
  require "open-uri"
3
3
  require 'net/http'
4
4
  require 'json'
5
+ require 'digest'
5
6
  module Eurus
6
7
  # Your code goes here...
7
8
  class Weibo
@@ -31,4 +32,58 @@ module Eurus
31
32
  end
32
33
  end
33
34
  end
35
+
36
+ class WeiboRedEnvelope
37
+ ACTION = ["add","query","update"]
38
+ def initialize(firm_id="", key="")
39
+ @firm_id = firm_id
40
+ @key = key
41
+ end
42
+ # params = {
43
+ # title: "test-tpl",
44
+ # firm_id: "you firm id from weibo",
45
+ # show_id: "you id you wanna display",
46
+ # share_info: "hello world",
47
+ # share_url: "http://eurus.cn"
48
+ # }
49
+ def red_envelope_template(opt="add",params)
50
+ # opt includes add query update
51
+ if WeiboRedEnvelope::ACTION.include? opt
52
+ uri = URI "http://hb.e.weibo.com/v2/bonus/c/set/#{opt}"
53
+ sign = self.class.md5_with_partner_key(params.merge(firm_id: @firm_id))
54
+ req = Net::HTTP::Post.new(uri)
55
+ req.set_form_data(params.merge(sign: sign,sign_type: 'md5'))
56
+ res = Net::HTTP.start(uri.hostname, uri.port) do |http|
57
+ http.request(req)
58
+ end
59
+ return JSON.params res.body
60
+ else
61
+ return "Invalid Operation Type"
62
+ end
63
+ end
64
+
65
+ # params = {
66
+ # out_order_id: "",
67
+ # tpl_id: "",
68
+ # amount: "",
69
+ # uid: ""
70
+ # }
71
+ def send_red_envelope(params)
72
+ uri = URI "http://hb.e.weibo.com/v2/bonus/c/create"
73
+ sign = self.class.md5_with_partner_key(params.merge(firm_id: @firm_id))
74
+ req = Net::HTTP::Post.new(uri)
75
+ req.set_form_data(params.merge(sign: sign,sign_type: 'md5'))
76
+
77
+ res = Net::HTTP.start(uri.hostname, uri.port) do |http|
78
+ http.request(req)
79
+ end
80
+ return JSON.params res.body
81
+ end
82
+
83
+ def self.md5_with_partner_key(params)
84
+ str = params.sort.map { |item| item.join('=') }.join('&')
85
+ str << "37vpp0chxhtev4uphyqx"
86
+ Digest::MD5.hexdigest(str)
87
+ end
88
+ end
34
89
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eurus-weibo-commercial
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - banana
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-10-05 00:00:00.000000000 Z
11
+ date: 2016-04-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -91,7 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
91
  version: '0'
92
92
  requirements: []
93
93
  rubyforge_project:
94
- rubygems_version: 2.4.5
94
+ rubygems_version: 2.6.2
95
95
  signing_key:
96
96
  specification_version: 4
97
97
  summary: weibo commercial api encapsule