Module: Kaseya::BMS
- Extended by:
- Configuration
- Defined in:
- lib/kaseya/bms.rb,
lib/kaseya/bms/api.rb,
lib/kaseya/bms/client.rb,
lib/kaseya/bms/version.rb,
lib/kaseya/bms/connection.rb,
lib/kaseya/bms/exceptions.rb,
lib/kaseya/bms/http_errors.rb,
lib/kaseya/bms/client/admin.rb,
lib/kaseya/bms/client/lists.rb,
lib/kaseya/bms/configuration.rb,
lib/kaseya/bms/client/tickets.rb,
lib/kaseya/bms/client/accounts.rb,
lib/kaseya/bms/client/contacts.rb,
lib/kaseya/bms/client/locations.rb,
lib/kaseya/bms/client/activities.rb
Defined Under Namespace
Modules: Configuration Classes: Api, BMSError, Client, Connection, HttpErrors
Constant Summary collapse
- TICKET_SOURCES =
{ client_portal: 0, phone: 1, in_person: 2, on_site: 3, email: 4, monitoring_system: 5, voice_mail: 6, verbal: 7, other: 8, recurring: 9, }
- LIST_TYPES =
{ ticket_type: 1, }
- VERSION =
'0.1.0'.freeze
Constants included from Configuration
Configuration::DEFAULT_DEBUG, Configuration::DEFAULT_USER_AGENT, Configuration::VALID_OPTIONS_KEYS
Class Method Summary collapse
Methods included from Configuration
configure, extended, options, reset
Class Method Details
.authenticate(host, username, password, tenant) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/kaseya/bms.rb', line 30 def self.authenticate(host, username, password, tenant) params = { grant_type: "password", username: username, password: password, tenant: tenant } conn = Faraday.new(url: "https://#{host}/api", ssl: { verify: !debug }) do |faraday| faraday.use HttpErrors faraday.request :url_encoded faraday.response :json faraday.adapter Faraday.default_adapter end response = conn.post('token', params) connection = Connection.new(host, response.body["access_token"], response.body["expires_in"]) Client.new(connection) rescue Faraday::ConnectionFailed => e raise Kaseya::ConnectionFailed, e. end |