diff --git a/apps/chat.js b/apps/chat.js index c2835ab..c6de4aa 100644 --- a/apps/chat.js +++ b/apps/chat.js @@ -768,34 +768,38 @@ export class chatgpt extends plugin { } if (e.user_id == getUin(e)) return false prompt = msg.trim() - if (e.isGroup && typeof this.e.group.getMemberMap === 'function') { - let mm = await this.e.group.getMemberMap() - let me = mm.get(getUin(e)) || {} - let card = me.card - let nickname = me.nickname - if (nickname && card) { - if (nickname.startsWith(card)) { - // 例如nickname是"滚筒洗衣机",card是"滚筒" - prompt = prompt.replace(`@${nickname}`, '').trim() - } else if (card.startsWith(nickname)) { - // 例如nickname是"十二",card是"十二|本月已发送1000条消息" - prompt = prompt.replace(`@${card}`, '').trim() - // 如果是好友,显示的还是昵称 - prompt = prompt.replace(`@${nickname}`, '').trim() - } else { - // 互不包含,分别替换 - if (nickname) { + try { + if (e.isGroup && typeof this.e.group.getMemberMap === 'function') { + let mm = await this.e.group.getMemberMap() + let me = mm.get(getUin(e)) || {} + let card = me.card + let nickname = me.nickname + if (nickname && card) { + if (nickname.startsWith(card)) { + // 例如nickname是"滚筒洗衣机",card是"滚筒" prompt = prompt.replace(`@${nickname}`, '').trim() - } - if (card) { + } else if (card.startsWith(nickname)) { + // 例如nickname是"十二",card是"十二|本月已发送1000条消息" prompt = prompt.replace(`@${card}`, '').trim() + // 如果是好友,显示的还是昵称 + prompt = prompt.replace(`@${nickname}`, '').trim() + } else { + // 互不包含,分别替换 + if (nickname) { + prompt = prompt.replace(`@${nickname}`, '').trim() + } + if (card) { + prompt = prompt.replace(`@${card}`, '').trim() + } } + } else if (nickname) { + prompt = prompt.replace(`@${nickname}`, '').trim() + } else if (card) { + prompt = prompt.replace(`@${card}`, '').trim() } - } else if (nickname) { - prompt = prompt.replace(`@${nickname}`, '').trim() - } else if (card) { - prompt = prompt.replace(`@${card}`, '').trim() } + } catch (err) { + logger.warn(err) } } else { let ats = e.message.filter(m => m.type === 'at') diff --git a/utils/common.js b/utils/common.js index 62181c8..b9f9f33 100644 --- a/utils/common.js +++ b/utils/common.js @@ -1,18 +1,20 @@ // import { remark } from 'remark' // import stripMarkdown from 'strip-markdown' -import {exec} from 'child_process' +import { exec } from 'child_process' import lodash from 'lodash' import fs from 'node:fs' import path from 'node:path' import buffer from 'buffer' import yaml from 'yaml' import puppeteer from '../../../lib/puppeteer/puppeteer.js' -import {Config} from './config.js' -import {convertSpeaker, generateVitsAudio, speakers as vitsRoleList} from './tts.js' -import VoiceVoxTTS, {supportConfigurations as voxRoleList} from './tts/voicevox.js' -import AzureTTS, {supportConfigurations as azureRoleList} from './tts/microsoft-azure.js' -import {translate} from './translate.js' +import common from '../../../lib/common/common.js' +import { Config } from './config.js' +import { convertSpeaker, generateVitsAudio, speakers as vitsRoleList } from './tts.js' +import VoiceVoxTTS, { supportConfigurations as voxRoleList } from './tts/voicevox.js' +import AzureTTS, { supportConfigurations as azureRoleList } from './tts/microsoft-azure.js' +import { translate } from './translate.js' import uploadRecord from './uploadRecord.js' +import Version from './version.js' // export function markdownToText (markdown) { // return remark() // .use(stripMarkdown) @@ -81,6 +83,9 @@ export async function tryTimes (promiseFn, maxTries = 10) { } export async function makeForwardMsg (e, msg = [], dec = '') { + if (Version.isTrss) { + return common.makeForwardMsg(e, msg, dec) + } let nickname = Bot.nickname if (e.isGroup) { try { @@ -127,9 +132,9 @@ export async function makeForwardMsg (e, msg = [], dec = '') { } } forwardMsg.data = forwardMsg.data - .replace(/\n/g, '') - .replace(/