Skip to content

引入

ts
import {
  genCustomEventImgAndSendRobot,
  genMultiImgAndSendRobot,
  parseResult,
  genSummaryDataAndSendRobot
} from 't-comm';

// 不支持 tree-shaking 的项目
import {
  genCustomEventImgAndSendRobot,
  genMultiImgAndSendRobot,
  parseResult,
  genSummaryDataAndSendRobot
} from 't-comm/lib/tam/img/index';

// 只支持 ESM 的项目
import {
  genCustomEventImgAndSendRobot,
  genMultiImgAndSendRobot,
  parseResult,
  genSummaryDataAndSendRobot
} from 't-comm/es/tam/img/index';

genCustomEventImgAndSendRobot(options)

描述:获取自定义事件图片并发送

参数

参数名类型描述
optionsobject配置信息

返回: string

图片url

示例

typescript
const requestMultiImgDate = Date.now() - 1 * 24 * 60 * 60 * 1000;

const tamGroupIdList = [1, 2, 3];

const eventProjectMap = {
  62659: {
    name: 'aaaaa',
  },
  57706: {
    name: 'bbbbb',
    extraProjectId: 66379,
  },
};

const eventMap = {
  WX_SUC: {
    // 总和
    type: 'SUMMARY',
    target: ['ENTER_GAME_WX_SUC', 'LAUNCH_GAME_SUC_WX'],
  },
  WX_FAIL: {
    // 总和
    type: 'SUMMARY',
    target: ['ENTER_GAME_WX_FAIL', 'LAUNCH_GAME_FAIL_WX'],
  },
};

const eventTableHeaderMap = {
  ProjectName: {
    name: '项目名称',
    tableWidth: 95,
  },
  ALL_SUMMARY: {
    name: '拉起总数',
    tableWidth: 65,
  },
};

genCustomEventImgAndSendRobot({
  date: requestLaunchGameDate,
  secretInfo: {
    getPwdCode,
    encrypt,
    apiKey: process.env.AEGIS_APP_KEY,
    loginName: 'lee',
  },
  projectIdMap: eventProjectMap,
  eventMap,
  tableHeaderMap: eventTableHeaderMap,
  webhookUrl: tamRobotWebhook,
  chatId: tamRobotChatId,
});

genMultiImgAndSendRobot(options)

描述:生成多个图片并发送机器人

参数

参数名类型描述
optionsobject配置

示例

typescript
const requestMultiImgDate = Date.now() - 1 * 24 * 60 * 60 * 1000;

const tamGroupIdList = [1, 2, 3];

const summaryScoreTableHeaderMap = {
  ProjectName: {
    name: '项目名称',
    tableWidth: 95,
  },
  PagePv: {
    name: 'PV',
    tableWidth: 65,
  },
};

const eventProjectMap = {
  62659: {
    name: 'aaaaa',
  },
  57706: {
    name: 'bbbbb',
    extraProjectId: 66379,
  },
};

const eventMap = {
  WX_SUC: {
    // 总和
    type: 'SUMMARY',
    target: ['ENTER_GAME_WX_SUC', 'LAUNCH_GAME_SUC_WX'],
  },
  WX_FAIL: {
    // 总和
    type: 'SUMMARY',
    target: ['ENTER_GAME_WX_FAIL', 'LAUNCH_GAME_FAIL_WX'],
  },
};

const eventTableHeaderMap = {
  ProjectName: {
    name: '项目名称',
    tableWidth: 95,
  },
  ALL_SUMMARY: {
    name: '拉起总数',
    tableWidth: 65,
  },
};

await genMultiImgAndSendRobot({
  date: requestMultiImgDate,
  secretInfo: {
    getPwdCode,
    encrypt,
    apiKey: process.env.AEGIS_APP_KEY,
    loginName: 'lee',
  },
  webhookUrl: tamRobotWebhook,
  chatId: tamRobotChatId,

  groupIdList: tamGroupIdList,
  eventProjectIdMap: eventProjectMap,
  tableHeaderMap: summaryScoreTableHeaderMap,

  eventMap,
  eventTableHeaderMap,
});

parseResult(results)

描述:解析 RUM 性能数据返回值,按地区聚合并按请求量排序

参数

参数名描述
results原始接口返回数据

返回: 按地区聚合后的数据列表

示例

ts
const data = parseResult(rumApiResults);
// [
//   {
//     region: '巴西',
//     allCount: 100,
//     firstScreen: 1000,
//     // ...
//   },
//   { region: '中国', allCount: 5000, ... },
// ]

genSummaryDataAndSendRobot(options)

描述:生成TAM汇总数据并发送到机器人

参数

参数名类型描述
optionsobject配置
options.datestring日期,yyyyMMdd格式
options.groupIdListArray<number>groupId列表
options.secretInfoobject密钥信息
options.secretInfo.apiKeystringapiKey
options.secretInfo.loginNamestringloginName
options.secretInfo.getPwdCodefunctiongetPwdCode
options.secretInfo.encryptfunctionencrypt
options.extraDataMapobject额外数据Map
options.ignoreProjectIdListobject忽略的projectIdList
options.tableHeaderMapobject表格头部Map
options.webhookUrlobject机器人回调地址
options.chatIdobject会话Id

示例

typescript
const requestSummaryScoreDate = Date.now() - 1 * 24 * 60 * 60 * 1000;

const tamGroupIdList = [1, 2, 3];

const summaryScoreTableHeaderMap = {
  ProjectName: {
    name: '项目名称',
    tableWidth: 95,
  },
  PagePv: {
    name: 'PV',
    tableWidth: 65,
  },
};

await genSummaryDataAndSendRobot({
  date: requestSummaryScoreDate,
  groupIdList: tamGroupIdList,
  secretInfo: {
    getPwdCode,
    encrypt,
    apiKey: process.env.AEGIS_APP_KEY,
    loginName: 'lee',
  },
  webhookUrl: tamRobotWebhook,
  chatId: tamRobotChatId,
  tableHeaderMap: summaryScoreTableHeaderMap,
});