@tnwx/wxcp
Version:
TNWX 微信系开发脚手架之极速开发企业微信/企业号
182 lines • 6.78 kB
JavaScript
"use strict";
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 });
const util = require("util");
const kits_1 = require("@tnwx/kits");
const accesstoken_1 = require("@tnwx/accesstoken");
/**
* @author Javen
* @copyright javendev@126.com
* @description 群聊
*/
class QyAppChatApi {
/**
* 创建群聊会话
* @param userList 群成员id列表。至少2人,至多500人
* @param owner 指定群主的id。如果不指定,系统会随机从userlist中选一人作为群主
* @param name 群聊名,最多50个utf8字符,超过将截断
* @param chatId 群聊的唯一标志,不能与已有的群重复;字符串类型,最长32个字符。只允许字符0-9及字母a-zA-Z。如果不填,系统会随机生成群id
*/
static create(userList, owner, name, chatId) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.QyAccessTokenApi.getAccessToken();
let url = util.format(this.createUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
userlist: userList,
name: name,
owner: owner,
chatid: chatId
}));
});
}
/**
* 修改群聊会话
* @param chatId 群聊id
* @param addUserList 添加成员的id列表
* @param delUserList 踢出成员的id列表
* @param owner 新群主的id
* @param name 新的群聊名
*/
static update(chatId, addUserList, delUserList, owner, name) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.QyAccessTokenApi.getAccessToken();
let url = util.format(this.updateUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
chatid: chatId,
add_user_list: addUserList,
del_user_list: delUserList,
name: name,
owner: owner
}));
});
}
/**
* 获取群聊会话
* @param chatId 群聊id
*/
static get(chatId) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.QyAccessTokenApi.getAccessToken();
let url = util.format(this.getUrl, accessToken.getAccessToken, chatId);
return kits_1.HttpKit.getHttpDelegate.httpGet(url);
});
}
/**
* 应用推送消息
* @param jsonData 请求数据
*/
static send(jsonData) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.QyAccessTokenApi.getAccessToken();
let url = util.format(this.sendUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, jsonData);
});
}
/**
* 互联企业消息推送
* @param jsonData 请求数据
*/
static sendLinkedCorpMsg(jsonData) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.QyAccessTokenApi.getAccessToken();
let url = util.format(this.sendLinkedCorpUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, jsonData);
});
}
/**
* 发送文本消息
* @param {QyTextMsg} text
*/
static sendTextMessage(text) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(text));
});
}
/**
* 发送图片消息
* @param {QyImageMsg} image
*/
static sendImageMessage(image) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(image));
});
}
/**
* 发送语音消息
* @param voice
*/
static sendVoiceMessage(voice) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(voice));
});
}
/**
* 发送视频消息
* @param video
*/
static sendVideoMessage(video) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(video));
});
}
/**
* 发送文件消息
* @param file
*/
static sendFileMessage(file) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(file));
});
}
/**
* 文本卡片消息
* @param textCard
*/
static sendTextCardMessage(textCard) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(textCard));
});
}
/**
* 图文消息
* @param news
*/
static sendNewsMessage(news) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(news));
});
}
/**
* 图文消息
* @param mpnews
*/
static sendMpNewsMessage(mpnews) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(mpnews));
});
}
/**
* markdown 消息
* @param markdown
*/
static sendMarkDownMessage(markdown) {
return __awaiter(this, void 0, void 0, function* () {
return this.send(JSON.stringify(markdown));
});
}
}
exports.QyAppChatApi = QyAppChatApi;
QyAppChatApi.createUrl = 'https://qyapi.weixin.qq.com/cgi-bin/appchat/create?access_token=%s';
QyAppChatApi.updateUrl = 'https://qyapi.weixin.qq.com/cgi-bin/appchat/update?access_token=%s';
QyAppChatApi.getUrl = 'https://qyapi.weixin.qq.com/cgi-bin/appchat/get?access_token=%s&chatid=%s';
QyAppChatApi.sendUrl = 'https://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token=%s';
QyAppChatApi.sendLinkedCorpUrl = 'https://qyapi.weixin.qq.com/cgi-bin/linkedcorp/message/send?access_token=%s';
//# sourceMappingURL=QyAppChatApi.js.map