rcs-sdk
Version:
封装客户端与平台间的相互调用功能。
83 lines • 3.89 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.detailByChatbot = exports.listByChatbot = void 0;
const constants_1 = require("../constants");
const util_1 = require("../util");
const request_1 = require("../util/request");
const debug = require('debug')('rcssdk:chatbot');
function listByChatbot() {
return __awaiter(this, void 0, void 0, function* () {
let access_token = this.accessToken.value;
let data;
if ((0, util_1.runAsMock)('chatbot')) {
const { mockFilePathChatbotList } = this.config;
debug(`从[${mockFilePathChatbotList}]获取模拟数据`);
data = yield (0, util_1.getMockData)(mockFilePathChatbotList);
}
else {
try {
const cmd = `${this.config.chatbotApiServer}/mongo/document/getChatbotList?access_token=${access_token}&db=vCard&cl=chatbot`;
const params = {
timeout: this.config.chatbotApiTimeout
};
data = yield request_1.default.post(cmd, { params }).then(r => {
if (r['code'] != 0) {
return Promise.reject({ message: r['msg'] });
}
return r['result'];
});
}
catch (error) {
return (0, util_1.newSdkResult)(constants_1.RequestFunc.GETCHATBOTLIST, null, 1001, error.message);
}
}
let chatbots;
chatbots = data.map(({ id, name, icon, verified }) => {
return { id, name, icon, verified };
});
const sdkrst = (0, util_1.newSdkResult)(constants_1.RequestFunc.GETCHATBOTLIST, chatbots);
return sdkrst;
});
}
exports.listByChatbot = listByChatbot;
function detailByChatbot(chatbotid) {
return __awaiter(this, void 0, void 0, function* () {
let access_token = this.accessToken.value;
let data;
if ((0, util_1.runAsMock)('chatbot')) {
const { mockFilePathChatbotDetail } = this.config;
debug(`从[${mockFilePathChatbotDetail}]获取模拟数据`);
data = yield (0, util_1.getMockData)(mockFilePathChatbotDetail);
}
else {
try {
const cmd = `${this.config.chatbotApiServer}/mongo/document/getChatbotDetail?access_token=${access_token}&db=vCard&cl=chatbot&chatbotid=${chatbotid}`;
const params = {
timeout: this.config.chatbotApiTimeout
};
data = yield request_1.default.post(cmd, { params }).then(r => {
if (r['code'] != 0) {
return Promise.reject({ message: r['msg'] });
}
return r['result'];
});
}
catch (error) {
return (0, util_1.newSdkResult)(constants_1.RequestFunc.GETCHATBOTDETAIL, null, 1001, error.message);
}
}
const sdkrst = (0, util_1.newSdkResult)(constants_1.RequestFunc.GETCHATBOTDETAIL, data);
return sdkrst;
});
}
exports.detailByChatbot = detailByChatbot;
//# sourceMappingURL=chatbot.js.map