ibm_watson 1.0.0.rc2 → 1.0.0.rc3
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 +4 -4
- data/README.md +33 -27
- data/lib/ibm_watson/assistant_v1.rb +6 -80
- data/lib/ibm_watson/assistant_v2.rb +6 -38
- data/lib/ibm_watson/compare_comply_v1.rb +6 -47
- data/lib/ibm_watson/discovery_v1.rb +12 -297
- data/lib/ibm_watson/language_translator_v3.rb +6 -41
- data/lib/ibm_watson/natural_language_classifier_v1.rb +6 -35
- data/lib/ibm_watson/natural_language_understanding_v1.rb +6 -38
- data/lib/ibm_watson/personality_insights_v3.rb +6 -30
- data/lib/ibm_watson/speech_to_text_v1.rb +9 -130
- data/lib/ibm_watson/text_to_speech_v1.rb +6 -50
- data/lib/ibm_watson/tone_analyzer_v3.rb +6 -31
- data/lib/ibm_watson/version.rb +1 -1
- data/lib/ibm_watson/visual_recognition_v3.rb +8 -103
- data/lib/ibm_watson/websocket/speech_to_text_websocket_listener.rb +5 -5
- data/lib/ibm_watson.rb +9 -0
- data/test/integration/test_assistant_v1.rb +1 -1
- data/test/integration/test_assistant_v2.rb +1 -1
- data/test/integration/test_compare_comply_v1.rb +1 -1
- data/test/integration/test_discovery_v1.rb +1 -4
- data/test/integration/test_language_translator_v3.rb +1 -1
- data/test/integration/test_natural_language_classifier_v1.rb +1 -1
- data/test/integration/test_natural_language_understanding_v1.rb +1 -1
- data/test/integration/test_personality_insights_v3.rb +1 -1
- data/test/integration/test_speech_to_text_v1.rb +2 -2
- data/test/integration/test_text_to_speech_v1.rb +1 -1
- data/test/integration/test_tone_analyzer_v3.rb +1 -1
- data/test/integration/test_visual_recognition_v3.rb +1 -8
- data/test/unit/test_assistant_v1.rb +45 -45
- data/test/unit/test_assistant_v2.rb +3 -3
- data/test/unit/test_compare_comply_v1.rb +12 -12
- data/test/unit/test_configure_http_client.rb +37 -13
- data/test/unit/test_discovery_v1.rb +47 -139
- data/test/unit/test_language_translator_v3.rb +13 -26
- data/test/unit/test_natural_language_classifier_v1.rb +2 -2
- data/test/unit/test_natural_language_understanding_v1.rb +5 -5
- data/test/unit/test_personality_insights_v3.rb +8 -8
- data/test/unit/test_speech_to_text_v1.rb +21 -21
- data/test/unit/test_text_to_speech_v1.rb +5 -5
- data/test/unit/test_tone_analyzer_v3.rb +9 -9
- data/test/unit/test_vcap_using_personality_insights.rb +8 -8
- data/test/unit/test_visual_recognition_v3.rb +8 -75
- metadata +4 -4
@@ -47,44 +47,21 @@ module IBMWatson
|
|
47
47
|
# Instead, specify a version date that is compatible with your
|
48
48
|
# application, and don't change it until your application is
|
49
49
|
# ready for a later version.
|
50
|
-
# @option args
|
51
|
-
#
|
52
|
-
#
|
53
|
-
# @option args username [String] The username used to authenticate with the service.
|
54
|
-
# Username and password credentials are only required to run your
|
55
|
-
# application locally or outside of IBM Cloud. When running on
|
56
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
57
|
-
# `VCAP_SERVICES` environment variable.
|
58
|
-
# @option args password [String] The password used to authenticate with the service.
|
59
|
-
# Username and password credentials are only required to run your
|
60
|
-
# application locally or outside of IBM Cloud. When running on
|
61
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
62
|
-
# `VCAP_SERVICES` environment variable.
|
63
|
-
# @option args iam_apikey [String] An API key that can be used to request IAM tokens. If
|
64
|
-
# this API key is provided, the SDK will manage the token and handle the
|
65
|
-
# refreshing.
|
66
|
-
# @option args iam_access_token [String] An IAM access token is fully managed by the application.
|
67
|
-
# Responsibility falls on the application to refresh the token, either before
|
68
|
-
# it expires or reactively upon receiving a 401 from the service as any requests
|
69
|
-
# made with an expired token will fail.
|
70
|
-
# @option args iam_url [String] An optional URL for the IAM service API. Defaults to
|
71
|
-
# 'https://iam.cloud.ibm.com/identity/token'.
|
72
|
-
# @option args iam_client_id [String] An optional client id for the IAM service API.
|
73
|
-
# @option args iam_client_secret [String] An optional client secret for the IAM service API.
|
74
|
-
# @option args authentication_type [STRING] Specifies the authentication pattern to use. Values that it
|
75
|
-
# takes are basic, iam or icp4d.
|
50
|
+
# @option args service_url [String] The base service URL to use when contacting the service.
|
51
|
+
# The base service_url may differ between IBM Cloud regions.
|
52
|
+
# @option args authenticator [Object] The Authenticator instance to be configured for this service.
|
76
53
|
def initialize(args = {})
|
77
54
|
@__async_initialized__ = false
|
78
55
|
defaults = {}
|
79
56
|
defaults[:version] = nil
|
80
|
-
defaults[:
|
57
|
+
defaults[:service_url] = "https://gateway.watsonplatform.net/language-translator/api"
|
81
58
|
defaults[:authenticator] = nil
|
82
|
-
defaults[:authentication_type] = nil
|
83
59
|
args = defaults.merge(args)
|
84
60
|
@version = args[:version]
|
85
61
|
raise ArgumentError.new("version must be provided") if @version.nil?
|
86
62
|
|
87
|
-
args[:
|
63
|
+
args[:service_name] = "language_translator"
|
64
|
+
args[:authenticator] = IBMCloudSdkCore::ConfigBasedAuthenticatorFactory.new.get_authenticator(service_name: args[:service_name]) if args[:authenticator].nil?
|
88
65
|
super
|
89
66
|
end
|
90
67
|
|
@@ -124,7 +101,6 @@ module IBMWatson
|
|
124
101
|
|
125
102
|
method_url = "/v3/translate"
|
126
103
|
|
127
|
-
headers = authenticator.authenticate(headers)
|
128
104
|
response = request(
|
129
105
|
method: "POST",
|
130
106
|
url: method_url,
|
@@ -157,7 +133,6 @@ module IBMWatson
|
|
157
133
|
|
158
134
|
method_url = "/v3/identifiable_languages"
|
159
135
|
|
160
|
-
headers = authenticator.authenticate(headers)
|
161
136
|
response = request(
|
162
137
|
method: "GET",
|
163
138
|
url: method_url,
|
@@ -191,7 +166,6 @@ module IBMWatson
|
|
191
166
|
|
192
167
|
method_url = "/v3/identify"
|
193
168
|
|
194
|
-
headers = authenticator.authenticate(headers)
|
195
169
|
response = request(
|
196
170
|
method: "POST",
|
197
171
|
url: method_url,
|
@@ -232,7 +206,6 @@ module IBMWatson
|
|
232
206
|
|
233
207
|
method_url = "/v3/models"
|
234
208
|
|
235
|
-
headers = authenticator.authenticate(headers)
|
236
209
|
response = request(
|
237
210
|
method: "GET",
|
238
211
|
url: method_url,
|
@@ -309,7 +282,6 @@ module IBMWatson
|
|
309
282
|
|
310
283
|
method_url = "/v3/models"
|
311
284
|
|
312
|
-
headers = authenticator.authenticate(headers)
|
313
285
|
response = request(
|
314
286
|
method: "POST",
|
315
287
|
url: method_url,
|
@@ -341,7 +313,6 @@ module IBMWatson
|
|
341
313
|
|
342
314
|
method_url = "/v3/models/%s" % [ERB::Util.url_encode(model_id)]
|
343
315
|
|
344
|
-
headers = authenticator.authenticate(headers)
|
345
316
|
response = request(
|
346
317
|
method: "DELETE",
|
347
318
|
url: method_url,
|
@@ -374,7 +345,6 @@ module IBMWatson
|
|
374
345
|
|
375
346
|
method_url = "/v3/models/%s" % [ERB::Util.url_encode(model_id)]
|
376
347
|
|
377
|
-
headers = authenticator.authenticate(headers)
|
378
348
|
response = request(
|
379
349
|
method: "GET",
|
380
350
|
url: method_url,
|
@@ -405,7 +375,6 @@ module IBMWatson
|
|
405
375
|
|
406
376
|
method_url = "/v3/documents"
|
407
377
|
|
408
|
-
headers = authenticator.authenticate(headers)
|
409
378
|
response = request(
|
410
379
|
method: "GET",
|
411
380
|
url: method_url,
|
@@ -467,7 +436,6 @@ module IBMWatson
|
|
467
436
|
|
468
437
|
method_url = "/v3/documents"
|
469
438
|
|
470
|
-
headers = authenticator.authenticate(headers)
|
471
439
|
response = request(
|
472
440
|
method: "POST",
|
473
441
|
url: method_url,
|
@@ -499,7 +467,6 @@ module IBMWatson
|
|
499
467
|
|
500
468
|
method_url = "/v3/documents/%s" % [ERB::Util.url_encode(document_id)]
|
501
469
|
|
502
|
-
headers = authenticator.authenticate(headers)
|
503
470
|
response = request(
|
504
471
|
method: "GET",
|
505
472
|
url: method_url,
|
@@ -530,7 +497,6 @@ module IBMWatson
|
|
530
497
|
|
531
498
|
method_url = "/v3/documents/%s" % [ERB::Util.url_encode(document_id)]
|
532
499
|
|
533
|
-
headers = authenticator.authenticate(headers)
|
534
500
|
request(
|
535
501
|
method: "DELETE",
|
536
502
|
url: method_url,
|
@@ -575,7 +541,6 @@ module IBMWatson
|
|
575
541
|
|
576
542
|
method_url = "/v3/documents/%s/translated_document" % [ERB::Util.url_encode(document_id)]
|
577
543
|
|
578
|
-
headers = authenticator.authenticate(headers)
|
579
544
|
response = request(
|
580
545
|
method: "GET",
|
581
546
|
url: method_url,
|
@@ -36,40 +36,17 @@ module IBMWatson
|
|
36
36
|
# Construct a new client for the Natural Language Classifier service.
|
37
37
|
#
|
38
38
|
# @param args [Hash] The args to initialize with
|
39
|
-
# @option args
|
40
|
-
#
|
41
|
-
#
|
42
|
-
# @option args username [String] The username used to authenticate with the service.
|
43
|
-
# Username and password credentials are only required to run your
|
44
|
-
# application locally or outside of IBM Cloud. When running on
|
45
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
46
|
-
# `VCAP_SERVICES` environment variable.
|
47
|
-
# @option args password [String] The password used to authenticate with the service.
|
48
|
-
# Username and password credentials are only required to run your
|
49
|
-
# application locally or outside of IBM Cloud. When running on
|
50
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
51
|
-
# `VCAP_SERVICES` environment variable.
|
52
|
-
# @option args iam_apikey [String] An API key that can be used to request IAM tokens. If
|
53
|
-
# this API key is provided, the SDK will manage the token and handle the
|
54
|
-
# refreshing.
|
55
|
-
# @option args iam_access_token [String] An IAM access token is fully managed by the application.
|
56
|
-
# Responsibility falls on the application to refresh the token, either before
|
57
|
-
# it expires or reactively upon receiving a 401 from the service as any requests
|
58
|
-
# made with an expired token will fail.
|
59
|
-
# @option args iam_url [String] An optional URL for the IAM service API. Defaults to
|
60
|
-
# 'https://iam.cloud.ibm.com/identity/token'.
|
61
|
-
# @option args iam_client_id [String] An optional client id for the IAM service API.
|
62
|
-
# @option args iam_client_secret [String] An optional client secret for the IAM service API.
|
63
|
-
# @option args authentication_type [STRING] Specifies the authentication pattern to use. Values that it
|
64
|
-
# takes are basic, iam or icp4d.
|
39
|
+
# @option args service_url [String] The base service URL to use when contacting the service.
|
40
|
+
# The base service_url may differ between IBM Cloud regions.
|
41
|
+
# @option args authenticator [Object] The Authenticator instance to be configured for this service.
|
65
42
|
def initialize(args = {})
|
66
43
|
@__async_initialized__ = false
|
67
44
|
defaults = {}
|
68
|
-
defaults[:
|
45
|
+
defaults[:service_url] = "https://gateway.watsonplatform.net/natural-language-classifier/api"
|
69
46
|
defaults[:authenticator] = nil
|
70
|
-
defaults[:authentication_type] = nil
|
71
47
|
args = defaults.merge(args)
|
72
|
-
args[:
|
48
|
+
args[:service_name] = "natural_language_classifier"
|
49
|
+
args[:authenticator] = IBMCloudSdkCore::ConfigBasedAuthenticatorFactory.new.get_authenticator(service_name: args[:service_name]) if args[:authenticator].nil?
|
73
50
|
super
|
74
51
|
end
|
75
52
|
|
@@ -101,7 +78,6 @@ module IBMWatson
|
|
101
78
|
|
102
79
|
method_url = "/v1/classifiers/%s/classify" % [ERB::Util.url_encode(classifier_id)]
|
103
80
|
|
104
|
-
headers = authenticator.authenticate(headers)
|
105
81
|
response = request(
|
106
82
|
method: "POST",
|
107
83
|
url: method_url,
|
@@ -138,7 +114,6 @@ module IBMWatson
|
|
138
114
|
|
139
115
|
method_url = "/v1/classifiers/%s/classify_collection" % [ERB::Util.url_encode(classifier_id)]
|
140
116
|
|
141
|
-
headers = authenticator.authenticate(headers)
|
142
117
|
response = request(
|
143
118
|
method: "POST",
|
144
119
|
url: method_url,
|
@@ -192,7 +167,6 @@ module IBMWatson
|
|
192
167
|
|
193
168
|
method_url = "/v1/classifiers"
|
194
169
|
|
195
|
-
headers = authenticator.authenticate(headers)
|
196
170
|
response = request(
|
197
171
|
method: "POST",
|
198
172
|
url: method_url,
|
@@ -216,7 +190,6 @@ module IBMWatson
|
|
216
190
|
|
217
191
|
method_url = "/v1/classifiers"
|
218
192
|
|
219
|
-
headers = authenticator.authenticate(headers)
|
220
193
|
response = request(
|
221
194
|
method: "GET",
|
222
195
|
url: method_url,
|
@@ -242,7 +215,6 @@ module IBMWatson
|
|
242
215
|
|
243
216
|
method_url = "/v1/classifiers/%s" % [ERB::Util.url_encode(classifier_id)]
|
244
217
|
|
245
|
-
headers = authenticator.authenticate(headers)
|
246
218
|
response = request(
|
247
219
|
method: "GET",
|
248
220
|
url: method_url,
|
@@ -267,7 +239,6 @@ module IBMWatson
|
|
267
239
|
|
268
240
|
method_url = "/v1/classifiers/%s" % [ERB::Util.url_encode(classifier_id)]
|
269
241
|
|
270
|
-
headers = authenticator.authenticate(headers)
|
271
242
|
request(
|
272
243
|
method: "DELETE",
|
273
244
|
url: method_url,
|
@@ -51,50 +51,21 @@ module IBMWatson
|
|
51
51
|
# Instead, specify a version date that is compatible with your
|
52
52
|
# application, and don't change it until your application is
|
53
53
|
# ready for a later version.
|
54
|
-
# @option args
|
55
|
-
#
|
56
|
-
#
|
57
|
-
# @option args username [String] The username used to authenticate with the service.
|
58
|
-
# Username and password credentials are only required to run your
|
59
|
-
# application locally or outside of IBM Cloud. When running on
|
60
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
61
|
-
# `VCAP_SERVICES` environment variable.
|
62
|
-
# @option args password [String] The password used to authenticate with the service.
|
63
|
-
# Username and password credentials are only required to run your
|
64
|
-
# application locally or outside of IBM Cloud. When running on
|
65
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
66
|
-
# `VCAP_SERVICES` environment variable.
|
67
|
-
# @option args iam_apikey [String] An API key that can be used to request IAM tokens. If
|
68
|
-
# this API key is provided, the SDK will manage the token and handle the
|
69
|
-
# refreshing.
|
70
|
-
# @option args iam_access_token [String] An IAM access token is fully managed by the application.
|
71
|
-
# Responsibility falls on the application to refresh the token, either before
|
72
|
-
# it expires or reactively upon receiving a 401 from the service as any requests
|
73
|
-
# made with an expired token will fail.
|
74
|
-
# @option args iam_url [String] An optional URL for the IAM service API. Defaults to
|
75
|
-
# 'https://iam.cloud.ibm.com/identity/token'.
|
76
|
-
# @option args iam_client_id [String] An optional client id for the IAM service API.
|
77
|
-
# @option args iam_client_secret [String] An optional client secret for the IAM service API.
|
78
|
-
# @option args icp4d_access_token [STRING] A ICP4D(IBM Cloud Pak for Data) access token is
|
79
|
-
# fully managed by the application. Responsibility falls on the application to
|
80
|
-
# refresh the token, either before it expires or reactively upon receiving a 401
|
81
|
-
# from the service as any requests made with an expired token will fail.
|
82
|
-
# @option args icp4d_url [STRING] In order to use an SDK-managed token with ICP4D authentication, this
|
83
|
-
# URL must be passed in.
|
84
|
-
# @option args authentication_type [STRING] Specifies the authentication pattern to use. Values that it
|
85
|
-
# takes are basic, iam or icp4d.
|
54
|
+
# @option args service_url [String] The base service URL to use when contacting the service.
|
55
|
+
# The base service_url may differ between IBM Cloud regions.
|
56
|
+
# @option args authenticator [Object] The Authenticator instance to be configured for this service.
|
86
57
|
def initialize(args = {})
|
87
58
|
@__async_initialized__ = false
|
88
59
|
defaults = {}
|
89
60
|
defaults[:version] = nil
|
90
|
-
defaults[:
|
61
|
+
defaults[:service_url] = "https://gateway.watsonplatform.net/natural-language-understanding/api"
|
91
62
|
defaults[:authenticator] = nil
|
92
|
-
defaults[:authentication_type] = nil
|
93
63
|
args = defaults.merge(args)
|
94
64
|
@version = args[:version]
|
95
65
|
raise ArgumentError.new("version must be provided") if @version.nil?
|
96
66
|
|
97
|
-
args[:
|
67
|
+
args[:service_name] = "natural_language_understanding"
|
68
|
+
args[:authenticator] = IBMCloudSdkCore::ConfigBasedAuthenticatorFactory.new.get_authenticator(service_name: args[:service_name]) if args[:authenticator].nil?
|
98
69
|
super
|
99
70
|
end
|
100
71
|
|
@@ -168,7 +139,6 @@ module IBMWatson
|
|
168
139
|
|
169
140
|
method_url = "/v1/analyze"
|
170
141
|
|
171
|
-
headers = authenticator.authenticate(headers)
|
172
142
|
response = request(
|
173
143
|
method: "POST",
|
174
144
|
url: method_url,
|
@@ -202,7 +172,6 @@ module IBMWatson
|
|
202
172
|
|
203
173
|
method_url = "/v1/models"
|
204
174
|
|
205
|
-
headers = authenticator.authenticate(headers)
|
206
175
|
response = request(
|
207
176
|
method: "GET",
|
208
177
|
url: method_url,
|
@@ -233,7 +202,6 @@ module IBMWatson
|
|
233
202
|
|
234
203
|
method_url = "/v1/models/%s" % [ERB::Util.url_encode(model_id)]
|
235
204
|
|
236
|
-
headers = authenticator.authenticate(headers)
|
237
205
|
response = request(
|
238
206
|
method: "DELETE",
|
239
207
|
url: method_url,
|
@@ -62,44 +62,21 @@ module IBMWatson
|
|
62
62
|
# Instead, specify a version date that is compatible with your
|
63
63
|
# application, and don't change it until your application is
|
64
64
|
# ready for a later version.
|
65
|
-
# @option args
|
66
|
-
#
|
67
|
-
#
|
68
|
-
# @option args username [String] The username used to authenticate with the service.
|
69
|
-
# Username and password credentials are only required to run your
|
70
|
-
# application locally or outside of IBM Cloud. When running on
|
71
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
72
|
-
# `VCAP_SERVICES` environment variable.
|
73
|
-
# @option args password [String] The password used to authenticate with the service.
|
74
|
-
# Username and password credentials are only required to run your
|
75
|
-
# application locally or outside of IBM Cloud. When running on
|
76
|
-
# IBM Cloud, the credentials will be automatically loaded from the
|
77
|
-
# `VCAP_SERVICES` environment variable.
|
78
|
-
# @option args iam_apikey [String] An API key that can be used to request IAM tokens. If
|
79
|
-
# this API key is provided, the SDK will manage the token and handle the
|
80
|
-
# refreshing.
|
81
|
-
# @option args iam_access_token [String] An IAM access token is fully managed by the application.
|
82
|
-
# Responsibility falls on the application to refresh the token, either before
|
83
|
-
# it expires or reactively upon receiving a 401 from the service as any requests
|
84
|
-
# made with an expired token will fail.
|
85
|
-
# @option args iam_url [String] An optional URL for the IAM service API. Defaults to
|
86
|
-
# 'https://iam.cloud.ibm.com/identity/token'.
|
87
|
-
# @option args iam_client_id [String] An optional client id for the IAM service API.
|
88
|
-
# @option args iam_client_secret [String] An optional client secret for the IAM service API.
|
89
|
-
# @option args authentication_type [STRING] Specifies the authentication pattern to use. Values that it
|
90
|
-
# takes are basic, iam or icp4d.
|
65
|
+
# @option args service_url [String] The base service URL to use when contacting the service.
|
66
|
+
# The base service_url may differ between IBM Cloud regions.
|
67
|
+
# @option args authenticator [Object] The Authenticator instance to be configured for this service.
|
91
68
|
def initialize(args = {})
|
92
69
|
@__async_initialized__ = false
|
93
70
|
defaults = {}
|
94
71
|
defaults[:version] = nil
|
95
|
-
defaults[:
|
72
|
+
defaults[:service_url] = "https://gateway.watsonplatform.net/personality-insights/api"
|
96
73
|
defaults[:authenticator] = nil
|
97
|
-
defaults[:authentication_type] = nil
|
98
74
|
args = defaults.merge(args)
|
99
75
|
@version = args[:version]
|
100
76
|
raise ArgumentError.new("version must be provided") if @version.nil?
|
101
77
|
|
102
|
-
args[:
|
78
|
+
args[:service_name] = "personality_insights"
|
79
|
+
args[:authenticator] = IBMCloudSdkCore::ConfigBasedAuthenticatorFactory.new.get_authenticator(service_name: args[:service_name]) if args[:authenticator].nil?
|
103
80
|
super
|
104
81
|
end
|
105
82
|
|
@@ -215,7 +192,6 @@ module IBMWatson
|
|
215
192
|
|
216
193
|
method_url = "/v3/profile"
|
217
194
|
|
218
|
-
headers = authenticator.authenticate(headers)
|
219
195
|
response = request(
|
220
196
|
method: "POST",
|
221
197
|
url: method_url,
|