Publish app - feishu and wecom (#2375)
* feat(app publish): feishu bot (#2290) * feat: feishu publish channel fe * feat: enable feishu fe, feat: feishu token api * feat: feishu bot * chore: extract saveChat from projects/app * chore: remove debug log output * feat: Basic Info * chore: feishu bot fe adjusting * feat: feishu bot docs * feat: new tmpData collection for all tmpdata * chore: compress the image * perf: feishu config * feat: source name * perf: text desc * perf: load system plugins * perf: chat source * feat(publish): Wecom bot (#2343) * chore: Wecom Config * feat(fe): wecom config fe * feat: wecom fe * chore: uses the newest editmodal * feat: update png; adjust the fe * chore: adjust fe * perf: publish app ui --------- Co-authored-by: Finley Ge <32237950+FinleyGe@users.noreply.github.com>
This commit is contained in:
@@ -2,7 +2,7 @@ import type { NextApiResponse } from 'next';
|
||||
import { authCert } from '@fastgpt/service/support/permission/auth/common';
|
||||
import { NodeTemplateListItemType } from '@fastgpt/global/core/workflow/type/node.d';
|
||||
import { NextAPI } from '@/service/middleware/entry';
|
||||
import { getSystemPluginTemplates } from '@fastgpt/plugins/register';
|
||||
import { getSystemPlugins } from '@/service/core/app/plugin';
|
||||
import { FlowNodeTemplateTypeEnum } from '@fastgpt/global/core/workflow/constants';
|
||||
import { FlowNodeTypeEnum } from '@fastgpt/global/core/workflow/node/constant';
|
||||
import { ParentIdType } from '@fastgpt/global/common/parentFolder/type';
|
||||
@@ -24,7 +24,7 @@ async function handler(
|
||||
|
||||
const formatParentId = parentId || null;
|
||||
|
||||
return getSystemPluginTemplates().then((res) =>
|
||||
return getSystemPlugins().then((res) =>
|
||||
res
|
||||
// Just show the active plugins
|
||||
.filter((item) => item.isActive)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { ApiRequestProps, ApiResponseType } from '@fastgpt/service/type/next';
|
||||
import { NextAPI } from '@/service/middleware/entry';
|
||||
import { ParentIdType, ParentTreePathItemType } from '@fastgpt/global/common/parentFolder/type';
|
||||
import { getSystemPluginTemplates } from '@fastgpt/plugins/register';
|
||||
import { getSystemPlugins } from '@/service/core/app/plugin';
|
||||
|
||||
export type pathQuery = {
|
||||
parentId: ParentIdType;
|
||||
@@ -19,7 +19,7 @@ async function handler(
|
||||
|
||||
if (!parentId) return [];
|
||||
|
||||
const plugins = await getSystemPluginTemplates();
|
||||
const plugins = await getSystemPlugins();
|
||||
const plugin = plugins.find((item) => item.id === parentId);
|
||||
|
||||
if (!plugin) return [];
|
||||
|
||||
20
projects/app/src/pages/api/support/outLink/feishu/[token].ts
Normal file
20
projects/app/src/pages/api/support/outLink/feishu/[token].ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import type { ApiRequestProps, ApiResponseType } from '@fastgpt/service/type/next';
|
||||
import { POST } from '@fastgpt/service/common/api/plusRequest';
|
||||
|
||||
export type OutLinkFeishuQuery = any;
|
||||
export type OutLinkFeishuBody = any;
|
||||
export type OutLinkFeishuResponse = {};
|
||||
|
||||
async function handler(
|
||||
req: ApiRequestProps<OutLinkFeishuBody, OutLinkFeishuQuery>,
|
||||
res: ApiResponseType<any>
|
||||
): Promise<void> {
|
||||
// send to pro
|
||||
const { token } = req.query;
|
||||
const result = await POST<any>(`support/outLink/feishu/${token}`, req.body, {
|
||||
headers: req.headers as any
|
||||
});
|
||||
res.json(result);
|
||||
}
|
||||
|
||||
export default handler;
|
||||
@@ -13,7 +13,7 @@ export type OutLinkUpdateResponse = {};
|
||||
async function handler(
|
||||
req: ApiRequestProps<OutLinkUpdateBody, OutLinkUpdateQuery>
|
||||
): Promise<OutLinkUpdateResponse> {
|
||||
const { _id, name, responseDetail, limit } = req.body;
|
||||
const { _id, name, responseDetail, limit, app } = req.body;
|
||||
|
||||
if (!_id) {
|
||||
return Promise.reject(CommonErrEnum.missingParams);
|
||||
@@ -24,7 +24,8 @@ async function handler(
|
||||
await MongoOutLink.findByIdAndUpdate(_id, {
|
||||
name,
|
||||
responseDetail,
|
||||
limit
|
||||
limit,
|
||||
app
|
||||
});
|
||||
return {};
|
||||
}
|
||||
|
||||
31
projects/app/src/pages/api/support/outLink/wecom/[token].ts
Normal file
31
projects/app/src/pages/api/support/outLink/wecom/[token].ts
Normal file
@@ -0,0 +1,31 @@
|
||||
import type { ApiRequestProps, ApiResponseType } from '@fastgpt/service/type/next';
|
||||
import { plusRequest } from '@fastgpt/service/common/api/plusRequest';
|
||||
|
||||
export type OutLinkWecomQuery = any;
|
||||
export type OutLinkWecomBody = any;
|
||||
export type OutLinkWecomResponse = {};
|
||||
|
||||
async function handler(
|
||||
req: ApiRequestProps<OutLinkWecomBody, OutLinkWecomQuery>,
|
||||
res: ApiResponseType<any>
|
||||
): Promise<any> {
|
||||
const { token, type } = req.query;
|
||||
const result = await plusRequest({
|
||||
url: `support/outLink/wecom/${token}`,
|
||||
params: {
|
||||
...req.query,
|
||||
type
|
||||
},
|
||||
data: req.body
|
||||
});
|
||||
if (result.data?.data?.message) {
|
||||
// chanllege
|
||||
res.send(result.data.data.message);
|
||||
res.end();
|
||||
}
|
||||
|
||||
res.send('success');
|
||||
res.end();
|
||||
}
|
||||
|
||||
export default handler;
|
||||
@@ -21,7 +21,7 @@ import {
|
||||
} from '@fastgpt/global/core/workflow/runtime/utils';
|
||||
import { GPTMessages2Chats, chatValue2RuntimePrompt } from '@fastgpt/global/core/chat/adapt';
|
||||
import { getChatItems } from '@fastgpt/service/core/chat/controller';
|
||||
import { saveChat } from '@/service/utils/chat/saveChat';
|
||||
import { saveChat } from '@fastgpt/service/core/chat/saveChat';
|
||||
import { responseWrite } from '@fastgpt/service/common/response';
|
||||
import { pushChatUsage } from '@/service/support/wallet/usage/push';
|
||||
import { authOutLinkChatStart } from '@/service/support/permission/auth/outLink';
|
||||
|
||||
Reference in New Issue
Block a user