oksky-chat-api 0.2.2 → 0.2.7

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
- SHA1:
3
- metadata.gz: 9a27e6ee45325cf4699943e4d9dd6ce6f3fe9dc8
4
- data.tar.gz: 8be46014b619c62e86f7d854a423f7788dc9ecea
2
+ SHA256:
3
+ metadata.gz: ad9e11a007058c413d64041781fb938590f26e8ff4e802105891e3eca07b2b3c
4
+ data.tar.gz: 4ed1d422f93ff14b5ea76b6681b8998aa4d267f35938958fb444fedbfd9e4b09
5
5
  SHA512:
6
- metadata.gz: 1a806741f08278683e15dc3d4f80cb6f5d7851f198efa2d5804d0e58836d48f1319ab83198e9d0ed1717d5de41cd94d4da3d7bca79fedd65217ebc5217dc63e4
7
- data.tar.gz: 27cde633b8ec45409c476537fa4c22a9a0cf6f6386b9fe59804a0a5a93675d5703b3a2329cb156135e91b67d9884bcdfc79fc9014a1692c533840dab3b6d78fc
6
+ metadata.gz: a0d3c380ea69475a6d9e90c4655abb93e01d01b55c081141e509ece3be8175c488e1f66d7efcad84c95a64e93d9b85d3750f223baf03a3c7dc076a62314edb2f
7
+ data.tar.gz: 8ae9f687f67b9006e6a0046a3287867eb7c7f168407aff5dbdb3e53f42abcd9a77e8ab3677b3c25878fa560cf685febd50453c947ebf09bc5133d3eae9fca0a6
@@ -1,7 +1,7 @@
1
1
  module Oksky
2
2
  module Chat
3
3
  module API
4
- VERSION = "0.2.2"
4
+ VERSION = "0.2.7"
5
5
  end
6
6
  end
7
7
  end
@@ -32,6 +32,16 @@ module Oksky
32
32
  http(uri).post(uri.request_uri, payload, header)
33
33
  end
34
34
 
35
+ def put(url, payload, header = {})
36
+ uri = URI(url)
37
+ http(uri).put(uri.request_uri, payload, header)
38
+ end
39
+
40
+ def patch(url, payload, header = {})
41
+ uri = URI(url)
42
+ http(uri).patch(uri.request_uri, payload, header)
43
+ end
44
+
35
45
  end
36
46
  end
37
47
  end
@@ -3,4 +3,16 @@ require 'oksky/chat/object/messages_resource'
3
3
  require 'oksky/chat/object/rooms_resource'
4
4
  require 'oksky/chat/object/supports_resource'
5
5
  require 'oksky/chat/object/unsupport_resource'
6
- require 'oksky/chat/object/provider_rooms_resource'
6
+ require 'oksky/chat/object/provider_rooms_resource'
7
+ require 'oksky/chat/object/clients_resource'
8
+ require 'oksky/chat/object/users_resource'
9
+ require 'oksky/chat/object/administrators_resource'
10
+ require 'oksky/chat/object/operators_resource'
11
+ require 'oksky/chat/object/supervisors_resource'
12
+ require 'oksky/chat/object/customers_resource'
13
+ require 'oksky/chat/object/master_keywords_resource'
14
+ require 'oksky/chat/object/user_infos_resource'
15
+ require 'oksky/chat/object/tracker_entries_resource'
16
+ require 'oksky/chat/object/support_draft_messages_resource'
17
+ require 'oksky/chat/object/suggestions_resource'
18
+ require 'oksky/chat/object/user_events_resource'
@@ -0,0 +1,43 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class AdministratorsResource < UsersResource
5
+
6
+ # @return [Array]
7
+ def present_rooms
8
+ relationships.dig("present_rooms", "data")
9
+ end
10
+
11
+ # @return [Array]
12
+ def support_rooms
13
+ relationships.dig("support_rooms", "data")
14
+ end
15
+
16
+ # @return [Array]
17
+ def members
18
+ relationships.dig("members", "data")
19
+ end
20
+
21
+ # @return [Array]
22
+ def supports
23
+ relationships.dig("supports", "data")
24
+ end
25
+
26
+ # @return [Array]
27
+ def rooms
28
+ relationships.dig("rooms", "data")
29
+ end
30
+
31
+ # @return [Array]
32
+ def starred_rooms
33
+ relationships.dig("starred_rooms", "data")
34
+ end
35
+
36
+ # @return [Array]
37
+ def starred_customers
38
+ relationships.dig("starred_customers", "data")
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,70 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class ClientsResource < Base
5
+
6
+ def injectable_code
7
+ content_value("injectable_code")
8
+ end
9
+
10
+ def settings
11
+ content_value("settings")
12
+ end
13
+
14
+ def title
15
+ content_value("title")
16
+ end
17
+
18
+ def code
19
+ content_value("code")
20
+ end
21
+
22
+ def default_embedded_css
23
+ content_value("default_embedded_css")
24
+ end
25
+
26
+ def default_guest_css
27
+ content_value("default_guest_css")
28
+ end
29
+
30
+ def default_embedded_html
31
+ content_value("default_embedded_html")
32
+ end
33
+
34
+ def client
35
+ if @src.has_key?('attributes')
36
+ @src['attributes']
37
+ else
38
+ @src
39
+ end
40
+ end
41
+
42
+ def relationships
43
+ if exist_relationships?
44
+ return @src['relationships']
45
+ else
46
+ {}
47
+ end
48
+ end
49
+
50
+ private
51
+ def exist_attributes?
52
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
53
+ end
54
+
55
+ def exist_relationships?
56
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
57
+ end
58
+
59
+ def content_value(key)
60
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
61
+ return @src['attributes']["#{key}"]
62
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
63
+ return @src["#{key}"]
64
+ end
65
+ end
66
+
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,63 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class CustomersResource < UsersResource
5
+
6
+ # @return [Array]
7
+ def present_rooms
8
+ relationships.dig("present_rooms", "data")
9
+ end
10
+
11
+ # @return [Array]
12
+ def support_rooms
13
+ relationships.dig("support_rooms", "data")
14
+ end
15
+
16
+ # @return [Array]
17
+ def members
18
+ relationships.dig("members", "data")
19
+ end
20
+
21
+ # @return [Array]
22
+ def supports
23
+ relationships.dig("supports", "data")
24
+ end
25
+
26
+ # @return [Array]
27
+ def rooms
28
+ relationships.dig("rooms", "data")
29
+ end
30
+
31
+ # @return [Array]
32
+ def starred_rooms
33
+ relationships.dig("starred_rooms", "data")
34
+ end
35
+
36
+ # @return [Array]
37
+ def starred_customers
38
+ relationships.dig("starred_customers", "data")
39
+ end
40
+
41
+ # @return [Array]
42
+ def user_supported
43
+ relationships.dig("user_supported", "data")
44
+ end
45
+
46
+ # @return [Array]
47
+ def memos
48
+ relationships.dig("memos", "data")
49
+ end
50
+
51
+ # @return [Array]
52
+ def user_events
53
+ relationships.dig("user_events", "data")
54
+ end
55
+
56
+ # @return [Array]
57
+ def user_infos
58
+ relationships.dig("user_infos", "data")
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,59 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class MasterKeywordsResource < Base
5
+
6
+ def master_keyword
7
+ if @src.has_key?('attributes')
8
+ @src['attributes']
9
+ else
10
+ @src
11
+ end
12
+ end
13
+
14
+ def key_name
15
+ content_value.dig("key_name")
16
+ end
17
+
18
+ def key_title
19
+ content_value.dig("key_title")
20
+ end
21
+
22
+ # @return [Array]
23
+ def suggestions
24
+ content_value.dig("suggestions")
25
+ end
26
+
27
+ def relationships
28
+ if exist_relationships?
29
+ return @src['relationships']
30
+ else
31
+ {}
32
+ end
33
+ end
34
+
35
+ # @return [Array]
36
+ def user_infos
37
+ relationships.dig("user_infos", "data")
38
+ end
39
+
40
+ private
41
+ def exist_attributes?
42
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
43
+ end
44
+
45
+ def exist_relationships?
46
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
47
+ end
48
+
49
+ def content_value(key)
50
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
51
+ return @src['attributes']["#{key}"]
52
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
53
+ return @src["#{key}"]
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,62 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class MemosResource < Base
5
+
6
+ def resource_id
7
+ content_value("resource_id")
8
+ end
9
+
10
+ def resource_type
11
+ content_value("resource_type")
12
+ end
13
+
14
+ def user_id
15
+ content_value("user_id")
16
+ end
17
+
18
+ def text
19
+ content_value("text")
20
+ end
21
+
22
+ def created_at_unix
23
+ content_value("created_at_unix")
24
+ end
25
+
26
+ def memo
27
+ if @src.has_key?('attributes')
28
+ @src['attributes']
29
+ else
30
+ @src
31
+ end
32
+ end
33
+
34
+ def relationships
35
+ if exist_relationships?
36
+ return @src['relationships']
37
+ else
38
+ {}
39
+ end
40
+ end
41
+
42
+ private
43
+ def exist_attributes?
44
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
45
+ end
46
+
47
+ def exist_relationships?
48
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
49
+ end
50
+
51
+ def content_value(key)
52
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
53
+ return @src['attributes']["#{key}"]
54
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
55
+ return @src["#{key}"]
56
+ end
57
+ end
58
+
59
+ end
60
+ end
61
+ end
62
+ end
@@ -105,11 +105,11 @@ module Oksky
105
105
  end
106
106
 
107
107
  def room_id
108
- if exist_relationships? && @src['relationships'].has_key?("room") && !@src['relationships']["room"].empty? && @src['relationships']["room"].has_key?("data") && !@src['relationships']["room"]["data"].empty? && @src['relationships']["room"]["data"].has_key?("id") && !@src['relationships']["room"]["data"]["id"].empty?
109
- return @src['relationships']["room"]["data"]["id"]
110
- else
111
- return nil
112
- end
108
+ @src.dig("relationships", "room", "data", "id")
109
+ end
110
+
111
+ def user_id
112
+ @src.dig("relationships", "user", "data", "id")
113
113
  end
114
114
 
115
115
  def relationships
@@ -0,0 +1,48 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class OperatorsResource < UsersResource
5
+
6
+ # @return [Array]
7
+ def present_rooms
8
+ relationships.dig("present_rooms", "data")
9
+ end
10
+
11
+ # @return [Array]
12
+ def support_rooms
13
+ relationships.dig("support_rooms", "data")
14
+ end
15
+
16
+ # @return [Array]
17
+ def members
18
+ relationships.dig("members", "data")
19
+ end
20
+
21
+ # @return [Array]
22
+ def supports
23
+ relationships.dig("supports", "data")
24
+ end
25
+
26
+ # @return [Array]
27
+ def rooms
28
+ relationships.dig("rooms", "data")
29
+ end
30
+
31
+ # @return [Array]
32
+ def starred_rooms
33
+ relationships.dig("starred_rooms", "data")
34
+ end
35
+
36
+ # @return [Array]
37
+ def starred_customers
38
+ relationships.dig("starred_customers", "data")
39
+ end
40
+
41
+ # @return [Array]
42
+ def reassign_requests
43
+ relationships.dig("reassign_requests", "data")
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -83,6 +83,22 @@ module Oksky
83
83
  end
84
84
  end
85
85
 
86
+ def support_group_id
87
+ @src.dig("relationships", "relationships", "data", "id")
88
+ end
89
+
90
+ def create_user_id
91
+ @src.dig("relationships", "create_user", "data", "id")
92
+ end
93
+
94
+ def client_id
95
+ @src.dig("relationships", "client", "data", "id")
96
+ end
97
+
98
+ def helped_room_id
99
+ @src.dig("relationships", "helped_room", "data", "id")
100
+ end
101
+
86
102
  def relationships
87
103
  if exist_relationships?
88
104
  return @src['relationships']
@@ -96,6 +112,10 @@ module Oksky
96
112
  !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
97
113
  end
98
114
 
115
+ def exist_relationships?
116
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
117
+ end
118
+
99
119
  def content_value(key)
100
120
  if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
101
121
  return @src['attributes']["#{key}"]
@@ -0,0 +1,51 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class SuggestionsResource < Base
5
+
6
+ # @return [Array]
7
+ def suggestion_messages_data
8
+ content_value("suggestion_messages_data")
9
+ end
10
+
11
+ def suggestion
12
+ if @src.has_key?('attributes')
13
+ @src['attributes']
14
+ else
15
+ @src
16
+ end
17
+ end
18
+
19
+ def relationships
20
+ if exist_relationships?
21
+ return @src['relationships']
22
+ else
23
+ {}
24
+ end
25
+ end
26
+
27
+ def room_id
28
+ relationships.dig("room", "id")
29
+ end
30
+
31
+ private
32
+ def exist_attributes?
33
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
34
+ end
35
+
36
+ def exist_relationships?
37
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
38
+ end
39
+
40
+ def content_value(key)
41
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
42
+ return @src['attributes']["#{key}"]
43
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
44
+ return @src["#{key}"]
45
+ end
46
+ end
47
+
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,42 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class SupervisorsResource < UsersResource
5
+ # @return [Array]
6
+ def present_rooms
7
+ relationships.dig("present_rooms", "data")
8
+ end
9
+
10
+ # @return [Array]
11
+ def support_rooms
12
+ relationships.dig("support_rooms", "data")
13
+ end
14
+
15
+ # @return [Array]
16
+ def members
17
+ relationships.dig("members", "data")
18
+ end
19
+
20
+ # @return [Array]
21
+ def supports
22
+ relationships.dig("supports", "data")
23
+ end
24
+
25
+ # @return [Array]
26
+ def rooms
27
+ relationships.dig("rooms", "data")
28
+ end
29
+
30
+ # @return [Array]
31
+ def starred_rooms
32
+ relationships.dig("starred_rooms", "data")
33
+ end
34
+
35
+ # @return [Array]
36
+ def starred_customers
37
+ relationships.dig("starred_customers", "data")
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,97 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class SupportDraftMessageResource < Base
5
+
6
+ def message_content
7
+ content_value("message_content")
8
+ end
9
+
10
+ def kind
11
+ content_value("kind")
12
+ end
13
+
14
+ # @return [Hash]
15
+ def settings
16
+ content_value("settings")
17
+ end
18
+
19
+ # @return [String]
20
+ # in_review
21
+ def status
22
+ content_value("status")
23
+ end
24
+
25
+ def resolved_time_unix
26
+ content_value("resolved_time_unix")
27
+ end
28
+
29
+ def comment
30
+ content_value("comment")
31
+ end
32
+
33
+ def create_user_resolved_read_time_unix
34
+ content_value("create_user_resolved_read_time_unix")
35
+ end
36
+
37
+ def created_at_unix
38
+ content_value("created_at_unix")
39
+ end
40
+
41
+ def updated_at_unix
42
+ content_value("updated_at_unix")
43
+ end
44
+
45
+ def support_draft_message
46
+ if @src.has_key?('attributes')
47
+ @src['attributes']
48
+ else
49
+ @src
50
+ end
51
+ end
52
+
53
+ def relationships
54
+ if exist_relationships?
55
+ return @src['relationships']
56
+ else
57
+ {}
58
+ end
59
+ end
60
+
61
+ def support_id
62
+ relationships.dig("support", "data", "id")
63
+ end
64
+
65
+ def resolved_user_id
66
+ relationships.dig("resolved_user", "data", "id")
67
+ end
68
+
69
+ def created_user_id
70
+ relationships.dig("created_user", "data", "id")
71
+ end
72
+
73
+ def room_id
74
+ relationships.dig("room", "data", "id")
75
+ end
76
+
77
+ private
78
+ def exist_attributes?
79
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
80
+ end
81
+
82
+ def exist_relationships?
83
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
84
+ end
85
+
86
+ def content_value(key)
87
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
88
+ return @src['attributes']["#{key}"]
89
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
90
+ return @src["#{key}"]
91
+ end
92
+ end
93
+
94
+ end
95
+ end
96
+ end
97
+ end
@@ -29,11 +29,36 @@ module Oksky
29
29
  end
30
30
  end
31
31
 
32
+ def user_id
33
+ relationships.dig("user", "data", "id")
34
+ end
35
+
36
+ def room_id
37
+ relationships.dig("room", "data", "id")
38
+ end
39
+
40
+ def latest_message_id
41
+ relationships.dig("latest_message", "data", "id")
42
+ end
43
+
44
+ def customer_id
45
+ relationships.dig("customer", "data", "id")
46
+ end
47
+
48
+ # @return [Array]
49
+ def members
50
+ relationships.dig("members", "data")
51
+ end
52
+
32
53
  private
33
54
  def exist_attributes?
34
55
  !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
35
56
  end
36
57
 
58
+ def exist_relationships?
59
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
60
+ end
61
+
37
62
  def content_value(key)
38
63
  if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
39
64
  return @src['attributes']["#{key}"]
@@ -0,0 +1,88 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class TrackerEntriesResource < Base
5
+
6
+ # @return [String]
7
+ def time_unix
8
+ content_value("time_unix")
9
+ end
10
+
11
+ # @return [Hash]
12
+ # "payload":{
13
+ # "ua":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36",
14
+ # "p":"Win32",
15
+ # "r":"",
16
+ # "l":"https://www.google.co.jp/?gfe_rd=cr&dcr=0&ei=2Qq-WtP_MPDd8Aebq6b4Bg&gws_rd=ssl",
17
+ # "t":1522404097400,
18
+ # "tz":"Asia/Tokyo"
19
+ # }
20
+ def payload
21
+ content_value("payload")
22
+ end
23
+
24
+ def user_uuid
25
+ content_value("user_uuid")
26
+ end
27
+
28
+ def t
29
+ content_value("t")
30
+ end
31
+
32
+ def ua
33
+ content_value("ua")
34
+ end
35
+
36
+ def p
37
+ content_value("p")
38
+ end
39
+
40
+ def r
41
+ content_value("r")
42
+ end
43
+
44
+ def l
45
+ content_value("l")
46
+ end
47
+
48
+ def tz
49
+ content_value("tz")
50
+ end
51
+
52
+ def tracker_entry
53
+ if @src.has_key?('attributes')
54
+ @src['attributes']
55
+ else
56
+ @src
57
+ end
58
+ end
59
+
60
+ def relationships
61
+ if exist_relationships?
62
+ return @src['relationships']
63
+ else
64
+ {}
65
+ end
66
+ end
67
+
68
+ private
69
+ def exist_attributes?
70
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
71
+ end
72
+
73
+ def exist_relationships?
74
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
75
+ end
76
+
77
+ def content_value(key)
78
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
79
+ return @src['attributes']["#{key}"]
80
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
81
+ return @src["#{key}"]
82
+ end
83
+ end
84
+
85
+ end
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,62 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class UserEventsResource < Base
5
+
6
+ def resource_type
7
+ content_value("resource_type")
8
+ end
9
+
10
+ def kind
11
+ content_value("kind")
12
+ end
13
+
14
+ def resource_id
15
+ content_value("resource_id")
16
+ end
17
+
18
+ def created_at_unix
19
+ content_value("created_at_unix")
20
+ end
21
+
22
+ def user_event
23
+ if @src.has_key?('attributes')
24
+ @src['attributes']
25
+ else
26
+ @src
27
+ end
28
+ end
29
+
30
+ def relationships
31
+ if exist_relationships?
32
+ return @src['relationships']
33
+ else
34
+ {}
35
+ end
36
+ end
37
+
38
+ def user_id
39
+ relationships.dig("user", "id")
40
+ end
41
+
42
+ private
43
+ def exist_attributes?
44
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
45
+ end
46
+
47
+ def exist_relationships?
48
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
49
+ end
50
+
51
+ def content_value(key)
52
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
53
+ return @src['attributes']["#{key}"]
54
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
55
+ return @src["#{key}"]
56
+ end
57
+ end
58
+
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,54 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class UserInfosResource < Base
5
+
6
+ def value_data
7
+ content_value("value_data")
8
+ end
9
+
10
+ def user_info
11
+ if @src.has_key?('attributes')
12
+ @src['attributes']
13
+ else
14
+ @src
15
+ end
16
+ end
17
+
18
+ def relationships
19
+ if exist_relationships?
20
+ return @src['relationships']
21
+ else
22
+ {}
23
+ end
24
+ end
25
+
26
+ def user_id
27
+ relationships.dig("user", "data", "id")
28
+ end
29
+
30
+ def master_keyword_id
31
+ relationships.dig("master_keyword", "data", "id")
32
+ end
33
+
34
+ private
35
+ def exist_attributes?
36
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
37
+ end
38
+
39
+ def exist_relationships?
40
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
41
+ end
42
+
43
+ def content_value(key)
44
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
45
+ return @src['attributes']["#{key}"]
46
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
47
+ return @src["#{key}"]
48
+ end
49
+ end
50
+
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,117 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class UsersResource < Base
5
+
6
+ def uuid
7
+ content_value("uuid")
8
+ end
9
+
10
+ def username
11
+ content_value("username")
12
+ end
13
+
14
+ def full_name
15
+ content_value("full_name")
16
+ end
17
+
18
+ def name
19
+ content_value("name")
20
+ end
21
+
22
+ def gravatar_id
23
+ content_value("gravatar_id")
24
+ end
25
+
26
+ def email
27
+ content_value("email")
28
+ end
29
+
30
+ def avatar_url
31
+ content_value("avatar_url")
32
+ end
33
+
34
+ def default_avatar_url
35
+ content_value("default_avatar_url")
36
+ end
37
+
38
+ def user_type
39
+ content_value("user_type")
40
+ end
41
+
42
+ def status
43
+ content_value("status")
44
+ end
45
+
46
+ def max_support_count
47
+ content_value("max_support_count")
48
+ end
49
+
50
+ def timezone
51
+ content_value("timezone")
52
+ end
53
+
54
+ def in_training
55
+ content_value("in_training")
56
+ end
57
+
58
+ def login_count
59
+ content_value("login_count")
60
+ end
61
+
62
+ def is_active
63
+ content_value("is_active")
64
+ end
65
+
66
+ def created_at
67
+ content_value("created_at")
68
+ end
69
+
70
+ def created_at_unix
71
+ content_value("created_at_unix")
72
+ end
73
+
74
+ def user_typings
75
+ content_value("user_typings")
76
+ end
77
+
78
+ def language
79
+ content_value("language")
80
+ end
81
+
82
+ def user
83
+ if @src.has_key?('attributes')
84
+ @src['attributes']
85
+ else
86
+ @src
87
+ end
88
+ end
89
+
90
+ def relationships
91
+ if exist_relationships?
92
+ return @src['relationships']
93
+ else
94
+ {}
95
+ end
96
+ end
97
+
98
+ private
99
+ def exist_attributes?
100
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
101
+ end
102
+
103
+ def exist_relationships?
104
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
105
+ end
106
+
107
+ def content_value(key)
108
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
109
+ return @src['attributes']["#{key}"]
110
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
111
+ return @src["#{key}"]
112
+ end
113
+ end
114
+ end
115
+ end
116
+ end
117
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oksky-chat-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - SOLAIRO, INC.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-26 00:00:00.000000000 Z
11
+ date: 2020-08-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -110,12 +110,25 @@ files:
110
110
  - lib/oksky/chat/client.rb
111
111
  - lib/oksky/chat/httpclient.rb
112
112
  - lib/oksky/chat/object.rb
113
+ - lib/oksky/chat/object/administrators_resource.rb
113
114
  - lib/oksky/chat/object/base.rb
115
+ - lib/oksky/chat/object/clients_resource.rb
116
+ - lib/oksky/chat/object/customers_resource.rb
117
+ - lib/oksky/chat/object/master_keywords_resource.rb
118
+ - lib/oksky/chat/object/memos_resource.rb
114
119
  - lib/oksky/chat/object/messages_resource.rb
120
+ - lib/oksky/chat/object/operators_resource.rb
115
121
  - lib/oksky/chat/object/provider_rooms_resource.rb
116
122
  - lib/oksky/chat/object/rooms_resource.rb
123
+ - lib/oksky/chat/object/suggestions_resource.rb
124
+ - lib/oksky/chat/object/supervisors_resource.rb
125
+ - lib/oksky/chat/object/support_draft_messages_resource.rb
117
126
  - lib/oksky/chat/object/supports_resource.rb
127
+ - lib/oksky/chat/object/tracker_entries_resource.rb
118
128
  - lib/oksky/chat/object/unsupport_resource.rb
129
+ - lib/oksky/chat/object/user_events_resource.rb
130
+ - lib/oksky/chat/object/user_infos_resource.rb
131
+ - lib/oksky/chat/object/users_resource.rb
119
132
  - lib/oksky/chat/request.rb
120
133
  - lib/oksky/chat/whclient.rb
121
134
  - oksky-chat-api.gemspec
@@ -138,8 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
138
151
  - !ruby/object:Gem::Version
139
152
  version: '0'
140
153
  requirements: []
141
- rubyforge_project:
142
- rubygems_version: 2.6.11
154
+ rubygems_version: 3.0.3
143
155
  signing_key:
144
156
  specification_version: 4
145
157
  summary: ''