oksky-chat-api 0.2.4 → 0.2.9

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
  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: ''