Class: ApiAiRuby::Client
- Inherits:
-
Object
- Object
- ApiAiRuby::Client
- Defined in:
- lib/api-ai-ruby/client.rb
Instance Attribute Summary collapse
- #api_base_url ⇒ String
- #api_lang ⇒ String
- #api_session_id ⇒ String
- #api_version ⇒ String
-
#client_access_token ⇒ Object
Returns the value of attribute client_access_token.
-
#timeout_options ⇒ Object
Returns the value of attribute timeout_options.
- #user_agent ⇒ String
Instance Method Summary collapse
- #create_contexts_request ⇒ ApiAiRuby::ContextsRequest
- #create_entities_request ⇒ ApiAiRuby::UserEntitiesRequest
- #create_user_entities_request ⇒ ApiAiRuby::UserEntitiesRequest
- #credentials ⇒ Hash
- #credentials? ⇒ Boolean
- #event_request(event_name = '', data = {}, options = {}) ⇒ Hash
-
#initialize(options = {}) {|_self| ... } ⇒ ApiAiRuby::Client
constructor
Initializes a new Client object.
- #text_request(query = '', options = {}) ⇒ Object
Constructor Details
#initialize(options = {}) {|_self| ... } ⇒ ApiAiRuby::Client
Initializes a new Client object
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/api-ai-ruby/client.rb', line 12 def initialize( = {}) .each do |key, value| instance_variable_set("@#{key}", value) end if !(.key? :api_session_id) @api_session_id = SecureRandom.uuid end yield(self) if block_given? end |
Instance Attribute Details
#api_base_url ⇒ String
30 31 32 |
# File 'lib/api-ai-ruby/client.rb', line 30 def api_base_url @api_base_url ||= ApiAiRuby::Constants::DEFAULT_BASE_URL end |
#api_lang ⇒ String
35 36 37 |
# File 'lib/api-ai-ruby/client.rb', line 35 def api_lang @api_lang ||= ApiAiRuby::Constants::DEFAULT_CLIENT_LANG end |
#api_session_id ⇒ String
45 46 47 |
# File 'lib/api-ai-ruby/client.rb', line 45 def api_session_id @api_session_id end |
#api_version ⇒ String
40 41 42 |
# File 'lib/api-ai-ruby/client.rb', line 40 def api_version @api_version ||= ApiAiRuby::Constants::DEFAULT_API_VERSION end |
#client_access_token ⇒ Object
Returns the value of attribute client_access_token.
6 7 8 |
# File 'lib/api-ai-ruby/client.rb', line 6 def client_access_token @client_access_token end |
#timeout_options ⇒ Object
Returns the value of attribute timeout_options.
6 7 8 |
# File 'lib/api-ai-ruby/client.rb', line 6 def @timeout_options end |
Instance Method Details
#create_contexts_request ⇒ ApiAiRuby::ContextsRequest
91 92 93 |
# File 'lib/api-ai-ruby/client.rb', line 91 def create_contexts_request ApiAiRuby::ContextsRequest.new(self) end |
#create_entities_request ⇒ ApiAiRuby::UserEntitiesRequest
86 87 88 |
# File 'lib/api-ai-ruby/client.rb', line 86 def create_entities_request ApiAiRuby::UserEntitiesRequest.new(self, {uri_path: 'entities'}) end |
#create_user_entities_request ⇒ ApiAiRuby::UserEntitiesRequest
81 82 83 |
# File 'lib/api-ai-ruby/client.rb', line 81 def create_user_entities_request ApiAiRuby::UserEntitiesRequest.new(self) end |
#credentials ⇒ Hash
50 51 52 53 54 |
# File 'lib/api-ai-ruby/client.rb', line 50 def credentials { client_access_token: client_access_token, } end |
#credentials? ⇒ Boolean
57 58 59 |
# File 'lib/api-ai-ruby/client.rb', line 57 def credentials? credentials.values.all? end |
#event_request(event_name = '', data = {}, options = {}) ⇒ Hash
71 72 73 74 75 76 77 78 |
# File 'lib/api-ai-ruby/client.rb', line 71 def event_request (event_name = '', data = {}, = {}) raise ApiAiRuby::ClientError.new('Credentials missing') if !credentials? [:event] = { name: event_name, data: data } ApiAiRuby::EventRequest.new(self, ).perform end |
#text_request(query = '', options = {}) ⇒ Object
61 62 63 64 65 |
# File 'lib/api-ai-ruby/client.rb', line 61 def text_request (query = '', = {}) raise ApiAiRuby::ClientError.new('Credentials missing') if !credentials? [:query] = query ApiAiRuby::TextRequest.new(self, ).perform end |