oksky-chat-api 0.2.4 → 0.2.9

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
  SHA256:
3
- metadata.gz: e17cb1ade95ae42a05d66c41b66add977829e7981f989b38decbfff950458f03
4
- data.tar.gz: 3ef35f5ddeb50e4e4e3c1e40981cbe436285a440917ff0c58f92bca98b88033e
3
+ metadata.gz: b759eeed0ebdce249d54baf09393ba1e4d4b75c2415eb8694f9253beb005adc8
4
+ data.tar.gz: a5b6d57df1f142f69f89328cab39eebc7b815b98f9fdf93b011cbbc36bbddb5d
5
5
  SHA512:
6
- metadata.gz: 76c40f4d3a00d73a35d0dfad3fe0380e937d99000a765d21c8a845bcacd2ded5010b89bccc7bddf08d8fc2a8869d2b1a631ba4d19b5c328de98d7b62dcba5d57
7
- data.tar.gz: cc191760db5efb4164faede56c951ce991704334318e5362a571c0c1bfb4160fcc846dd279ffcdf36287c5ab168222e45a26a660bcefefeda48e69887521a920
6
+ metadata.gz: 3efb061f86b1b65fcc54efcd0fcb3e7b0ff10b00e68f5754f74208c031fcb51ec6073503d4a368701b647f0c38d7d0408d51ed5b767f4f1f928ca3f78e2d9712
7
+ data.tar.gz: d7b4b07969aeaf1a084cae4e6b6aaee9ae8a89b3b3ceaf9598be9bb6a717fcb3b148593975c7b12ff1993c940f0ba6b0f5326746eef39261d7490eecbae853b4
@@ -1,7 +1,7 @@
1
1
  module Oksky
2
2
  module Chat
3
3
  module API
4
- VERSION = "0.2.4"
4
+ VERSION = "0.2.9"
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
@@ -9,4 +9,10 @@ require 'oksky/chat/object/users_resource'
9
9
  require 'oksky/chat/object/administrators_resource'
10
10
  require 'oksky/chat/object/operators_resource'
11
11
  require 'oksky/chat/object/supervisors_resource'
12
- require 'oksky/chat/object/customers_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'
@@ -3,6 +3,44 @@ module Oksky
3
3
  module Object
4
4
  class AdministratorsResource < UsersResource
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ # @return [Array]
11
+ def present_rooms
12
+ relationships.dig("present_rooms", "data")
13
+ end
14
+
15
+ # @return [Array]
16
+ def support_rooms
17
+ relationships.dig("support_rooms", "data")
18
+ end
19
+
20
+ # @return [Array]
21
+ def members
22
+ relationships.dig("members", "data")
23
+ end
24
+
25
+ # @return [Array]
26
+ def supports
27
+ relationships.dig("supports", "data")
28
+ end
29
+
30
+ # @return [Array]
31
+ def rooms
32
+ relationships.dig("rooms", "data")
33
+ end
34
+
35
+ # @return [Array]
36
+ def starred_rooms
37
+ relationships.dig("starred_rooms", "data")
38
+ end
39
+
40
+ # @return [Array]
41
+ def starred_customers
42
+ relationships.dig("starred_customers", "data")
43
+ end
6
44
  end
7
45
  end
8
46
  end
@@ -3,6 +3,10 @@ module Oksky
3
3
  module Object
4
4
  class ClientsResource < Base
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
6
10
  def injectable_code
7
11
  content_value("injectable_code")
8
12
  end
@@ -3,6 +3,64 @@ module Oksky
3
3
  module Object
4
4
  class CustomersResource < UsersResource
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ # @return [Array]
11
+ def present_rooms
12
+ relationships.dig("present_rooms", "data")
13
+ end
14
+
15
+ # @return [Array]
16
+ def support_rooms
17
+ relationships.dig("support_rooms", "data")
18
+ end
19
+
20
+ # @return [Array]
21
+ def members
22
+ relationships.dig("members", "data")
23
+ end
24
+
25
+ # @return [Array]
26
+ def supports
27
+ relationships.dig("supports", "data")
28
+ end
29
+
30
+ # @return [Array]
31
+ def rooms
32
+ relationships.dig("rooms", "data")
33
+ end
34
+
35
+ # @return [Array]
36
+ def starred_rooms
37
+ relationships.dig("starred_rooms", "data")
38
+ end
39
+
40
+ # @return [Array]
41
+ def starred_customers
42
+ relationships.dig("starred_customers", "data")
43
+ end
44
+
45
+ # @return [Array]
46
+ def user_supported
47
+ relationships.dig("user_supported", "data")
48
+ end
49
+
50
+ # @return [Array]
51
+ def memos
52
+ relationships.dig("memos", "data")
53
+ end
54
+
55
+ # @return [Array]
56
+ def user_events
57
+ relationships.dig("user_events", "data")
58
+ end
59
+
60
+ # @return [Array]
61
+ def user_infos
62
+ relationships.dig("user_infos", "data")
63
+ end
6
64
  end
7
65
  end
8
66
  end
@@ -0,0 +1,63 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class MasterKeywordsResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ def master_keyword
11
+ if @src.has_key?('attributes')
12
+ @src['attributes']
13
+ else
14
+ @src
15
+ end
16
+ end
17
+
18
+ def key_name
19
+ content_value.dig("key_name")
20
+ end
21
+
22
+ def key_title
23
+ content_value.dig("key_title")
24
+ end
25
+
26
+ # @return [Array]
27
+ def suggestions
28
+ content_value.dig("suggestions")
29
+ end
30
+
31
+ def relationships
32
+ if exist_relationships?
33
+ return @src['relationships']
34
+ else
35
+ {}
36
+ end
37
+ end
38
+
39
+ # @return [Array]
40
+ def user_infos
41
+ relationships.dig("user_infos", "data")
42
+ end
43
+
44
+ private
45
+ def exist_attributes?
46
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
47
+ end
48
+
49
+ def exist_relationships?
50
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
51
+ end
52
+
53
+ def content_value(key)
54
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
55
+ return @src['attributes']["#{key}"]
56
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
57
+ return @src["#{key}"]
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,66 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class MemosResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ def resource_id
11
+ content_value("resource_id")
12
+ end
13
+
14
+ def resource_type
15
+ content_value("resource_type")
16
+ end
17
+
18
+ def user_id
19
+ content_value("user_id")
20
+ end
21
+
22
+ def text
23
+ content_value("text")
24
+ end
25
+
26
+ def created_at_unix
27
+ content_value("created_at_unix")
28
+ end
29
+
30
+ def memo
31
+ if @src.has_key?('attributes')
32
+ @src['attributes']
33
+ else
34
+ @src
35
+ end
36
+ end
37
+
38
+ def relationships
39
+ if exist_relationships?
40
+ return @src['relationships']
41
+ else
42
+ {}
43
+ end
44
+ end
45
+
46
+ private
47
+ def exist_attributes?
48
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
49
+ end
50
+
51
+ def exist_relationships?
52
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
53
+ end
54
+
55
+ def content_value(key)
56
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
57
+ return @src['attributes']["#{key}"]
58
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
59
+ return @src["#{key}"]
60
+ end
61
+ end
62
+
63
+ end
64
+ end
65
+ end
66
+ end
@@ -22,6 +22,10 @@ module Oksky
22
22
 
23
23
  class MessagesResource < Base
24
24
 
25
+ def id
26
+ @src.dig("id")
27
+ end
28
+
25
29
  # @return [String<Oksky::Chat::Event::Message>]
26
30
  def content
27
31
  content_value('content')
@@ -105,11 +109,11 @@ module Oksky
105
109
  end
106
110
 
107
111
  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
112
+ @src.dig("relationships", "room", "data", "id")
113
+ end
114
+
115
+ def user_id
116
+ @src.dig("relationships", "user", "data", "id")
113
117
  end
114
118
 
115
119
  def relationships
@@ -3,6 +3,49 @@ module Oksky
3
3
  module Object
4
4
  class OperatorsResource < UsersResource
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ # @return [Array]
11
+ def present_rooms
12
+ relationships.dig("present_rooms", "data")
13
+ end
14
+
15
+ # @return [Array]
16
+ def support_rooms
17
+ relationships.dig("support_rooms", "data")
18
+ end
19
+
20
+ # @return [Array]
21
+ def members
22
+ relationships.dig("members", "data")
23
+ end
24
+
25
+ # @return [Array]
26
+ def supports
27
+ relationships.dig("supports", "data")
28
+ end
29
+
30
+ # @return [Array]
31
+ def rooms
32
+ relationships.dig("rooms", "data")
33
+ end
34
+
35
+ # @return [Array]
36
+ def starred_rooms
37
+ relationships.dig("starred_rooms", "data")
38
+ end
39
+
40
+ # @return [Array]
41
+ def starred_customers
42
+ relationships.dig("starred_customers", "data")
43
+ end
44
+
45
+ # @return [Array]
46
+ def reassign_requests
47
+ relationships.dig("reassign_requests", "data")
48
+ end
6
49
  end
7
50
  end
8
51
  end
@@ -11,6 +11,10 @@ module Oksky
11
11
 
12
12
  class RoomsResource < Base
13
13
 
14
+ def id
15
+ @src.dig("id")
16
+ end
17
+
14
18
  # @return [String<Oksky::Chat::Event::Room>]
15
19
  def name
16
20
  content_value('name')
@@ -84,35 +88,19 @@ module Oksky
84
88
  end
85
89
 
86
90
  def support_group_id
87
- if exist_relationships? && @src['relationships'].has_key?("support_group") && !@src['relationships']["support_group"].empty? && @src['relationships']["support_group"].has_key?("data") && !@src['relationships']["support_group"]["data"].empty? && @src['relationships']["support_group"]["data"].has_key?("id") && !@src['relationships']["support_group"]["data"]["id"].empty?
88
- return @src['relationships']["relationships"]["data"]["id"]
89
- else
90
- return nil
91
- end
91
+ @src.dig("relationships", "relationships", "data", "id")
92
92
  end
93
93
 
94
94
  def create_user_id
95
- if exist_relationships? && @src['relationships'].has_key?("create_user") && !@src['relationships']["create_user"].empty? && @src['relationships']["create_user"].has_key?("data") && !@src['relationships']["create_user"]["data"].empty? && @src['relationships']["create_user"]["data"].has_key?("id") && !@src['relationships']["create_user"]["data"]["id"].empty?
96
- return @src['relationships']["create_user"]["data"]["id"]
97
- else
98
- return nil
99
- end
95
+ @src.dig("relationships", "create_user", "data", "id")
100
96
  end
101
97
 
102
98
  def client_id
103
- if exist_relationships? && @src['relationships'].has_key?("client") && !@src['relationships']["client"].empty? && @src['relationships']["client"].has_key?("data") && !@src['relationships']["client"]["data"].empty? && @src['relationships']["client"]["data"].has_key?("id") && !@src['relationships']["client"]["data"]["id"].empty?
104
- return @src['relationships']["client"]["data"]["id"]
105
- else
106
- return nil
107
- end
99
+ @src.dig("relationships", "client", "data", "id")
108
100
  end
109
101
 
110
102
  def helped_room_id
111
- if exist_relationships? && @src['relationships'].has_key?("helped_room") && !@src['relationships']["helped_room"].empty? && @src['relationships']["helped_room"].has_key?("data") && !@src['relationships']["helped_room"]["data"].empty? && @src['relationships']["helped_room"]["data"].has_key?("id") && !@src['relationships']["helped_room"]["data"]["id"].empty?
112
- return @src['relationships']["helped_room"]["data"]["id"]
113
- else
114
- return nil
115
- end
103
+ @src.dig("relationships", "helped_room", "data", "id")
116
104
  end
117
105
 
118
106
  def relationships
@@ -0,0 +1,55 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class SuggestionsResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ # @return [Array]
11
+ def suggestion_messages_data
12
+ content_value("suggestion_messages_data")
13
+ end
14
+
15
+ def suggestion
16
+ if @src.has_key?('attributes')
17
+ @src['attributes']
18
+ else
19
+ @src
20
+ end
21
+ end
22
+
23
+ def relationships
24
+ if exist_relationships?
25
+ return @src['relationships']
26
+ else
27
+ {}
28
+ end
29
+ end
30
+
31
+ def room_id
32
+ relationships.dig("room", "id")
33
+ end
34
+
35
+ private
36
+ def exist_attributes?
37
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
38
+ end
39
+
40
+ def exist_relationships?
41
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
42
+ end
43
+
44
+ def content_value(key)
45
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
46
+ return @src['attributes']["#{key}"]
47
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
48
+ return @src["#{key}"]
49
+ end
50
+ end
51
+
52
+ end
53
+ end
54
+ end
55
+ end
@@ -3,6 +3,44 @@ module Oksky
3
3
  module Object
4
4
  class SupervisorsResource < UsersResource
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ # @return [Array]
11
+ def present_rooms
12
+ relationships.dig("present_rooms", "data")
13
+ end
14
+
15
+ # @return [Array]
16
+ def support_rooms
17
+ relationships.dig("support_rooms", "data")
18
+ end
19
+
20
+ # @return [Array]
21
+ def members
22
+ relationships.dig("members", "data")
23
+ end
24
+
25
+ # @return [Array]
26
+ def supports
27
+ relationships.dig("supports", "data")
28
+ end
29
+
30
+ # @return [Array]
31
+ def rooms
32
+ relationships.dig("rooms", "data")
33
+ end
34
+
35
+ # @return [Array]
36
+ def starred_rooms
37
+ relationships.dig("starred_rooms", "data")
38
+ end
39
+
40
+ # @return [Array]
41
+ def starred_customers
42
+ relationships.dig("starred_customers", "data")
43
+ end
6
44
  end
7
45
  end
8
46
  end
@@ -0,0 +1,101 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class SupportDraftMessageResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ def message_content
11
+ content_value("message_content")
12
+ end
13
+
14
+ def kind
15
+ content_value("kind")
16
+ end
17
+
18
+ # @return [Hash]
19
+ def settings
20
+ content_value("settings")
21
+ end
22
+
23
+ # @return [String]
24
+ # in_review
25
+ def status
26
+ content_value("status")
27
+ end
28
+
29
+ def resolved_time_unix
30
+ content_value("resolved_time_unix")
31
+ end
32
+
33
+ def comment
34
+ content_value("comment")
35
+ end
36
+
37
+ def create_user_resolved_read_time_unix
38
+ content_value("create_user_resolved_read_time_unix")
39
+ end
40
+
41
+ def created_at_unix
42
+ content_value("created_at_unix")
43
+ end
44
+
45
+ def updated_at_unix
46
+ content_value("updated_at_unix")
47
+ end
48
+
49
+ def support_draft_message
50
+ if @src.has_key?('attributes')
51
+ @src['attributes']
52
+ else
53
+ @src
54
+ end
55
+ end
56
+
57
+ def relationships
58
+ if exist_relationships?
59
+ return @src['relationships']
60
+ else
61
+ {}
62
+ end
63
+ end
64
+
65
+ def support_id
66
+ relationships.dig("support", "data", "id")
67
+ end
68
+
69
+ def resolved_user_id
70
+ relationships.dig("resolved_user", "data", "id")
71
+ end
72
+
73
+ def created_user_id
74
+ relationships.dig("created_user", "data", "id")
75
+ end
76
+
77
+ def room_id
78
+ relationships.dig("room", "data", "id")
79
+ end
80
+
81
+ private
82
+ def exist_attributes?
83
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
84
+ end
85
+
86
+ def exist_relationships?
87
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
88
+ end
89
+
90
+ def content_value(key)
91
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
92
+ return @src['attributes']["#{key}"]
93
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
94
+ return @src["#{key}"]
95
+ end
96
+ end
97
+
98
+ end
99
+ end
100
+ end
101
+ end
@@ -3,6 +3,10 @@ module Oksky
3
3
  module Object
4
4
  class SupportsResource < Base
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
6
10
  # @return [String<Oksky::Chat::Event::Support>]
7
11
  def end_time_unix
8
12
  content_value('end_time_unix')
@@ -29,11 +33,36 @@ module Oksky
29
33
  end
30
34
  end
31
35
 
36
+ def user_id
37
+ relationships.dig("user", "data", "id")
38
+ end
39
+
40
+ def room_id
41
+ relationships.dig("room", "data", "id")
42
+ end
43
+
44
+ def latest_message_id
45
+ relationships.dig("latest_message", "data", "id")
46
+ end
47
+
48
+ def customer_id
49
+ relationships.dig("customer", "data", "id")
50
+ end
51
+
52
+ # @return [Array]
53
+ def members
54
+ relationships.dig("members", "data")
55
+ end
56
+
32
57
  private
33
58
  def exist_attributes?
34
59
  !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
35
60
  end
36
61
 
62
+ def exist_relationships?
63
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
64
+ end
65
+
37
66
  def content_value(key)
38
67
  if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
39
68
  return @src['attributes']["#{key}"]
@@ -0,0 +1,92 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class TrackerEntriesResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ # @return [String]
11
+ def time_unix
12
+ content_value("time_unix")
13
+ end
14
+
15
+ # @return [Hash]
16
+ # "payload":{
17
+ # "ua":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36",
18
+ # "p":"Win32",
19
+ # "r":"",
20
+ # "l":"https://www.google.co.jp/?gfe_rd=cr&dcr=0&ei=2Qq-WtP_MPDd8Aebq6b4Bg&gws_rd=ssl",
21
+ # "t":1522404097400,
22
+ # "tz":"Asia/Tokyo"
23
+ # }
24
+ def payload
25
+ content_value("payload")
26
+ end
27
+
28
+ def user_uuid
29
+ content_value("user_uuid")
30
+ end
31
+
32
+ def t
33
+ content_value("t")
34
+ end
35
+
36
+ def ua
37
+ content_value("ua")
38
+ end
39
+
40
+ def p
41
+ content_value("p")
42
+ end
43
+
44
+ def r
45
+ content_value("r")
46
+ end
47
+
48
+ def l
49
+ content_value("l")
50
+ end
51
+
52
+ def tz
53
+ content_value("tz")
54
+ end
55
+
56
+ def tracker_entry
57
+ if @src.has_key?('attributes')
58
+ @src['attributes']
59
+ else
60
+ @src
61
+ end
62
+ end
63
+
64
+ def relationships
65
+ if exist_relationships?
66
+ return @src['relationships']
67
+ else
68
+ {}
69
+ end
70
+ end
71
+
72
+ private
73
+ def exist_attributes?
74
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
75
+ end
76
+
77
+ def exist_relationships?
78
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
79
+ end
80
+
81
+ def content_value(key)
82
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
83
+ return @src['attributes']["#{key}"]
84
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
85
+ return @src["#{key}"]
86
+ end
87
+ end
88
+
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,66 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class UserEventsResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ def resource_type
11
+ content_value("resource_type")
12
+ end
13
+
14
+ def kind
15
+ content_value("kind")
16
+ end
17
+
18
+ def resource_id
19
+ content_value("resource_id")
20
+ end
21
+
22
+ def created_at_unix
23
+ content_value("created_at_unix")
24
+ end
25
+
26
+ def user_event
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
+ def user_id
43
+ relationships.dig("user", "id")
44
+ end
45
+
46
+ private
47
+ def exist_attributes?
48
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
49
+ end
50
+
51
+ def exist_relationships?
52
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
53
+ end
54
+
55
+ def content_value(key)
56
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
57
+ return @src['attributes']["#{key}"]
58
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
59
+ return @src["#{key}"]
60
+ end
61
+ end
62
+
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,58 @@
1
+ module Oksky
2
+ module Chat
3
+ module Object
4
+ class UserInfosResource < Base
5
+
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
10
+ def value_data
11
+ content_value("value_data")
12
+ end
13
+
14
+ def user_info
15
+ if @src.has_key?('attributes')
16
+ @src['attributes']
17
+ else
18
+ @src
19
+ end
20
+ end
21
+
22
+ def relationships
23
+ if exist_relationships?
24
+ return @src['relationships']
25
+ else
26
+ {}
27
+ end
28
+ end
29
+
30
+ def user_id
31
+ relationships.dig("user", "data", "id")
32
+ end
33
+
34
+ def master_keyword_id
35
+ relationships.dig("master_keyword", "data", "id")
36
+ end
37
+
38
+ private
39
+ def exist_attributes?
40
+ !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
41
+ end
42
+
43
+ def exist_relationships?
44
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
45
+ end
46
+
47
+ def content_value(key)
48
+ if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
49
+ return @src['attributes']["#{key}"]
50
+ elsif @src.has_key?("#{key}") && !@src["#{key}"].empty?
51
+ return @src["#{key}"]
52
+ end
53
+ end
54
+
55
+ end
56
+ end
57
+ end
58
+ end
@@ -3,6 +3,10 @@ module Oksky
3
3
  module Object
4
4
  class UsersResource < Base
5
5
 
6
+ def id
7
+ @src.dig("id")
8
+ end
9
+
6
10
  def uuid
7
11
  content_value("uuid")
8
12
  end
@@ -79,7 +83,7 @@ module Oksky
79
83
  content_value("language")
80
84
  end
81
85
 
82
- def operator
86
+ def user
83
87
  if @src.has_key?('attributes')
84
88
  @src['attributes']
85
89
  else
@@ -100,6 +104,10 @@ module Oksky
100
104
  !@src.empty? && @src.has_key?('attributes') && !@src['attributes'].empty?
101
105
  end
102
106
 
107
+ def exist_relationships?
108
+ !@src.empty? && @src.has_key?('relationships') && !@src['relationships'].empty?
109
+ end
110
+
103
111
  def content_value(key)
104
112
  if exist_attributes? && @src['attributes'].has_key?("#{key}") && !@src['attributes']["#{key}"].empty?
105
113
  return @src['attributes']["#{key}"]
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.4
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - SOLAIRO, INC.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-04 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
@@ -114,13 +114,20 @@ files:
114
114
  - lib/oksky/chat/object/base.rb
115
115
  - lib/oksky/chat/object/clients_resource.rb
116
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
117
119
  - lib/oksky/chat/object/messages_resource.rb
118
120
  - lib/oksky/chat/object/operators_resource.rb
119
121
  - lib/oksky/chat/object/provider_rooms_resource.rb
120
122
  - lib/oksky/chat/object/rooms_resource.rb
123
+ - lib/oksky/chat/object/suggestions_resource.rb
121
124
  - lib/oksky/chat/object/supervisors_resource.rb
125
+ - lib/oksky/chat/object/support_draft_messages_resource.rb
122
126
  - lib/oksky/chat/object/supports_resource.rb
127
+ - lib/oksky/chat/object/tracker_entries_resource.rb
123
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
124
131
  - lib/oksky/chat/object/users_resource.rb
125
132
  - lib/oksky/chat/request.rb
126
133
  - lib/oksky/chat/whclient.rb
@@ -144,8 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
151
  - !ruby/object:Gem::Version
145
152
  version: '0'
146
153
  requirements: []
147
- rubyforge_project:
148
- rubygems_version: 2.7.7
154
+ rubygems_version: 3.0.3
149
155
  signing_key:
150
156
  specification_version: 4
151
157
  summary: ''