ibm-watson-ruby 0.0.1
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 +7 -0
- data/.gitignore +96 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +75 -0
- data/README.md +2 -0
- data/Rakefile +10 -0
- data/ibm-watson-ruby.gemspec +28 -0
- data/lib/ibm_watson.rb +7 -0
- data/lib/ibm_watson/base_model.rb +6 -0
- data/lib/ibm_watson/base_service.rb +70 -0
- data/lib/ibm_watson/conversation.rb +13 -0
- data/lib/ibm_watson/conversation/context.rb +35 -0
- data/lib/ibm_watson/conversation/dialog_node.rb +17 -0
- data/lib/ibm_watson/conversation/intent.rb +11 -0
- data/lib/ibm_watson/conversation/intent_result.rb +8 -0
- data/lib/ibm_watson/conversation/output_result.rb +14 -0
- data/lib/ibm_watson/conversation/result.rb +18 -0
- data/lib/ibm_watson/conversation/service.rb +32 -0
- data/lib/ibm_watson/conversation/workspace.rb +20 -0
- data/lib/ibm_watson/errors.rb +6 -0
- data/lib/ibm_watson/version.rb +3 -0
- metadata +147 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 987b93d5b8b4632720831f78dc5ecbe016633648
|
|
4
|
+
data.tar.gz: f499c7861a98ab27974a30b53888b5dc7dcd7998
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 7fcac6af6ef7871ba2845434a06111c0b6c8e6456558786cf583bdbfbb71ad9bdf431ab83d1757654b79c56992ddf4869a506f95359a33f4597159e7ffaf030b
|
|
7
|
+
data.tar.gz: 759a838669ecec44667e05258f6c50a1547cb4b42ae02313a8ebece7ba8fa7c6a6f9a800b8641f9d86882e8d4e5cdaa6d7f920c5db4d0b7fb29763e938d17a53
|
data/.gitignore
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Created by .ignore support plugin (hsz.mobi)
|
|
2
|
+
### Rails template
|
|
3
|
+
*.rbc
|
|
4
|
+
capybara-*.html
|
|
5
|
+
.rspec
|
|
6
|
+
/log
|
|
7
|
+
/tmp
|
|
8
|
+
/db/*.sqlite3
|
|
9
|
+
/db/*.sqlite3-journal
|
|
10
|
+
/public/system
|
|
11
|
+
/coverage/
|
|
12
|
+
/spec/tmp
|
|
13
|
+
**.orig
|
|
14
|
+
rerun.txt
|
|
15
|
+
pickle-email-*.html
|
|
16
|
+
|
|
17
|
+
# TODO Comment out these rules if you are OK with secrets being uploaded to the repo
|
|
18
|
+
config/initializers/secret_token.rb
|
|
19
|
+
config/secrets.yml
|
|
20
|
+
|
|
21
|
+
# dotenv
|
|
22
|
+
# TODO Comment out this rule if environment variables can be committed
|
|
23
|
+
.env
|
|
24
|
+
|
|
25
|
+
## Environment normalization:
|
|
26
|
+
/.bundle
|
|
27
|
+
/vendor/bundle
|
|
28
|
+
|
|
29
|
+
# these should all be checked in to normalize the environment:
|
|
30
|
+
# Gemfile.lock, .ruby-version, .ruby-gemset
|
|
31
|
+
|
|
32
|
+
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
|
|
33
|
+
.rvmrc
|
|
34
|
+
|
|
35
|
+
# if using bower-rails ignore default bower_components path bower.json files
|
|
36
|
+
/vendor/assets/bower_components
|
|
37
|
+
*.bowerrc
|
|
38
|
+
bower.json
|
|
39
|
+
|
|
40
|
+
# Ignore pow environment settings
|
|
41
|
+
.powenv
|
|
42
|
+
|
|
43
|
+
# Ignore Byebug command history file.
|
|
44
|
+
.byebug_history
|
|
45
|
+
### Ruby template
|
|
46
|
+
*.gem
|
|
47
|
+
*.rbc
|
|
48
|
+
/.config
|
|
49
|
+
/coverage/
|
|
50
|
+
/InstalledFiles
|
|
51
|
+
/pkg/
|
|
52
|
+
/spec/reports/
|
|
53
|
+
/spec/examples.txt
|
|
54
|
+
/test/tmp/
|
|
55
|
+
/test/version_tmp/
|
|
56
|
+
/tmp/
|
|
57
|
+
|
|
58
|
+
# Used by dotenv library to load environment variables.
|
|
59
|
+
# .env
|
|
60
|
+
|
|
61
|
+
## Specific to RubyMotion:
|
|
62
|
+
.dat*
|
|
63
|
+
.repl_history
|
|
64
|
+
build/
|
|
65
|
+
*.bridgesupport
|
|
66
|
+
build-iPhoneOS/
|
|
67
|
+
build-iPhoneSimulator/
|
|
68
|
+
|
|
69
|
+
## Specific to RubyMotion (use of CocoaPods):
|
|
70
|
+
#
|
|
71
|
+
# We recommend against adding the Pods directory to your .gitignore. However
|
|
72
|
+
# you should judge for yourself, the pros and cons are mentioned at:
|
|
73
|
+
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
|
|
74
|
+
#
|
|
75
|
+
# vendor/Pods/
|
|
76
|
+
|
|
77
|
+
## Documentation cache and generated files:
|
|
78
|
+
/.yardoc/
|
|
79
|
+
/_yardoc/
|
|
80
|
+
/doc/
|
|
81
|
+
/rdoc/
|
|
82
|
+
|
|
83
|
+
## Environment normalization:
|
|
84
|
+
/.bundle/
|
|
85
|
+
/vendor/bundle
|
|
86
|
+
/lib/bundler/man/
|
|
87
|
+
|
|
88
|
+
# for a library or gem, you might want to ignore these files since the code is
|
|
89
|
+
# intended to run in multiple environments; otherwise, check them in:
|
|
90
|
+
# Gemfile.lock
|
|
91
|
+
# .ruby-version
|
|
92
|
+
# .ruby-gemset
|
|
93
|
+
|
|
94
|
+
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
|
|
95
|
+
.rvmrc
|
|
96
|
+
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
ibm-watson-ruby (0.0.1)
|
|
5
|
+
active_attr (~> 0.10)
|
|
6
|
+
http (~> 2.0)
|
|
7
|
+
|
|
8
|
+
GEM
|
|
9
|
+
remote: https://rubygems.org/
|
|
10
|
+
specs:
|
|
11
|
+
active_attr (0.10.0)
|
|
12
|
+
activemodel (>= 3.0.2, < 5.1)
|
|
13
|
+
activesupport (>= 3.0.2, < 5.1)
|
|
14
|
+
activemodel (4.2.8)
|
|
15
|
+
activesupport (= 4.2.8)
|
|
16
|
+
builder (~> 3.1)
|
|
17
|
+
activesupport (4.2.8)
|
|
18
|
+
i18n (~> 0.7)
|
|
19
|
+
minitest (~> 5.1)
|
|
20
|
+
thread_safe (~> 0.3, >= 0.3.4)
|
|
21
|
+
tzinfo (~> 1.1)
|
|
22
|
+
addressable (2.5.0)
|
|
23
|
+
public_suffix (~> 2.0, >= 2.0.2)
|
|
24
|
+
builder (3.2.3)
|
|
25
|
+
diff-lcs (1.3)
|
|
26
|
+
domain_name (0.5.20170223)
|
|
27
|
+
unf (>= 0.0.5, < 1.0.0)
|
|
28
|
+
http (2.2.1)
|
|
29
|
+
addressable (~> 2.3)
|
|
30
|
+
http-cookie (~> 1.0)
|
|
31
|
+
http-form_data (~> 1.0.1)
|
|
32
|
+
http_parser.rb (~> 0.6.0)
|
|
33
|
+
http-cookie (1.0.3)
|
|
34
|
+
domain_name (~> 0.5)
|
|
35
|
+
http-form_data (1.0.1)
|
|
36
|
+
http_parser.rb (0.6.0)
|
|
37
|
+
i18n (0.8.1)
|
|
38
|
+
minitest (5.10.1)
|
|
39
|
+
public_suffix (2.0.5)
|
|
40
|
+
rake (0.9.6)
|
|
41
|
+
rspec (3.5.0)
|
|
42
|
+
rspec-core (~> 3.5.0)
|
|
43
|
+
rspec-expectations (~> 3.5.0)
|
|
44
|
+
rspec-mocks (~> 3.5.0)
|
|
45
|
+
rspec-core (3.5.4)
|
|
46
|
+
rspec-support (~> 3.5.0)
|
|
47
|
+
rspec-expectations (3.5.0)
|
|
48
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
49
|
+
rspec-support (~> 3.5.0)
|
|
50
|
+
rspec-mocks (3.5.0)
|
|
51
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
52
|
+
rspec-support (~> 3.5.0)
|
|
53
|
+
rspec-support (3.5.0)
|
|
54
|
+
rubygems-tasks (0.2.4)
|
|
55
|
+
thread_safe (0.3.6)
|
|
56
|
+
tzinfo (1.2.2)
|
|
57
|
+
thread_safe (~> 0.1)
|
|
58
|
+
unf (0.1.4)
|
|
59
|
+
unf_ext
|
|
60
|
+
unf_ext (0.0.7.2)
|
|
61
|
+
|
|
62
|
+
PLATFORMS
|
|
63
|
+
ruby
|
|
64
|
+
|
|
65
|
+
DEPENDENCIES
|
|
66
|
+
active_attr
|
|
67
|
+
bundler (~> 1.0)
|
|
68
|
+
http
|
|
69
|
+
ibm-watson-ruby!
|
|
70
|
+
rake (~> 0.8)
|
|
71
|
+
rspec (~> 3.3)
|
|
72
|
+
rubygems-tasks (~> 0.2)
|
|
73
|
+
|
|
74
|
+
BUNDLED WITH
|
|
75
|
+
1.14.4
|
data/README.md
ADDED
data/Rakefile
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
require File.expand_path('../lib/ibm_watson/version', __FILE__)
|
|
4
|
+
|
|
5
|
+
Gem::Specification.new do |gem|
|
|
6
|
+
gem.name = "ibm-watson-ruby"
|
|
7
|
+
gem.version = IBMWatson::VERSION
|
|
8
|
+
gem.summary = "IBM Watson services in ruby"
|
|
9
|
+
gem.description = "."
|
|
10
|
+
gem.license = "MIT"
|
|
11
|
+
gem.authors = ["Bram Whillock"]
|
|
12
|
+
gem.email = "bramski@gmail.com"
|
|
13
|
+
gem.homepage = "https://github.com/imrealtor/watson-ruby"
|
|
14
|
+
gem.required_ruby_version = '~> 2.3'
|
|
15
|
+
|
|
16
|
+
gem.files = `git ls-files`.split($/)
|
|
17
|
+
gem.executables = gem.files.grep(%r{^bin/}).map { |f| File.basename(f) }
|
|
18
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
|
19
|
+
gem.require_paths = ['lib']
|
|
20
|
+
|
|
21
|
+
gem.add_dependency "http", "~> 2.0"
|
|
22
|
+
gem.add_dependency "active_attr", '~> 0.10'
|
|
23
|
+
|
|
24
|
+
gem.add_development_dependency 'bundler', '~> 1.0'
|
|
25
|
+
gem.add_development_dependency 'rake', '~> 0.8'
|
|
26
|
+
gem.add_development_dependency 'rspec', '~> 3.3'
|
|
27
|
+
gem.add_development_dependency 'rubygems-tasks', '~> 0.2'
|
|
28
|
+
end
|
data/lib/ibm_watson.rb
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
class BaseService
|
|
3
|
+
class << self
|
|
4
|
+
def url(url)
|
|
5
|
+
define_method :service_url do
|
|
6
|
+
url
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def version(version)
|
|
11
|
+
define_method :service_version do
|
|
12
|
+
version
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def initialize(username:, password:)
|
|
18
|
+
@username = username
|
|
19
|
+
@password = password
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
private
|
|
23
|
+
|
|
24
|
+
attr_reader :username, :password
|
|
25
|
+
|
|
26
|
+
def parse_array(json_string, model_class, root_key)
|
|
27
|
+
array = JSON.parse(json_string).fetch(root_key)
|
|
28
|
+
array.map do |attributes|
|
|
29
|
+
model_class.new attributes
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def build_url(*paths, query: {})
|
|
34
|
+
url = [service_url, service_version, paths.join('/')].join("/")
|
|
35
|
+
if query.any?
|
|
36
|
+
url += "?" + query.to_query
|
|
37
|
+
end
|
|
38
|
+
url
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def collection_url(cluster_id, collection_name, resource)
|
|
42
|
+
build_url('solr_clusters', cluster_id, 'solr', collection_name, resource)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def accept_json(http_chain)
|
|
46
|
+
http_chain.headers(accept: "application/json")
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def verify_http_result(result, verify_json: true)
|
|
50
|
+
if result.status.between?(200, 299)
|
|
51
|
+
if verify_json
|
|
52
|
+
verify_no_json_failure(result)
|
|
53
|
+
end
|
|
54
|
+
elsif result.status.between?(400, 499)
|
|
55
|
+
raise IBMWatson::Errors::WatsonRequestError, "Server returned #{result.status} : #{result.reason}"
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def verify_no_json_failure(result)
|
|
60
|
+
json_data = JSON.parse(result.body)
|
|
61
|
+
if json_data['failure']
|
|
62
|
+
raise IBMWatson::Errors::WatsonError, json_data['failure'].values.first
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
def basic_auth
|
|
67
|
+
HTTP.basic_auth(user: username, pass: password)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
end
|
|
4
|
+
end
|
|
5
|
+
|
|
6
|
+
require 'conversation/service'
|
|
7
|
+
require 'conversation/context'
|
|
8
|
+
require 'conversation/intent_result'
|
|
9
|
+
require 'conversation/output_result'
|
|
10
|
+
require 'conversation/result'
|
|
11
|
+
require 'conversation/workspace'
|
|
12
|
+
require 'conversation/intent'
|
|
13
|
+
require 'conversation/dialog_node'
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class Context < IBMWatson::BaseModel
|
|
4
|
+
attribute :conversation_id
|
|
5
|
+
attribute :dialog_stack, default: [{ dialog_node: "root" }]
|
|
6
|
+
attribute :dialog_turn_counter, default: 1
|
|
7
|
+
attribute :dialog_request_counter, default: 1
|
|
8
|
+
attribute :context, default: {}
|
|
9
|
+
attribute :_node_output_map
|
|
10
|
+
|
|
11
|
+
def as_json(*)
|
|
12
|
+
{
|
|
13
|
+
conversation_id: conversation_id,
|
|
14
|
+
system: {
|
|
15
|
+
dialog_stack: dialog_stack,
|
|
16
|
+
dialog_turn_counter: dialog_turn_counter,
|
|
17
|
+
dialog_request_counter: dialog_request_counter,
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def from_json(json)
|
|
23
|
+
values = json.deep_symbolize_keys
|
|
24
|
+
self.attributes= {
|
|
25
|
+
conversation_id: values[:conversation_id],
|
|
26
|
+
dialog_stack: values[:system][:dialog_stack],
|
|
27
|
+
dialog_turn_counter: values[:system][:dialog_turn_counter],
|
|
28
|
+
dialog_request_counter: values[:system][:dialog_request_counter],
|
|
29
|
+
_node_output_map: values[:system][:_node_output_map],
|
|
30
|
+
context: values[:context]
|
|
31
|
+
}
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class DialogNode < IBMWatson::BaseModel
|
|
4
|
+
attribute :goto, type: String
|
|
5
|
+
attribute :output, type: Hash
|
|
6
|
+
attribute :parent, type: String
|
|
7
|
+
attribute :context, type: Hash
|
|
8
|
+
attribute :created, type: String
|
|
9
|
+
attribute :updated, type: String
|
|
10
|
+
attribute :metadata
|
|
11
|
+
attribute :conditions, type: String
|
|
12
|
+
attribute :description, type: String
|
|
13
|
+
attribute :dialog_node, type: String
|
|
14
|
+
attribute :previous_sibling, type: String
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class Intent < IBMWatson::BaseModel
|
|
4
|
+
attribute :intent, type: String
|
|
5
|
+
attribute :created, type: String
|
|
6
|
+
attribute :updated, type: String
|
|
7
|
+
attribute :examples, type: Array
|
|
8
|
+
attribute :description
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class OutputResult < IBMWatson::BaseModel
|
|
4
|
+
attribute :log_messages, type: Array
|
|
5
|
+
attribute :text, type: Array
|
|
6
|
+
attribute :nodes_visited, type: Array
|
|
7
|
+
attribute :action, type: String
|
|
8
|
+
attribute :template, type: String
|
|
9
|
+
attribute :choices, type: Hash
|
|
10
|
+
attribute :boolean, type: Hash
|
|
11
|
+
attribute :repeat_input, type: String
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class Result < IBMWatson::BaseModel
|
|
4
|
+
attribute :intents,
|
|
5
|
+
type: ::IBMWatson::Conversation::IntentResult,
|
|
6
|
+
typecaster: lambda { |values|
|
|
7
|
+
values.map do |value|
|
|
8
|
+
::IBMWatson::Conversation::IntentResult.new(value)
|
|
9
|
+
end
|
|
10
|
+
}
|
|
11
|
+
attribute :entities
|
|
12
|
+
attribute :input
|
|
13
|
+
attribute :output, type: Hash
|
|
14
|
+
attribute :context, type: Hash
|
|
15
|
+
attribute :alternate_intents
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class Service < IBMWatson::BaseService
|
|
4
|
+
version "v1"
|
|
5
|
+
url "https://gateway.watsonplatform.net/conversation/api"
|
|
6
|
+
QUERY_VERSION = "2017-02-03"
|
|
7
|
+
|
|
8
|
+
def workspace(workspace_id:, export: false)
|
|
9
|
+
url = build_url('workspaces', workspace_id, query: { version: QUERY_VERSION, export: export})
|
|
10
|
+
result = accept_json(basic_auth).get(url)
|
|
11
|
+
verify_http_result(result)
|
|
12
|
+
IBMWatson::Conversation::Workspace.new.tap do |result_object|
|
|
13
|
+
result_object.from_json(result)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def message(workspace_id:, input:, context:, alternate_intents: false)
|
|
18
|
+
url = build_url('workspaces',workspace_id, 'message', query: { version: QUERY_VERSION})
|
|
19
|
+
params = {
|
|
20
|
+
input: {text: input},
|
|
21
|
+
context: context.as_json,
|
|
22
|
+
alternate_intents: alternate_intents
|
|
23
|
+
}
|
|
24
|
+
result = accept_json(basic_auth).post(url, json: params)
|
|
25
|
+
verify_http_result(result)
|
|
26
|
+
IBMWatson::Conversation::Result.new.tap do |result_object|
|
|
27
|
+
result_object.from_json(result)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module IBMWatson
|
|
2
|
+
module Conversation
|
|
3
|
+
class Workspace < IBMWatson::BaseModel
|
|
4
|
+
attribute :name, type: String
|
|
5
|
+
attribute :description, type: String
|
|
6
|
+
attribute :language, type: String
|
|
7
|
+
attribute :metadata, type: Hash
|
|
8
|
+
attribute :created, type: String
|
|
9
|
+
attribute :updated, type: String
|
|
10
|
+
attribute :workspace_id, type: String
|
|
11
|
+
attribute :status, type: String
|
|
12
|
+
attribute :intents, type: ::IBMWatson::Conversation::Intent,
|
|
13
|
+
typecaster: lambda { |values| values.map { |value| ::IBMWatson::Conversation::Intent.new(value) }}
|
|
14
|
+
attribute :entities, type: Array
|
|
15
|
+
attribute :counterexamples, type: Array
|
|
16
|
+
attribute :dialog_nodes, type: ::IBMWatson::Conversation::DialogNode,
|
|
17
|
+
typecaster: lambda { |values| values.map { |value| ::IBMWatson::Conversation::DialogNode.new(value)}}
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: ibm-watson-ruby
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.0.1
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Bram Whillock
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2017-03-24 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: http
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '2.0'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '2.0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: active_attr
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - "~>"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0.10'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0.10'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: bundler
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '1.0'
|
|
48
|
+
type: :development
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - "~>"
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '1.0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: rake
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0.8'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0.8'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: rspec
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - "~>"
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '3.3'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - "~>"
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '3.3'
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: rubygems-tasks
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - "~>"
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '0.2'
|
|
90
|
+
type: :development
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - "~>"
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: '0.2'
|
|
97
|
+
description: "."
|
|
98
|
+
email: bramski@gmail.com
|
|
99
|
+
executables: []
|
|
100
|
+
extensions: []
|
|
101
|
+
extra_rdoc_files: []
|
|
102
|
+
files:
|
|
103
|
+
- ".gitignore"
|
|
104
|
+
- Gemfile
|
|
105
|
+
- Gemfile.lock
|
|
106
|
+
- README.md
|
|
107
|
+
- Rakefile
|
|
108
|
+
- ibm-watson-ruby.gemspec
|
|
109
|
+
- lib/ibm_watson.rb
|
|
110
|
+
- lib/ibm_watson/base_model.rb
|
|
111
|
+
- lib/ibm_watson/base_service.rb
|
|
112
|
+
- lib/ibm_watson/conversation.rb
|
|
113
|
+
- lib/ibm_watson/conversation/context.rb
|
|
114
|
+
- lib/ibm_watson/conversation/dialog_node.rb
|
|
115
|
+
- lib/ibm_watson/conversation/intent.rb
|
|
116
|
+
- lib/ibm_watson/conversation/intent_result.rb
|
|
117
|
+
- lib/ibm_watson/conversation/output_result.rb
|
|
118
|
+
- lib/ibm_watson/conversation/result.rb
|
|
119
|
+
- lib/ibm_watson/conversation/service.rb
|
|
120
|
+
- lib/ibm_watson/conversation/workspace.rb
|
|
121
|
+
- lib/ibm_watson/errors.rb
|
|
122
|
+
- lib/ibm_watson/version.rb
|
|
123
|
+
homepage: https://github.com/imrealtor/watson-ruby
|
|
124
|
+
licenses:
|
|
125
|
+
- MIT
|
|
126
|
+
metadata: {}
|
|
127
|
+
post_install_message:
|
|
128
|
+
rdoc_options: []
|
|
129
|
+
require_paths:
|
|
130
|
+
- lib
|
|
131
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
132
|
+
requirements:
|
|
133
|
+
- - "~>"
|
|
134
|
+
- !ruby/object:Gem::Version
|
|
135
|
+
version: '2.3'
|
|
136
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
137
|
+
requirements:
|
|
138
|
+
- - ">="
|
|
139
|
+
- !ruby/object:Gem::Version
|
|
140
|
+
version: '0'
|
|
141
|
+
requirements: []
|
|
142
|
+
rubyforge_project:
|
|
143
|
+
rubygems_version: 2.5.2
|
|
144
|
+
signing_key:
|
|
145
|
+
specification_version: 4
|
|
146
|
+
summary: IBM Watson services in ruby
|
|
147
|
+
test_files: []
|