addActionHandler (客户端 API 参考)

为智能 Microsoft 365 Copilot 副驾驶®操作注册自定义处理程序函数。

Syntax

Xrm.Copilot.addActionHandler(actionId, actionHandler).then(successCallback, errorCallback);

Parameters

参数名称 类型 必需 Description
actionId 字符串 是的 要处理的操作的唯一标识符。
actionHandler 函数 是的 触发操作时要调用的函数。 接收操作的数据有效负载作为参数。
successCallback 函数 是的 作成功时要调用的函数。
errorCallback 函数 是的 作失败时要调用的函数。

返回值

类型:Promise<void>

Remarks

可以为同一 actionId个处理程序注册多个处理程序。 它们按顺序运行。 API 以无提示方式忽略为同 actionId一个函数引用注册两次。 如果未启用智能 Microsoft 365 Copilot 副驾驶®,API 将不执行任何操作。

内置操作 ID

以下操作 ID 自动注册平台默认处理程序。 可以使用 removeDefaultActionHandlers 将自定义处理程序与它们一起添加,或者首先删除默认处理程序。

操作 ID Description 数据属性
MS.PA.CopilotChat.OpenRecord 打开记录。 entity (字符串) - 表逻辑名称; recordId (字符串) - 记录 ID
MS.PA.CopilotChat.NavigateToView 导航到视图。 entity (字符串) - 表逻辑名称; fetchXml (字符串) - FetchXML 查询

Example

const handler = async ({ entity, recordId }) => {
    // Open the record in a side pane instead of navigating away
    const pane = Xrm.App.sidePanes.createPane({ canClose: true });
    await pane.navigate({ pageType: "entityrecord", entityName: entity, entityId: recordId });
};

await Xrm.Copilot.addActionHandler("My.Namespace.MyActionMessage", handler);

removeActionHandler 方法
Xrm.Copilot(客户端 API 参考)