ibm_watson 0.10.0 → 0.11.0

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: 43dff6c6d57f43207b327503a557e87744ba951da5b1027c1a7d2a7648397cf8
4
- data.tar.gz: 8f61cc4482ff4c611603c1ecfa9c2b33bc725d2540674d4ea35df3b448c49f22
3
+ metadata.gz: 77be503c0c2580751176c1ffaae4f1bf60b44c7941580800f14d6a5313e40437
4
+ data.tar.gz: 6ce107373c372c8ff4f275dd62f402878dc440bf624706d8177a4620f92698f3
5
5
  SHA512:
6
- metadata.gz: 03ca644a872301a195f429c410b19401ce68fc6503145da8362f1e8a4d07f09404c748de5bd15decd750c0ac3a5b85fd9c9c1a9e184bb0efff02e01c5d5df9c6
7
- data.tar.gz: 262432903b74bba5abe80671e9646a8064824077c4114d5d3cd9148f9fb014e77e98f508aa9247890cb328cc855c9a501fe7727d887f7330987b130ba43076e3
6
+ metadata.gz: 9db32ad31b000f454618880bcc0237d75e9980dcfb7c394645fae954e12fdd3919a2e22c2623911c8f28d272b5791b35503fdc596627579698bbdef9591c6b08
7
+ data.tar.gz: 76cf957d401eff267742da48026ed16ab592a5b37573cd8a487183f14a94f8e7e377bacd68e5e460f3e87c461cde4595b2f97fc35ec73e1df1d1a1e7629e0beb
data/README.md CHANGED
@@ -35,8 +35,6 @@ Ruby gem to quickly get started with the various [IBM Watson][wdc] services.
35
35
  ## Before you begin
36
36
  * You need an [IBM Cloud][ibm-cloud-onboarding] account.
37
37
 
38
- > Watson Assistant v2 API is released in beta. For details, see the ["Introducing Watson Assistant"](https://www.ibm.com/blogs/watson/2018/03/the-future-of-watson-conversation-watson-assistant/) blog post.
39
-
40
38
  ## Installation
41
39
 
42
40
  Install the gem:
@@ -250,6 +248,23 @@ assistant.configure_http_client(
250
248
  )
251
249
  ```
252
250
 
251
+ The HTTP client can be configured to disable SSL verification. Note that this has serious security implications - only do this if you really mean to! ⚠️
252
+
253
+ To do this, pass `disable_ssl` as `true` in `configure_http_client()`, like below:
254
+
255
+ ```ruby
256
+ require "ibm_watson/assistant_v1"
257
+ include IBMWatson
258
+
259
+ service = AssistantV1.new(
260
+ version: "<version>",
261
+ username: "<username>",
262
+ password: "<password>",
263
+ )
264
+
265
+ service.configure_http_client(disable_ssl: true)
266
+ ```
267
+
253
268
  ## Using Websockets
254
269
 
255
270
  The Speech-to-Text service supports websockets with the `recognize_using_websocket` method. The method accepts a custom callback class. The `eventmachine` loop that the websocket uses blocks the main thread by default. Here is an example of using the websockets method:
@@ -1398,7 +1398,7 @@ module IBMWatson
1398
1398
  # patterns (as indicated by **type**), but not both. A pattern is a regular
1399
1399
  # expression no longer than 512 characters. For more information about how to
1400
1400
  # specify a pattern, see the
1401
- # [documentation](https://console.bluemix.net/docs/services/conversation/entities.html#creating-entities).
1401
+ # [documentation](https://console.bluemix.net/docs/services/assistant/entities.html#creating-entities).
1402
1402
  # @param value_type [String] Specifies the type of value.
1403
1403
  # @return [DetailedResponse] A `DetailedResponse` object representing the response.
1404
1404
  def create_value(workspace_id:, entity:, value:, metadata: nil, synonyms: nil, patterns: nil, value_type: nil)
@@ -1508,7 +1508,7 @@ module IBMWatson
1508
1508
  # patterns (as indicated by **type**), but not both. A pattern is a regular
1509
1509
  # expression no longer than 512 characters. For more information about how to
1510
1510
  # specify a pattern, see the
1511
- # [documentation](https://console.bluemix.net/docs/services/conversation/entities.html#creating-entities).
1511
+ # [documentation](https://console.bluemix.net/docs/services/assistant/entities.html#creating-entities).
1512
1512
  # @return [DetailedResponse] A `DetailedResponse` object representing the response.
1513
1513
  def update_value(workspace_id:, entity:, value:, new_value: nil, new_metadata: nil, new_type: nil, new_synonyms: nil, new_patterns: nil)
1514
1514
  raise ArgumentError.new("workspace_id must be provided") if workspace_id.nil?
@@ -1881,7 +1881,7 @@ module IBMWatson
1881
1881
  # @param previous_sibling [String] The ID of the previous dialog node.
1882
1882
  # @param output [DialogNodeOutput] The output of the dialog node. For more information about how to specify dialog
1883
1883
  # node output, see the
1884
- # [documentation](https://console.bluemix.net/docs/services/conversation/dialog-overview.html#complex).
1884
+ # [documentation](https://console.bluemix.net/docs/services/assistant/dialog-overview.html#complex).
1885
1885
  # @param context [Object] The context for the dialog node.
1886
1886
  # @param metadata [Object] The metadata for the dialog node.
1887
1887
  # @param next_step [DialogNodeNextStep] The next step to execute following this dialog node.
@@ -2005,7 +2005,7 @@ module IBMWatson
2005
2005
  # @param new_previous_sibling [String] The ID of the previous sibling dialog node.
2006
2006
  # @param new_output [DialogNodeOutput] The output of the dialog node. For more information about how to specify dialog
2007
2007
  # node output, see the
2008
- # [documentation](https://console.bluemix.net/docs/services/conversation/dialog-overview.html#complex).
2008
+ # [documentation](https://console.bluemix.net/docs/services/assistant/dialog-overview.html#complex).
2009
2009
  # @param new_context [Object] The context for the dialog node.
2010
2010
  # @param new_metadata [Object] The metadata for the dialog node.
2011
2011
  # @param new_next_step [DialogNodeNextStep] The next step to execute following this dialog node.
@@ -2120,7 +2120,7 @@ module IBMWatson
2120
2120
  # reverse the sort order, prefix the parameter value with a minus sign (`-`).
2121
2121
  # @param filter [String] A cacheable parameter that limits the results to those matching the specified
2122
2122
  # filter. For more information, see the
2123
- # [documentation](https://console.bluemix.net/docs/services/conversation/filter-reference.html#filter-query-syntax).
2123
+ # [documentation](https://console.bluemix.net/docs/services/assistant/filter-reference.html#filter-query-syntax).
2124
2124
  # @param page_limit [Fixnum] The number of records to return in each page of results.
2125
2125
  # @param cursor [String] A token identifying the page of results to retrieve.
2126
2126
  # @return [DetailedResponse] A `DetailedResponse` object representing the response.
@@ -2162,7 +2162,7 @@ module IBMWatson
2162
2162
  # filter. You must specify a filter query that includes a value for `language`, as
2163
2163
  # well as a value for `workspace_id` or `request.context.metadata.deployment`. For
2164
2164
  # more information, see the
2165
- # [documentation](https://console.bluemix.net/docs/services/conversation/filter-reference.html#filter-query-syntax).
2165
+ # [documentation](https://console.bluemix.net/docs/services/assistant/filter-reference.html#filter-query-syntax).
2166
2166
  # @param sort [String] How to sort the returned log events. You can sort by **request_timestamp**. To
2167
2167
  # reverse the sort order, prefix the parameter value with a minus sign (`-`).
2168
2168
  # @param page_limit [Fixnum] The number of records to return in each page of results.
@@ -2206,7 +2206,7 @@ module IBMWatson
2206
2206
  # You associate a customer ID with data by passing the `X-Watson-Metadata` header
2207
2207
  # with a request that passes data. For more information about personal data and
2208
2208
  # customer IDs, see [Information
2209
- # security](https://console.bluemix.net/docs/services/conversation/information-security.html).
2209
+ # security](https://console.bluemix.net/docs/services/assistant/information-security.html).
2210
2210
  # @param customer_id [String] The customer ID for which all data is to be deleted.
2211
2211
  # @return [nil]
2212
2212
  def delete_user_data(customer_id:)
@@ -785,7 +785,7 @@ module IBMWatson
785
785
  response
786
786
  end
787
787
  #########################
788
- # Expansions
788
+ # Query modifications
789
789
  #########################
790
790
 
791
791
  ##
@@ -1009,6 +1009,82 @@ module IBMWatson
1009
1009
  )
1010
1010
  nil
1011
1011
  end
1012
+
1013
+ ##
1014
+ # @!method create_stopword_list(environment_id:, collection_id:, stopword_file:, stopword_filename: nil)
1015
+ # Create stopword list.
1016
+ # Upload a custom stopword list to use with the specified collection.
1017
+ # @param environment_id [String] The ID of the environment.
1018
+ # @param collection_id [String] The ID of the collection.
1019
+ # @param stopword_file [File] The content of the stopword list to ingest.
1020
+ # @param stopword_filename [String] The filename for stopword_file.
1021
+ # @return [DetailedResponse] A `DetailedResponse` object representing the response.
1022
+ def create_stopword_list(environment_id:, collection_id:, stopword_file:, stopword_filename: nil)
1023
+ raise ArgumentError.new("environment_id must be provided") if environment_id.nil?
1024
+
1025
+ raise ArgumentError.new("collection_id must be provided") if collection_id.nil?
1026
+
1027
+ raise ArgumentError.new("stopword_file must be provided") if stopword_file.nil?
1028
+
1029
+ headers = {
1030
+ }
1031
+
1032
+ params = {
1033
+ "version" => @version
1034
+ }
1035
+
1036
+ form_data = {}
1037
+
1038
+ unless stopword_file.instance_of?(StringIO) || stopword_file.instance_of?(File)
1039
+ stopword_file = stopword_file.respond_to?(:to_json) ? StringIO.new(stopword_file.to_json) : StringIO.new(stopword_file)
1040
+ end
1041
+ stopword_filename = stopword_file.path if stopword_filename.nil? && stopword_file.respond_to?(:path)
1042
+ form_data[:stopword_file] = HTTP::FormData::File.new(stopword_file, content_type: "application/octet-stream", filename: stopword_filename)
1043
+
1044
+ method_url = "/v1/environments/%s/collections/%s/word_lists/stopwords" % [ERB::Util.url_encode(environment_id), ERB::Util.url_encode(collection_id)]
1045
+
1046
+ response = request(
1047
+ method: "POST",
1048
+ url: method_url,
1049
+ headers: headers,
1050
+ params: params,
1051
+ form: form_data,
1052
+ accept_json: true
1053
+ )
1054
+ response
1055
+ end
1056
+
1057
+ ##
1058
+ # @!method delete_stopword_list(environment_id:, collection_id:)
1059
+ # Delete a custom stopword list.
1060
+ # Delete a custom stopword list from the collection. After a custom stopword list is
1061
+ # deleted, the default list is used for the collection.
1062
+ # @param environment_id [String] The ID of the environment.
1063
+ # @param collection_id [String] The ID of the collection.
1064
+ # @return [nil]
1065
+ def delete_stopword_list(environment_id:, collection_id:)
1066
+ raise ArgumentError.new("environment_id must be provided") if environment_id.nil?
1067
+
1068
+ raise ArgumentError.new("collection_id must be provided") if collection_id.nil?
1069
+
1070
+ headers = {
1071
+ }
1072
+
1073
+ params = {
1074
+ "version" => @version
1075
+ }
1076
+
1077
+ method_url = "/v1/environments/%s/collections/%s/word_lists/stopwords" % [ERB::Util.url_encode(environment_id), ERB::Util.url_encode(collection_id)]
1078
+
1079
+ request(
1080
+ method: "DELETE",
1081
+ url: method_url,
1082
+ headers: headers,
1083
+ params: params,
1084
+ accept_json: true
1085
+ )
1086
+ nil
1087
+ end
1012
1088
  #########################
1013
1089
  # Documents
1014
1090
  #########################
@@ -2461,6 +2537,7 @@ module IBMWatson
2461
2537
  # - `salesforce` indicates the credentials are used to connect to Salesforce.
2462
2538
  # - `sharepoint` indicates the credentials are used to connect to Microsoft
2463
2539
  # SharePoint Online.
2540
+ # - `web_crawl` indicates the credentials are used to perform a web crawl.
2464
2541
  # @param credential_details [CredentialDetails] Object containing details of the stored credentials.
2465
2542
  #
2466
2543
  # Obtain credentials for your source from the administrator of the source.
@@ -2542,6 +2619,7 @@ module IBMWatson
2542
2619
  # - `salesforce` indicates the credentials are used to connect to Salesforce.
2543
2620
  # - `sharepoint` indicates the credentials are used to connect to Microsoft
2544
2621
  # SharePoint Online.
2622
+ # - `web_crawl` indicates the credentials are used to perform a web crawl.
2545
2623
  # @param credential_details [CredentialDetails] Object containing details of the stored credentials.
2546
2624
  #
2547
2625
  # Obtain credentials for your source from the administrator of the source.
@@ -2597,6 +2675,133 @@ module IBMWatson
2597
2675
 
2598
2676
  method_url = "/v1/environments/%s/credentials/%s" % [ERB::Util.url_encode(environment_id), ERB::Util.url_encode(credential_id)]
2599
2677
 
2678
+ response = request(
2679
+ method: "DELETE",
2680
+ url: method_url,
2681
+ headers: headers,
2682
+ params: params,
2683
+ accept_json: true
2684
+ )
2685
+ response
2686
+ end
2687
+ #########################
2688
+ # gatewayConfiguration
2689
+ #########################
2690
+
2691
+ ##
2692
+ # @!method list_gateways(environment_id:)
2693
+ # List Gateways.
2694
+ # List the currently configured gateways.
2695
+ # @param environment_id [String] The ID of the environment.
2696
+ # @return [DetailedResponse] A `DetailedResponse` object representing the response.
2697
+ def list_gateways(environment_id:)
2698
+ raise ArgumentError.new("environment_id must be provided") if environment_id.nil?
2699
+
2700
+ headers = {
2701
+ }
2702
+
2703
+ params = {
2704
+ "version" => @version
2705
+ }
2706
+
2707
+ method_url = "/v1/environments/%s/gateways" % [ERB::Util.url_encode(environment_id)]
2708
+
2709
+ response = request(
2710
+ method: "GET",
2711
+ url: method_url,
2712
+ headers: headers,
2713
+ params: params,
2714
+ accept_json: true
2715
+ )
2716
+ response
2717
+ end
2718
+
2719
+ ##
2720
+ # @!method create_gateway(environment_id:, name: nil)
2721
+ # Create Gateway.
2722
+ # Create a gateway configuration to use with a remotely installed gateway.
2723
+ # @param environment_id [String] The ID of the environment.
2724
+ # @param name [String] User-defined name.
2725
+ # @return [DetailedResponse] A `DetailedResponse` object representing the response.
2726
+ def create_gateway(environment_id:, name: nil)
2727
+ raise ArgumentError.new("environment_id must be provided") if environment_id.nil?
2728
+
2729
+ headers = {
2730
+ }
2731
+
2732
+ params = {
2733
+ "version" => @version
2734
+ }
2735
+
2736
+ data = {
2737
+ "name" => name
2738
+ }
2739
+
2740
+ method_url = "/v1/environments/%s/gateways" % [ERB::Util.url_encode(environment_id)]
2741
+
2742
+ response = request(
2743
+ method: "POST",
2744
+ url: method_url,
2745
+ headers: headers,
2746
+ params: params,
2747
+ json: data,
2748
+ accept_json: true
2749
+ )
2750
+ response
2751
+ end
2752
+
2753
+ ##
2754
+ # @!method get_gateway(environment_id:, gateway_id:)
2755
+ # List Gateway Details.
2756
+ # List information about the specified gateway.
2757
+ # @param environment_id [String] The ID of the environment.
2758
+ # @param gateway_id [String] The requested gateway ID.
2759
+ # @return [DetailedResponse] A `DetailedResponse` object representing the response.
2760
+ def get_gateway(environment_id:, gateway_id:)
2761
+ raise ArgumentError.new("environment_id must be provided") if environment_id.nil?
2762
+
2763
+ raise ArgumentError.new("gateway_id must be provided") if gateway_id.nil?
2764
+
2765
+ headers = {
2766
+ }
2767
+
2768
+ params = {
2769
+ "version" => @version
2770
+ }
2771
+
2772
+ method_url = "/v1/environments/%s/gateways/%s" % [ERB::Util.url_encode(environment_id), ERB::Util.url_encode(gateway_id)]
2773
+
2774
+ response = request(
2775
+ method: "GET",
2776
+ url: method_url,
2777
+ headers: headers,
2778
+ params: params,
2779
+ accept_json: true
2780
+ )
2781
+ response
2782
+ end
2783
+
2784
+ ##
2785
+ # @!method delete_gateway(environment_id:, gateway_id:)
2786
+ # Delete Gateway.
2787
+ # Delete the specified gateway configuration.
2788
+ # @param environment_id [String] The ID of the environment.
2789
+ # @param gateway_id [String] The requested gateway ID.
2790
+ # @return [DetailedResponse] A `DetailedResponse` object representing the response.
2791
+ def delete_gateway(environment_id:, gateway_id:)
2792
+ raise ArgumentError.new("environment_id must be provided") if environment_id.nil?
2793
+
2794
+ raise ArgumentError.new("gateway_id must be provided") if gateway_id.nil?
2795
+
2796
+ headers = {
2797
+ }
2798
+
2799
+ params = {
2800
+ "version" => @version
2801
+ }
2802
+
2803
+ method_url = "/v1/environments/%s/gateways/%s" % [ERB::Util.url_encode(environment_id), ERB::Util.url_encode(gateway_id)]
2804
+
2600
2805
  response = request(
2601
2806
  method: "DELETE",
2602
2807
  url: method_url,