UNPKG

sensecap

Version:

## Install ``` npm install sensecap --save ```

69 lines (59 loc) 2.04 kB
var assert = require('assert'); var logger = require('./utils/loggerUtil'); var OrganizationManager = require('./manager/OrganizationManager'); var GroupManager = require('./manager/GroupManager'); var DeviceManager = require('./manager/DeviceManager'); var DataManager = require('./manager/DataManager'); var GroupModel = require('./model/GroupModel'); var BaseRequest = require('./base/BaseRequest'); var BaseMqtt = require('./base/BaseMqtt'); var Error = require('./utils/error'); var axios = require('axios') /** * Client提供获取所有model的接口 */ function Client(options, callback) { // 参数校验 assert(options.region, 'options.region is required'); assert(options.accessKeyId, 'options.accessKeyId is required'); assert(options.accessKeySecret, 'options.accessKeySecret is required'); // 初始化 this.baseRequest = new BaseRequest(options); this.baseMqtt = new BaseMqtt(options); this.organizationManager = new OrganizationManager(this.baseRequest); this.groupManager = new GroupManager(this.baseRequest); this.deviceManager = new DeviceManager(this.baseRequest); this.dataManager = new DataManager(this.baseRequest, this.baseMqtt); this.listeners = []; } Client.prototype = { getOrganizationManager: function() { return this.organizationManager; }, getGroupManager: function() { return this.groupManager; }, getDeviceManager: function() { return this.deviceManager; }, getDataManager: function() { return this.dataManager; }, getDeviceMeasurementList: function(callback) { this.baseRequest.baseGet('https://sensecap-statics.seeed.cn/refer/def/sensor.json', callback) }, /** * 全局错误处理 */ errorHandler: function (error, callback) { this.listeners['error'](error); callback(error) }, /** * 事件监听 */ on: function (event, callback) { this.listeners[event] = callback } }; module.exports = Client;