docomo-nlu 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (200) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -2
  3. data/Gemfile.lock +1 -1
  4. data/lib/docomo-nlu/management/V26/aiml_base.rb +3 -72
  5. data/lib/docomo-nlu/management/V26/entry.rb +44 -0
  6. data/lib/docomo-nlu/management.rb +28 -1
  7. data/lib/docomo-nlu/spontaneous.rb +12 -1
  8. data/lib/docomo-nlu/version.rb +1 -1
  9. data/vcr/vcr_cassettes/V23/account/count.yml +42 -0
  10. data/vcr/vcr_cassettes/V23/account/create.yml +44 -0
  11. data/vcr/vcr_cassettes/V23/account/delete.yml +38 -0
  12. data/vcr/vcr_cassettes/V23/account/index.yml +43 -0
  13. data/vcr/vcr_cassettes/V23/account/show.yml +43 -0
  14. data/vcr/vcr_cassettes/V23/account/update.yml +41 -0
  15. data/vcr/vcr_cassettes/V23/base/login.yml +44 -0
  16. data/vcr/vcr_cassettes/V23/base/login_400.yml +42 -0
  17. data/vcr/vcr_cassettes/V23/base/logout.yml +40 -0
  18. data/vcr/vcr_cassettes/V23/base/logout_400.yml +40 -0
  19. data/vcr/vcr_cassettes/V23/bot/create.yml +43 -0
  20. data/vcr/vcr_cassettes/V23/bot/create_conflict.yml +45 -0
  21. data/vcr/vcr_cassettes/V23/bot/delete.yml +38 -0
  22. data/vcr/vcr_cassettes/V23/bot/deploy.yml +164 -0
  23. data/vcr/vcr_cassettes/V23/bot/download_aiml.yml +43 -0
  24. data/vcr/vcr_cassettes/V23/bot/download_archive.yml +43 -0
  25. data/vcr/vcr_cassettes/V23/bot/download_dat.yml +43 -0
  26. data/vcr/vcr_cassettes/V23/bot/index.yml +44 -0
  27. data/vcr/vcr_cassettes/V23/bot/index_not_found.yml +42 -0
  28. data/vcr/vcr_cassettes/V23/bot/show.yml +43 -0
  29. data/vcr/vcr_cassettes/V23/bot/upload_aiml.yml +45 -0
  30. data/vcr/vcr_cassettes/V23/bot/upload_archive.yml +46 -0
  31. data/vcr/vcr_cassettes/V23/bot/upload_dat.yml +46 -0
  32. data/vcr/vcr_cassettes/V23/config/delete.yml +38 -0
  33. data/vcr/vcr_cassettes/V23/config/index.yml +120 -0
  34. data/vcr/vcr_cassettes/V23/config/update.yml +42 -0
  35. data/vcr/vcr_cassettes/V23/default_predicate/create.yml +42 -0
  36. data/vcr/vcr_cassettes/V23/default_predicate/delete.yml +38 -0
  37. data/vcr/vcr_cassettes/V23/default_predicate/index.yml +120 -0
  38. data/vcr/vcr_cassettes/V23/default_predicate/index_not_found.yml +120 -0
  39. data/vcr/vcr_cassettes/V23/default_predicate/update.yml +40 -0
  40. data/vcr/vcr_cassettes/V23/map/create.yml +45 -0
  41. data/vcr/vcr_cassettes/V23/map/create_400.yml +48 -0
  42. data/vcr/vcr_cassettes/V23/map/delete.yml +38 -0
  43. data/vcr/vcr_cassettes/V23/map/index_all.yml +43 -0
  44. data/vcr/vcr_cassettes/V23/map/index_find.yml +43 -0
  45. data/vcr/vcr_cassettes/V23/map/index_where.yml +43 -0
  46. data/vcr/vcr_cassettes/V23/map/save.yml +45 -0
  47. data/vcr/vcr_cassettes/V23/map/save_400.yml +48 -0
  48. data/vcr/vcr_cassettes/V23/map/show_find.yml +43 -0
  49. data/vcr/vcr_cassettes/V23/map/show_where.yml +43 -0
  50. data/vcr/vcr_cassettes/V23/organization/create.yml +44 -0
  51. data/vcr/vcr_cassettes/V23/organization/delete.yml +38 -0
  52. data/vcr/vcr_cassettes/V23/organization/index.yml +138 -0
  53. data/vcr/vcr_cassettes/V23/organization/show.yml +42 -0
  54. data/vcr/vcr_cassettes/V23/organization/update.yml +40 -0
  55. data/vcr/vcr_cassettes/V23/organization_member/create.yml +42 -0
  56. data/vcr/vcr_cassettes/V23/organization_member/delete.yml +38 -0
  57. data/vcr/vcr_cassettes/V23/organization_member/index.yml +42 -0
  58. data/vcr/vcr_cassettes/V23/organization_member/index_404.yml +42 -0
  59. data/vcr/vcr_cassettes/V23/organization_member/index_not_found.yml +42 -0
  60. data/vcr/vcr_cassettes/V23/predicate_name/create.yml +42 -0
  61. data/vcr/vcr_cassettes/V23/predicate_name/delete.yml +38 -0
  62. data/vcr/vcr_cassettes/V23/predicate_name/index.yml +42 -0
  63. data/vcr/vcr_cassettes/V23/predicate_name/index_all.yml +42 -0
  64. data/vcr/vcr_cassettes/V23/predicate_name/index_find.yml +42 -0
  65. data/vcr/vcr_cassettes/V23/predicate_name/index_where.yml +42 -0
  66. data/vcr/vcr_cassettes/V23/project/create.yml +44 -0
  67. data/vcr/vcr_cassettes/V23/project/create_conflict.yml +44 -0
  68. data/vcr/vcr_cassettes/V23/project/delete.yml +38 -0
  69. data/vcr/vcr_cassettes/V23/project/index.yml +474 -0
  70. data/vcr/vcr_cassettes/V23/project/show.yml +43 -0
  71. data/vcr/vcr_cassettes/V23/project_member/create.yml +42 -0
  72. data/vcr/vcr_cassettes/V23/project_member/delete.yml +38 -0
  73. data/vcr/vcr_cassettes/V23/project_member/index.yml +42 -0
  74. data/vcr/vcr_cassettes/V23/project_member/index_403.yml +40 -0
  75. data/vcr/vcr_cassettes/V23/project_member/index_not_found.yml +42 -0
  76. data/vcr/vcr_cassettes/V23/provider/create.yml +44 -0
  77. data/vcr/vcr_cassettes/V23/provider/delete.yml +38 -0
  78. data/vcr/vcr_cassettes/V23/provider/index.yml +42 -0
  79. data/vcr/vcr_cassettes/V23/provider/show.yml +42 -0
  80. data/vcr/vcr_cassettes/V23/scenario/create.yml +42 -0
  81. data/vcr/vcr_cassettes/V23/scenario/create_conflict.yml +44 -0
  82. data/vcr/vcr_cassettes/V23/scenario/delete.yml +38 -0
  83. data/vcr/vcr_cassettes/V23/scenario/deploy.yml +164 -0
  84. data/vcr/vcr_cassettes/V23/scenario/download_aiml.yml +43 -0
  85. data/vcr/vcr_cassettes/V23/scenario/index.yml +43 -0
  86. data/vcr/vcr_cassettes/V23/scenario/show.yml +42 -0
  87. data/vcr/vcr_cassettes/V23/scenario/update.yml +40 -0
  88. data/vcr/vcr_cassettes/V23/scenario/upload_aiml.yml +45 -0
  89. data/vcr/vcr_cassettes/V23/scenario/upload_archive.yml +46 -0
  90. data/vcr/vcr_cassettes/V23/scenario/upload_dat.yml +46 -0
  91. data/vcr/vcr_cassettes/V23/set/create.yml +45 -0
  92. data/vcr/vcr_cassettes/V23/set/create_400.yml +48 -0
  93. data/vcr/vcr_cassettes/V23/set/delete.yml +38 -0
  94. data/vcr/vcr_cassettes/V23/set/index_all.yml +43 -0
  95. data/vcr/vcr_cassettes/V23/set/index_find.yml +43 -0
  96. data/vcr/vcr_cassettes/V23/set/index_where.yml +43 -0
  97. data/vcr/vcr_cassettes/V23/set/save.yml +45 -0
  98. data/vcr/vcr_cassettes/V23/set/save_400.yml +48 -0
  99. data/vcr/vcr_cassettes/V23/set/show_find.yml +43 -0
  100. data/vcr/vcr_cassettes/V23/set/show_where.yml +43 -0
  101. data/vcr/vcr_cassettes/V26/account/count.yml +42 -0
  102. data/vcr/vcr_cassettes/V26/account/create.yml +44 -0
  103. data/vcr/vcr_cassettes/V26/account/delete.yml +38 -0
  104. data/vcr/vcr_cassettes/V26/account/index.yml +43 -0
  105. data/vcr/vcr_cassettes/V26/account/show.yml +44 -0
  106. data/vcr/vcr_cassettes/V26/account/update.yml +41 -0
  107. data/vcr/vcr_cassettes/V26/base/login.yml +44 -0
  108. data/vcr/vcr_cassettes/V26/base/login_400.yml +47 -0
  109. data/vcr/vcr_cassettes/V26/base/logout.yml +40 -0
  110. data/vcr/vcr_cassettes/V26/base/logout_400.yml +45 -0
  111. data/vcr/vcr_cassettes/V26/bot/create.yml +43 -0
  112. data/vcr/vcr_cassettes/V26/bot/create_conflict.yml +45 -0
  113. data/vcr/vcr_cassettes/V26/bot/delete.yml +38 -0
  114. data/vcr/vcr_cassettes/V26/bot/deploy.yml +164 -0
  115. data/vcr/vcr_cassettes/V26/bot/download_aiml.yml +43 -0
  116. data/vcr/vcr_cassettes/V26/bot/download_archive.yml +43 -0
  117. data/vcr/vcr_cassettes/V26/bot/download_dat.yml +43 -0
  118. data/vcr/vcr_cassettes/V26/bot/index.yml +43 -0
  119. data/vcr/vcr_cassettes/V26/bot/index_not_found.yml +42 -0
  120. data/vcr/vcr_cassettes/V26/bot/show.yml +43 -0
  121. data/vcr/vcr_cassettes/V26/bot/upload_aiml.yml +45 -0
  122. data/vcr/vcr_cassettes/V26/bot/upload_archive.yml +46 -0
  123. data/vcr/vcr_cassettes/V26/bot/upload_dat.yml +46 -0
  124. data/vcr/vcr_cassettes/V26/config/delete.yml +38 -0
  125. data/vcr/vcr_cassettes/V26/config/index.yml +120 -0
  126. data/vcr/vcr_cassettes/V26/config/show.yml +42 -0
  127. data/vcr/vcr_cassettes/V26/config/update.yml +42 -0
  128. data/vcr/vcr_cassettes/V26/default_predicate/create.yml +42 -0
  129. data/vcr/vcr_cassettes/V26/default_predicate/delete.yml +38 -0
  130. data/vcr/vcr_cassettes/V26/default_predicate/index.yml +120 -0
  131. data/vcr/vcr_cassettes/V26/default_predicate/index_not_found.yml +120 -0
  132. data/vcr/vcr_cassettes/V26/default_predicate/update.yml +40 -0
  133. data/vcr/vcr_cassettes/V26/entry/delete.yml +38 -0
  134. data/vcr/vcr_cassettes/V26/entry/save.yml +45 -0
  135. data/vcr/vcr_cassettes/V26/map/create.yml +45 -0
  136. data/vcr/vcr_cassettes/V26/map/create_400.yml +48 -0
  137. data/vcr/vcr_cassettes/V26/map/delete.yml +38 -0
  138. data/vcr/vcr_cassettes/V26/map/index_all.yml +42 -0
  139. data/vcr/vcr_cassettes/V26/map/index_find.yml +42 -0
  140. data/vcr/vcr_cassettes/V26/map/index_where.yml +42 -0
  141. data/vcr/vcr_cassettes/V26/map/save.yml +45 -0
  142. data/vcr/vcr_cassettes/V26/map/save_400.yml +48 -0
  143. data/vcr/vcr_cassettes/V26/map/show_find.yml +43 -0
  144. data/vcr/vcr_cassettes/V26/map/show_where.yml +43 -0
  145. data/vcr/vcr_cassettes/V26/organization/create.yml +44 -0
  146. data/vcr/vcr_cassettes/V26/organization/delete.yml +38 -0
  147. data/vcr/vcr_cassettes/V26/organization/index.yml +42 -0
  148. data/vcr/vcr_cassettes/V26/organization/show.yml +42 -0
  149. data/vcr/vcr_cassettes/V26/organization/update.yml +40 -0
  150. data/vcr/vcr_cassettes/V26/organization_member/create.yml +42 -0
  151. data/vcr/vcr_cassettes/V26/organization_member/delete.yml +38 -0
  152. data/vcr/vcr_cassettes/V26/organization_member/index.yml +42 -0
  153. data/vcr/vcr_cassettes/V26/organization_member/index_404.yml +42 -0
  154. data/vcr/vcr_cassettes/V26/organization_member/index_not_found.yml +42 -0
  155. data/vcr/vcr_cassettes/V26/predicate_name/create.yml +42 -0
  156. data/vcr/vcr_cassettes/V26/predicate_name/delete.yml +38 -0
  157. data/vcr/vcr_cassettes/V26/predicate_name/index.yml +42 -0
  158. data/vcr/vcr_cassettes/V26/predicate_name/index_all.yml +42 -0
  159. data/vcr/vcr_cassettes/V26/predicate_name/index_find.yml +42 -0
  160. data/vcr/vcr_cassettes/V26/predicate_name/index_where.yml +42 -0
  161. data/vcr/vcr_cassettes/V26/project/create.yml +44 -0
  162. data/vcr/vcr_cassettes/V26/project/create_conflict.yml +44 -0
  163. data/vcr/vcr_cassettes/V26/project/delete.yml +38 -0
  164. data/vcr/vcr_cassettes/V26/project/index.yml +45 -0
  165. data/vcr/vcr_cassettes/V26/project/show.yml +43 -0
  166. data/vcr/vcr_cassettes/V26/project_member/create.yml +42 -0
  167. data/vcr/vcr_cassettes/V26/project_member/delete.yml +38 -0
  168. data/vcr/vcr_cassettes/V26/project_member/index.yml +42 -0
  169. data/vcr/vcr_cassettes/V26/project_member/index_403.yml +45 -0
  170. data/vcr/vcr_cassettes/V26/project_member/index_not_found.yml +42 -0
  171. data/vcr/vcr_cassettes/V26/provider/create.yml +44 -0
  172. data/vcr/vcr_cassettes/V26/provider/delete.yml +38 -0
  173. data/vcr/vcr_cassettes/V26/provider/index.yml +42 -0
  174. data/vcr/vcr_cassettes/V26/provider/show.yml +42 -0
  175. data/vcr/vcr_cassettes/V26/scenario/create.yml +42 -0
  176. data/vcr/vcr_cassettes/V26/scenario/create_conflict.yml +44 -0
  177. data/vcr/vcr_cassettes/V26/scenario/delete.yml +38 -0
  178. data/vcr/vcr_cassettes/V26/scenario/deploy.yml +164 -0
  179. data/vcr/vcr_cassettes/V26/scenario/download_aiml.yml +43 -0
  180. data/vcr/vcr_cassettes/V26/scenario/index.yml +43 -0
  181. data/vcr/vcr_cassettes/V26/scenario/show.yml +42 -0
  182. data/vcr/vcr_cassettes/V26/scenario/update.yml +40 -0
  183. data/vcr/vcr_cassettes/V26/scenario/upload_aiml.yml +45 -0
  184. data/vcr/vcr_cassettes/V26/scenario/upload_archive.yml +46 -0
  185. data/vcr/vcr_cassettes/V26/scenario/upload_dat.yml +46 -0
  186. data/vcr/vcr_cassettes/V26/set/create.yml +45 -0
  187. data/vcr/vcr_cassettes/V26/set/create_400.yml +48 -0
  188. data/vcr/vcr_cassettes/V26/set/delete.yml +38 -0
  189. data/vcr/vcr_cassettes/V26/set/index_all.yml +42 -0
  190. data/vcr/vcr_cassettes/V26/set/index_find.yml +42 -0
  191. data/vcr/vcr_cassettes/V26/set/index_where.yml +42 -0
  192. data/vcr/vcr_cassettes/V26/set/save.yml +45 -0
  193. data/vcr/vcr_cassettes/V26/set/save_400.yml +48 -0
  194. data/vcr/vcr_cassettes/V26/set/show_find.yml +43 -0
  195. data/vcr/vcr_cassettes/V26/set/show_where.yml +43 -0
  196. data/vcr/vcr_cassettes/spontaneous/dialogue.yml +47 -0
  197. data/vcr/vcr_cassettes/spontaneous/dialogue_404.yml +46 -0
  198. data/vcr/vcr_cassettes/spontaneous/registration.yml +42 -0
  199. data/vcr/vcr_cassettes/spontaneous/registration_404.yml +42 -0
  200. metadata +194 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8d5ed12b21cda6ecf562f293c3ca33ec2053200d910d4a26bf77f0ff29467fae
4
- data.tar.gz: c81c539dbe8cf4e1ba20ddce48eb8ae80ac6006fb36be1e4edd05407ee334920
3
+ metadata.gz: 6ab47b65c9fe90df65d2f3564344818d937bc177b1d4f278850c0b5c475c32af
4
+ data.tar.gz: 0776ea66b71711e8e89b0c2eedd91570aa3a7b7946625c35c2808e95f337effa
5
5
  SHA512:
6
- metadata.gz: da8d0a357eede445f3b172bf36ba69bddc5f98fafd138f027af20d12158994b3197f556262a2266ebb7415b365a881fbb8ddb8e845babdee91ff48c421482cd0
7
- data.tar.gz: 8d85d2ae501e73379baf89cd783b7407f5063abfd016ee8766d09f343d4e20f48be045b788d4bf75570380a98d7411cb7752abedae19caabdb7d3982722beff9
6
+ metadata.gz: 6e8db54db4b0214cca95e255c35cdce111bd3fa85824b8231b7178c5d492dcbe5dbe97b6229f455d76f9e0f29745a95d3cc068b49c758544e1c163ae5a241e30
7
+ data.tar.gz: 2d8b95ed619ab0ff869e1bf3e0350c1e474e23c77dce81ee132957db2ae5e6fa97af6110426758bc3fd8a141c22360a2c32ed42236a10ffaa3316f665b4d6f1e
data/.gitignore CHANGED
@@ -9,5 +9,3 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
-
13
- /vcr/
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- docomo-nlu (0.2.0)
4
+ docomo-nlu (0.2.1)
5
5
  activeresource (~> 5.0.0)
6
6
  bundler
7
7
  faraday
@@ -19,7 +19,6 @@ require "tempfile"
19
19
  module DocomoNlu
20
20
  module Management::V26
21
21
  class AIMLBase < Base
22
- ## For AIML
23
22
 
24
23
  def download(extra_path = "")
25
24
  prefix_options[:bot_id] ||= botId
@@ -47,50 +46,6 @@ module DocomoNlu
47
46
  self.class.deploy(prefix_options)
48
47
  end
49
48
 
50
- ## For FAQ
51
-
52
- def upload_userdic(file)
53
- prefix_options[:bot_id] ||= botId
54
- prefix_options[:method] = "userDic"
55
- self.class.upload(file, prefix_options)
56
- end
57
-
58
- def upload_stopkey(file)
59
- prefix_options[:bot_id] ||= botId
60
- prefix_options[:method] = "stopkey"
61
- self.class.upload(file, prefix_options)
62
- end
63
-
64
- def download_stopkey
65
- prefix_options[:bot_id] ||= botId
66
- prefix_options[:method] = "stopkey"
67
- @attributes[:stopkey] = self.class.download(prefix_options).file
68
- end
69
-
70
- def upload_truthlist(file)
71
- prefix_options[:bot_id] ||= botId
72
- prefix_options[:method] = "truthlist"
73
- self.class.upload(file, prefix_options)
74
- end
75
-
76
- def download_truthlist
77
- prefix_options[:bot_id] ||= botId
78
- prefix_options[:method] = "truthlist"
79
- @attributes[:truthlist] = self.class.download(prefix_options).file
80
- end
81
-
82
- def upload_entry(file)
83
- prefix_options[:bot_id] ||= botId
84
- prefix_options[:method] = "entry"
85
- self.class.upload(file, prefix_options)
86
- end
87
-
88
- def check_faq_status(method)
89
- prefix_options[:bot_id] ||= botId
90
- prefix_options[:method] = method
91
- self.class.check_status(:faq, "#{FileModel.collection_path(prefix_options)}/status")
92
- end
93
-
94
49
  class << self
95
50
  def download(prefix_options, extra_path = "")
96
51
  conn = Faraday.new(url: site.to_s, ssl: { verify: false }) do |builder|
@@ -160,39 +115,15 @@ module DocomoNlu
160
115
 
161
116
  def check_status(method, path)
162
117
  case method
163
- when :compile, :faq then JSON.parse(connection.get(path, headers).body)["status"]
164
- when :transfer then JSON.parse(connection.get(path, headers).body)["transferStatusResponses"][0]["status"]
118
+ when :compile then JSON.parse(connection.get(path, headers).body)["status"]
119
+ when :transfer then JSON.parse(connection.get(path, headers).body)["transferStatusResponses"][0]["status"]
165
120
  end
166
121
  end
167
-
168
- # def generate_file(response, method)
169
- # case method
170
- # when :aiml, :dat then
171
- # Tempfile.open(["docomo-nlu", ".#{prefix_options[:method].to_s}"]) do |f|
172
- # f.write response.body.force_encoding("UTF-8")
173
- # f
174
- # end
175
- # when :zip then
176
- # zip_file = Tempfile.new(["docomo-nlu", ".#{prefix_options[:method].to_s.gsub(/archive/, "zip")}"])
177
- # Zip::OutputStream.open(zip_file.path) do |zip|
178
- # @targets.each do |target|
179
- # zip.put_next_entry("#{target.filename}.pdf")
180
- # zip.print Net::HTTP.get URI.parse(target.url)
181
- # end
182
- # end
183
- # Zip::File.open_buffer(file.read) do |zf|
184
- # zf.each do |entry|
185
- # p entry.name # ファイル名
186
- # p entry.get_input_stream.read # ファイルの中身
187
- # end
188
- # end
189
- # end
190
- # end
191
122
  end
192
123
 
193
124
  class FileModel < Base
194
125
  self.element_name = ""
195
- self.prefix = "/management/v2.6/projects/:project_id/bots/:bot_id/:method"
126
+ self.prefix = "/management/#{DocomoNlu.config.nlu_version}/projects/:project_id/bots/:bot_id/:method"
196
127
  end
197
128
  end
198
129
  end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DocomoNlu
4
+ module Management::V26
5
+ class Entry < Base
6
+ self.element_name = ""
7
+ self.prefix = "/management/v2.6/projects/:project_id/bots/:bot_id/:method"
8
+
9
+ def initialize(attributes = {}, persisted = false)
10
+ super(attributes, persisted)
11
+ prefix_options[:method] = "entry"
12
+ end
13
+
14
+ def save
15
+ self.class.upload(attributes[:file], prefix_options)
16
+ end
17
+
18
+ def status
19
+ self.class.check_status(prefix_options)
20
+ end
21
+
22
+ class << self
23
+
24
+ def check_status(prefix_options)
25
+ JSON.parse(connection.get("#{collection_path(prefix_options)}/status", headers).body)
26
+ end
27
+
28
+ def upload(file, prefix_options)
29
+ conn = Faraday.new(url: site.to_s, ssl: { verify: false }) do |builder|
30
+ builder.request :multipart # マルチパートでデータを送信
31
+ builder.request :url_encoded
32
+ builder.adapter :net_http
33
+ end
34
+ conn.headers["Authorization"] = access_token
35
+ params = {
36
+ uploadFile: Faraday::UploadIO.new(file.path, "text/plain"),
37
+ }
38
+ response = conn.post collection_path(prefix_options), params
39
+ check_response(response)
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -1,7 +1,8 @@
1
1
  # frozen_string_literal: true
2
-
3
2
  module DocomoNlu
4
3
  module Management
4
+ NAMESPACE = (DocomoNlu.config.nlu_version == "v2.6" ? "V26" : "V23" ).freeze
5
+
5
6
  module V23
6
7
  autoload :Account, "docomo-nlu/management/V23/account"
7
8
  autoload :AIMLBase, "docomo-nlu/management/V23/aiml_base"
@@ -33,6 +34,7 @@ module DocomoNlu
33
34
  autoload :Bot, "docomo-nlu/management/V26/bot"
34
35
  autoload :Config, "docomo-nlu/management/V26/config"
35
36
  autoload :DefaultPredicate, "docomo-nlu/management/V26/default_predicate"
37
+ autoload :Entry, "docomo-nlu/management/V26/entry"
36
38
  autoload :MultipartBase, "docomo-nlu/management/V26/multipart_base"
37
39
  autoload :Map, "docomo-nlu/management/V26/map"
38
40
  autoload :NGWord, "docomo-nlu/management/V26/ng_word"
@@ -50,5 +52,30 @@ module DocomoNlu
50
52
  autoload :Set, "docomo-nlu/management/V26/set"
51
53
  autoload :TaskProject, "docomo-nlu/management/V26/task_project"
52
54
  end
55
+
56
+ Account = const_get "DocomoNlu::Management::#{NAMESPACE}::Account"
57
+ AIMLBase = const_get "DocomoNlu::Management::#{NAMESPACE}::Account"
58
+ Base = const_get "DocomoNlu::Management::#{NAMESPACE}::Base"
59
+ Bot = const_get "DocomoNlu::Management::#{NAMESPACE}::Bot"
60
+ Config = const_get "DocomoNlu::Management::#{NAMESPACE}::Config"
61
+ Entry = const_get "DocomoNlu::Management::#{NAMESPACE}::Entry"
62
+ DefaultPredicate = const_get "DocomoNlu::Management::#{NAMESPACE}::DefaultPredicate"
63
+ MultipartBase = const_get "DocomoNlu::Management::#{NAMESPACE}::MultipartBase"
64
+ Map = const_get "DocomoNlu::Management::#{NAMESPACE}::Map"
65
+ NGWord = const_get "DocomoNlu::Management::#{NAMESPACE}::NGWord"
66
+ OKWord = const_get "DocomoNlu::Management::#{NAMESPACE}::OKWord"
67
+ OrganizationMember = const_get "DocomoNlu::Management::#{NAMESPACE}::OrganizationMember"
68
+ Organization = const_get "DocomoNlu::Management::#{NAMESPACE}::Organization"
69
+ PredicateName = const_get "DocomoNlu::Management::#{NAMESPACE}::PredicateName"
70
+ ProjectMember = const_get "DocomoNlu::Management::#{NAMESPACE}::ProjectMember"
71
+ Project = const_get "DocomoNlu::Management::#{NAMESPACE}::Project"
72
+ Property = const_get "DocomoNlu::Management::#{NAMESPACE}::Property"
73
+ Provider = const_get "DocomoNlu::Management::#{NAMESPACE}::Provider"
74
+ ScenarioProject = const_get "DocomoNlu::Management::#{NAMESPACE}::ScenarioProject"
75
+ ScenarioUtil = const_get "DocomoNlu::Management::#{NAMESPACE}::ScenarioUtil"
76
+ Scenario = const_get "DocomoNlu::Management::#{NAMESPACE}::Scenario"
77
+ Set = const_get "DocomoNlu::Management::#{NAMESPACE}::Set"
78
+ TaskProject = const_get "DocomoNlu::Management::#{NAMESPACE}::TaskProject"
79
+
53
80
  end
54
81
  end
@@ -4,6 +4,7 @@ module DocomoNlu
4
4
  class Spontaneous < ActiveResource::Base
5
5
  attr_reader :result
6
6
  attr_reader :error
7
+ cattr_accessor :static_headers
7
8
  self.site = DocomoNlu.config.nlu_host
8
9
 
9
10
  ## Remove format in path (remove .json)
@@ -12,6 +13,8 @@ module DocomoNlu
12
13
  ## Setting Format
13
14
  self.format = :json
14
15
 
16
+ self.static_headers = headers
17
+
15
18
  def initialize
16
19
  super
17
20
  {
@@ -25,7 +28,7 @@ module DocomoNlu
25
28
  end
26
29
  end
27
30
 
28
- def registration(app_kind = "docomo-nlu", app_id = "", registration_id = "", notification = false)
31
+ def registration(app_id = "", registration_id = "docomo-nlu", app_kind = "docomo-nlu", notification = false)
29
32
  body = {
30
33
  bot_id: @attributes[:botId],
31
34
  app_id: app_id,
@@ -45,5 +48,13 @@ module DocomoNlu
45
48
  res = connection.post("/SpontaneousDialogueServer/dialogue", @attributes.to_json, self.class.headers)
46
49
  @result = JSON.parse(res.body)
47
50
  end
51
+
52
+ class << self
53
+ def headers
54
+ new_headers = static_headers.clone
55
+ new_headers["Content-Type"] = "application/json;charset=UTF-8"
56
+ new_headers
57
+ end
58
+ end
48
59
  end
49
60
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DocomoNlu
4
- VERSION = "0.2.0"
4
+ VERSION = "0.2.1"
5
5
  end
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: "<Host>/management/v2.2/accounts/count"
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Authorization:
13
+ - "<AdminAccessToken>"
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Date:
24
+ - Wed, 14 Nov 2018 03:58:13 GMT
25
+ Content-Type:
26
+ - application/json;charset=utf-8
27
+ Content-Length:
28
+ - '13'
29
+ Connection:
30
+ - keep-alive
31
+ Server:
32
+ - Apache
33
+ X-Content-Type-Options:
34
+ - nosniff
35
+ X-Frame-Options:
36
+ - SAMEORIGIN
37
+ body:
38
+ encoding: UTF-8
39
+ string: '{"count":454}'
40
+ http_version:
41
+ recorded_at: Wed, 14 Nov 2018 03:58:13 GMT
42
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: "<Host>/management/v2.2/accounts"
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"accountName":"test_account1","password":"testaccount20180821","authorization":2,"enable":true}'
9
+ headers:
10
+ Content-Type:
11
+ - application/json
12
+ Authorization:
13
+ - "<AdminAccessToken>"
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ User-Agent:
19
+ - Ruby
20
+ response:
21
+ status:
22
+ code: 201
23
+ message: Created
24
+ headers:
25
+ Date:
26
+ - Wed, 14 Nov 2018 03:58:03 GMT
27
+ Content-Type:
28
+ - application/json;charset=utf-8
29
+ Content-Length:
30
+ - '17'
31
+ Connection:
32
+ - keep-alive
33
+ Server:
34
+ - Apache
35
+ X-Content-Type-Options:
36
+ - nosniff
37
+ X-Frame-Options:
38
+ - SAMEORIGIN
39
+ body:
40
+ encoding: UTF-8
41
+ string: '{"accountId":606}'
42
+ http_version:
43
+ recorded_at: Wed, 14 Nov 2018 03:58:04 GMT
44
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: delete
5
+ uri: "<Host>/management/v2.2/accounts/237"
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Authorization:
13
+ - "<AdminAccessToken>"
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 204
21
+ message: No Content
22
+ headers:
23
+ Date:
24
+ - Wed, 14 Nov 2018 03:58:09 GMT
25
+ Connection:
26
+ - keep-alive
27
+ Server:
28
+ - Apache
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ X-Frame-Options:
32
+ - SAMEORIGIN
33
+ body:
34
+ encoding: UTF-8
35
+ string: ''
36
+ http_version:
37
+ recorded_at: Wed, 14 Nov 2018 03:58:12 GMT
38
+ recorded_with: VCR 4.0.0