rongcloud-ruby 0.0.1 → 0.1.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1547deb97904a6ec6dbbb21c5d488d860ed93570
4
- data.tar.gz: 73dbe236f3b1a6720a006e9969cd050abcf4b6ff
3
+ metadata.gz: 68db740d5f5f1337ec31ca70f4eafcb103f1a5d8
4
+ data.tar.gz: 85452079be195b958bb2b12da5d4569ea47516ce
5
5
  SHA512:
6
- metadata.gz: fc60f89afd24abafc6dac5909de9ee453d6e85894d2fbdf34ce2b92c7229df600ecf333a0933413b67075f02871ff7b447378fa3a1a4f81c6e6a2527647e26c2
7
- data.tar.gz: 83850e42956f4da1a103c01b6a494244c5336a8f618d2a17abda7239fe116bffa084820fc11b7cd5a1e4c1227914c2abdff7b613a5f5f41a46987871a304d3d7
6
+ metadata.gz: 00d8c8cc2b096fbcd823aa7552c180f2bb0a8193e97e0163f4a4e46c89b27c4f78791245fc5cf42293c00bbf4d0944373a3f69a4649deb9d524b0a221bb19ea3
7
+ data.tar.gz: 3a625e91e33156dd5f07ed1826a866f5f8bf9d0dd5f39486dd02bc186d10a69ebf311e98d30b8ed84c0523f28f4ba642e7552e78b77df244cd79ace9a68fd5a0
data/.gitignore CHANGED
@@ -7,3 +7,4 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+ *.gem
data/README.md CHANGED
@@ -9,7 +9,7 @@ TODO: Delete this and the text above, and describe your gem
9
9
  Add this line to your application's Gemfile:
10
10
 
11
11
  ```ruby
12
- gem 'rongcloud-ruby'
12
+ gem 'rongcloud-ruby', require: 'rongcloud'
13
13
  ```
14
14
 
15
15
  And then execute:
@@ -22,7 +22,7 @@ Or install it yourself as:
22
22
 
23
23
  ## Usage
24
24
 
25
- TODO: Write usage instructions here
25
+ TODO: 服务器端实时消息路由、聊天室服务
26
26
 
27
27
  ## Development
28
28
 
@@ -32,10 +32,67 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
32
32
 
33
33
  ## Contributing
34
34
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/rongcloud-ruby.
35
+ Bug reports and pull requests are welcome on GitHub at https://github.com/hging/rongcloud-ruby.
36
36
 
37
+ ## **接口定义:**
38
+ 获取用户token: ```Rongcloud::Token.where(:userId => [user_id])```
39
+
40
+ 刷新用户信息: ```Rongcloud::User.update(:userId => [user_id], :name => [name], :portraitUri => [avatar_url])```
41
+
42
+ 检查用户在线状态: ```Rongcloud::User.where(:userId => [user_id])```
43
+
44
+ 封禁用户: ```Rongcloud::Ban.create(:userId => [user_id], :minute => [ban_time])```
45
+
46
+ 解除封禁用户: ```Rongcloud::Ban.delete(:userId => [user_id])```
47
+
48
+ 查询封禁名单: ```Rongcloud::Ban.all```
49
+
50
+ 发送单聊信息: ```Rongcloud::Message::Private.create```
51
+
52
+ 发送单聊模板信息: ```Rongcloud::Message::Private.templete_create```
53
+
54
+ 发送系统信息: ```Rongcloud::Message::System.create```
55
+
56
+ 发送系统模板信息: ```Rongcloud::Message::System.templete_create```
57
+
58
+ 发送群组消息: ```Rongcloud::Message::Group.create```
59
+
60
+ 发送讨论组消息: ```Rongcloud::Message::Discussion.create```
61
+
62
+ 发送聊天室消息: ```Rongcloud::Message::Chatroom.create```
63
+
64
+ 发送广播信息: ```Rongcloud::Message::Broadcast.create```
65
+
66
+ 添加用户到黑名单: ```Rongcloud::Blacklist.create(:userId => [user_id], :blackUserId => [blacked_user_id])```
67
+
68
+ 移除用户黑名单: ```Rongcloud::Blacklist.delete(:userId => [user_id], :blackUserId => [blacked_user_id])```
69
+
70
+ 查询某用户的黑名单: ```Rongcloud::Blacklist.where(:userId => [user_id])```
71
+
72
+ 增加敏感词: ```Rongcloud::Wordfilter.create(:word => [word])```
73
+
74
+ 删除敏感词: ```Rongcloud::Wordfilter.delete(:word => [word])```
75
+
76
+ 查询敏感词列表: ```Rongcloud::Wordfilter.all```
77
+
78
+ 同步用户所属群组: ```Rongcloud::Group.sync(:userId => [user_id], :group[id] => [group_name])```
79
+
80
+ 创建群组:```Rongcloud::Group.create(:userId => [user_id], :groupId => [group_id], :groupName => [group_name])```
81
+
82
+ 加入群组:```Rongcloud::Group.join(:userId => [user_id], :groupId => [group_id], :groupName => [group_name])```
83
+
84
+ 退出群组:```Rongcloud::Group.join(:userId => [user_id], :groupId => [group_id])```
85
+
86
+ 解散群组: ```Rongcloud::Group.delete(:userId => [user_id], :groupId => [group_id])```
87
+
88
+ 刷新群组: ```Rongcloud::Group.update(:groupId => [group_id], :groupName => [group_name])```
89
+
90
+ 查询组成员: ```Rongcloud::Group.where(:groupId => [group_id])```
91
+
92
+ 组内封禁用户: ```Rongcloud::Group::Ban.create(:userId => [user_id], :groupId => [group_id], :minute => [ban_time])```
93
+
94
+ 组内解除封禁用户: ```Rongcloud::Group::Ban.delete(:userId => [user_id], :groupId => [group_id])```
37
95
 
38
96
  ## License
39
97
 
40
98
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
41
-
@@ -5,15 +5,29 @@ require "rongcloud/version"
5
5
  require 'unirest'
6
6
 
7
7
  # API operations
8
- require 'rongcloud/api_operations/create'
9
- require 'rongcloud/api_operations/update'
10
- require 'rongcloud/api_operations/delete'
11
- require 'rongcloud/api_operations/list'
12
- require 'rongcloud/api_operations/show'
8
+ require 'rongcloud/api_operations/customer'
13
9
 
14
10
  # Resources
15
11
  require 'rongcloud/base'
16
12
  require 'rongcloud/token'
13
+ require 'rongcloud/user'
14
+ require 'rongcloud/ban'
15
+ require 'rongcloud/blacklist'
16
+ require 'rongcloud/wordfilter'
17
+ require 'rongcloud/history'
18
+
19
+ # Group Resources
20
+ require 'rongcloud/group/group'
21
+ require 'rongcloud/group/ban'
22
+
23
+ # Message Resources
24
+ require 'rongcloud/message/message'
25
+ require 'rongcloud/message/private'
26
+ require 'rongcloud/message/system'
27
+ require 'rongcloud/message/group'
28
+ require 'rongcloud/message/discussion'
29
+ require 'rongcloud/message/chatroom'
30
+ require 'rongcloud/message/broadcast'
17
31
 
18
32
  module Rongcloud
19
33
  class << self
@@ -49,7 +63,7 @@ module Rongcloud
49
63
  end
50
64
 
51
65
  def request(method='get', url=api_host, params={})
52
- Unirest.send(method, api_host + url, headers: generate_http_head, parameters: params)
66
+ Unirest.send(method, api_host + url, headers: generate_http_head, parameters: params).body
53
67
  end
54
68
 
55
69
  # def debug_mode?
@@ -0,0 +1,19 @@
1
+ module Rongcloud
2
+ module APIOperations
3
+ module Customer
4
+ module ClassMethods
5
+ def method_missing(name, *args, &block)
6
+ if @customer_avaliable_name.key?(name)
7
+ response = Rongcloud.request(:post, @customer_avaliable_name[name], args[0])
8
+ else
9
+ super
10
+ end
11
+ end
12
+ end
13
+
14
+ def self.included(base)
15
+ base.extend(ClassMethods)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,11 @@
1
+ module Rongcloud
2
+ class Ban < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/user/block.json',
5
+ :delete => '/user/unblock.json',
6
+ :all => '/user/block/query.json'
7
+ }
8
+
9
+ end
10
+ #code
11
+ end
@@ -1,5 +1,6 @@
1
1
  module Rongcloud
2
2
  class Base
3
+ include Rongcloud::APIOperations::Customer
3
4
 
4
5
  #code
5
6
  end
@@ -0,0 +1,11 @@
1
+ module Rongcloud
2
+ class Blacklist < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/user/blacklist.json',
5
+ :delete => '/user/blacklist/remove.json',
6
+ :where => '/user/blacklist/query.json'
7
+ }
8
+
9
+ end
10
+ #code
11
+ end
@@ -0,0 +1,11 @@
1
+ module Rongcloud
2
+ class Group::Ban < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/group/user/gag/add.json',
5
+ :delete => '/group/user/gag/rollback.json',
6
+ :all => '/group/user/gag/list.json',
7
+ }
8
+
9
+ end
10
+ #code
11
+ end
@@ -0,0 +1,15 @@
1
+ module Rongcloud
2
+ class Group < Base
3
+ @customer_avaliable_name = {
4
+ :sync => '/group/sync.json',
5
+ :create => '/group/create.json',
6
+ :join => '/group/join.json',
7
+ :quit => '/group/quit.json',
8
+ :delete => '/group/dismiss.json',
9
+ :update => '/group/refresh.json',
10
+ :where => '/group/user/query.json'
11
+ }
12
+
13
+ end
14
+ #code
15
+ end
@@ -0,0 +1,10 @@
1
+ module Rongcloud
2
+ class History < Base
3
+ @customer_avaliable_name = {
4
+ :delete => '/message/history/delete.json',
5
+ :where => '/message/history.json'
6
+ }
7
+
8
+ end
9
+ #code
10
+ end
@@ -0,0 +1,7 @@
1
+ module Rongcloud
2
+ class Message::Broadcast < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/message/broadcast.json',
5
+ }
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ module Rongcloud
2
+ class Message::Chatroom < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/message/chatroom/publish.json'
5
+ }
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ module Rongcloud
2
+ class Message::Discussion < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/message/discussion/publish.json'
5
+ }
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ module Rongcloud
2
+ class Message::Group < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/message/group/publish.json'
5
+ }
6
+ end
7
+ end
@@ -0,0 +1,4 @@
1
+ module Rongcloud
2
+ class Message < Base
3
+ end
4
+ end
@@ -0,0 +1,8 @@
1
+ module Rongcloud
2
+ class Message::Private < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/message/private/publish.json',
5
+ :template_create => '/message/private/publish_template.json',
6
+ }
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ module Rongcloud
2
+ class Message::System < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/message/system/publish.json',
5
+ :template_create => '/message/system/publish_template.json',
6
+ }
7
+ end
8
+ end
@@ -1,10 +1,8 @@
1
1
  module Rongcloud
2
2
  class Token < Base
3
- include Rongcloud::APIOperations::Show
4
-
5
- def self.show_url
6
- '/user/getToken.json'
7
- end
3
+ @customer_avaliable_name = {
4
+ :where => '/user/getToken.json'
5
+ }
8
6
 
9
7
  end
10
8
  #code
@@ -1,16 +1,9 @@
1
1
  module Rongcloud
2
2
  class User < Base
3
- include Rongcloud::APIOperations::Update
4
- include Rongcloud::APIOperations::Show
5
-
6
- def self.update_url
7
- '/user/refresh.json'
8
- end
9
-
10
- def self.show_url
11
- '/user/checkOnline.json'
12
- #code
13
- end
3
+ @customer_avaliable_name = {
4
+ :update => '/user/refresh.json',
5
+ :where => '/user/checkOnline.json'
6
+ }
14
7
 
15
8
  end
16
9
  #code
@@ -1,3 +1,3 @@
1
1
  module Rongcloud
2
- VERSION = "0.0.1"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -0,0 +1,11 @@
1
+ module Rongcloud
2
+ class Wordfilter < Base
3
+ @customer_avaliable_name = {
4
+ :create => '/wordfilter/add.json',
5
+ :delete => '/wordfilter/delete.json',
6
+ :all => '/wordfilter/list.json'
7
+ }
8
+
9
+ end
10
+ #code
11
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rongcloud-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hging
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-07-25 00:00:00.000000000 Z
11
+ date: 2016-07-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -83,15 +83,24 @@ files:
83
83
  - bin/console
84
84
  - bin/setup
85
85
  - lib/rongcloud.rb
86
- - lib/rongcloud/api_operations/create.rb
87
- - lib/rongcloud/api_operations/delete.rb
88
- - lib/rongcloud/api_operations/list.rb
89
- - lib/rongcloud/api_operations/show.rb
90
- - lib/rongcloud/api_operations/update.rb
86
+ - lib/rongcloud/api_operations/customer.rb
87
+ - lib/rongcloud/ban.rb
91
88
  - lib/rongcloud/base.rb
89
+ - lib/rongcloud/blacklist.rb
90
+ - lib/rongcloud/group/ban.rb
91
+ - lib/rongcloud/group/group.rb
92
+ - lib/rongcloud/history.rb
93
+ - lib/rongcloud/message/broadcast.rb
94
+ - lib/rongcloud/message/chatroom.rb
95
+ - lib/rongcloud/message/discussion.rb
96
+ - lib/rongcloud/message/group.rb
97
+ - lib/rongcloud/message/message.rb
98
+ - lib/rongcloud/message/private.rb
99
+ - lib/rongcloud/message/system.rb
92
100
  - lib/rongcloud/token.rb
93
101
  - lib/rongcloud/user.rb
94
102
  - lib/rongcloud/version.rb
103
+ - lib/rongcloud/wordfilter.rb
95
104
  - rongcloud-ruby.gemspec
96
105
  homepage: ''
97
106
  licenses:
@@ -1,15 +0,0 @@
1
- module Rongcloud
2
- module APIOperations
3
- module Create
4
- module ClassMethods
5
- def create(params={})
6
- response = Rongcloud.request(:post, self.create_url, params)
7
- end
8
- end
9
-
10
- def self.included(base)
11
- base.extend(ClassMethods)
12
- end
13
- end
14
- end
15
- end
@@ -1,15 +0,0 @@
1
- module Rongcloud
2
- module APIOperations
3
- module Delete
4
- module ClassMethods
5
- def delete(params={})
6
- response = Rongcloud.request(:post, self.delete_url, params)
7
- end
8
- end
9
-
10
- def self.included(base)
11
- base.extend(ClassMethods)
12
- end
13
- end
14
- end
15
- end
@@ -1,15 +0,0 @@
1
- module Rongcloud
2
- module APIOperations
3
- module List
4
- module ClassMethods
5
- def all(params={})
6
- response = Rongcloud.request(:post, self.list_url, params)
7
- end
8
- end
9
-
10
- def self.included(base)
11
- base.extend(ClassMethods)
12
- end
13
- end
14
- end
15
- end
@@ -1,15 +0,0 @@
1
- module Rongcloud
2
- module APIOperations
3
- module Show
4
- module ClassMethods
5
- def where(params={})
6
- response = Rongcloud.request(:post, self.show_url, params)
7
- end
8
- end
9
-
10
- def self.included(base)
11
- base.extend(ClassMethods)
12
- end
13
- end
14
- end
15
- end
@@ -1,15 +0,0 @@
1
- module Rongcloud
2
- module APIOperations
3
- module Update
4
- module ClassMethods
5
- def update(params={})
6
- response = Rongcloud.request(:put, self.list_url, params)
7
- end
8
- end
9
-
10
- def self.included(base)
11
- base.extend(ClassMethods)
12
- end
13
- end
14
- end
15
- end