数数:初步数数接入

This commit is contained in:
luying
2021-11-11 20:10:32 +08:00
parent 2b809c8016
commit bd08d328ff
7 changed files with 114 additions and 3 deletions

View File

@@ -5,13 +5,14 @@ import { Chat37Params, CheckGuild37Params, CheckName37Params } from "../domain/s
import { sendMailByContent, sendMailToGuildByContent } from './mailService';
import { getGoldObject } from '../pubUtils/itemUtils';
import { NAMEPLATE } from '../pubUtils/dicParam';
import { CHANNEL_PREFIX, getSdkChannelId, MAIL_TYPE, REDIS_KEY, SDK_37_ADDR, SDK_37_CONST } from "../consts";
import { CHANNEL_PREFIX, getSdkChannelId, MAIL_TYPE, REDIS_KEY, SDK_37_ADDR, SDK_37_CONST, SDK_TA_CONST, THINKING_DATA_MODE, THINKING_DATA_MODE_LIST } from "../consts";
import { UserModel } from "../db/User";
import { request37CheckChat, request37Post } from "../pubUtils/httpUtil";
import { GuildModel } from "../db/Guild";
import { getRoleOnlineInfo, updateUserInfo } from "./redisService";
import { pinus } from "pinus";
import { Application, pinus } from "pinus";
import { getGuildChannelSid } from "./chatService";
const ThinkingAnalytics = require("thinkingdata-node");
// 检查私聊是否合法
@@ -131,3 +132,52 @@ export async function treatGuildName(content: string) {
}
}
}
export function connectThinkingData(app: Application) {
let ta;
if(THINKING_DATA_MODE == THINKING_DATA_MODE_LIST.DEBUG) {
ta = ThinkingAnalytics.initWithDebugMode(SDK_TA_CONST.APPID, SDK_TA_CONST.SERVER_URL);
} else if (THINKING_DATA_MODE == THINKING_DATA_MODE_LIST.BATCH) {
ta = ThinkingAnalytics.initWithBatchMode(SDK_TA_CONST.APPID, SDK_TA_CONST.SERVER_URL);
} else if (THINKING_DATA_MODE == THINKING_DATA_MODE_LIST.LOGGING) {
ta = ThinkingAnalytics.initWithLoggingMode(SDK_TA_CONST.LOG_PATH, {
rotateHourly: true,
pm2: true
});
}
ta.setDynamicSuperProperties(() => {
return {
env: app.get('env'),
server: app.getServerId()
};
});
app.set('ta', ta);
}
export function reportTAEvent(roleId: string, eventName: string, ip: string) {
let ta = pinus.app.get('ta');
let event = {
// 账号 ID (可选)
accountId: roleId,
// 访客 ID (可选),账号 ID 和访客 ID 不可以都为空
distinctId: "",
// 事件名称 (必填)
event: eventName,
// 事件时间 (可选) 如果不填,将以调用接口时的时间作为事件时间
time: new Date(),
// 事件 IP (可选) 当传入 IP 地址时,后台可以解析所在地
ip: ip,
// 事件属性 (可选)
properties: {
prop_date: new Date(),
prop_double: 134.1,
prop_string: "hello world",
prop_int: 67
},
callback() {
console.log('*****测试接入事件')
}
};
ta.track(event);
}