addActionHandler (referência da API do cliente)

Registra uma função de manipulador personalizada para uma ação de Microsoft 365 Copilot.

Sintaxe

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

Parameters

Nome do parâmetro Tipo Obrigatório Descrição
actionId cadeia Yes O identificador exclusivo da ação a ser manipulada.
actionHandler Função Yes A função a ser invocada quando a ação é disparada. Recebe o conteúdo de dados da ação como um argumento.
successCallback Função Yes Uma função a ser chamada quando a operação for bem-sucedida.
errorCallback Função Yes Uma função a ser chamada quando a operação falhar.

Valor de retorno

Tipo: Promise<void>

Remarks

Você pode registrar vários manipuladores para o mesmo actionId. Eles são executados sequencialmente. A API ignora silenciosamente o registro da mesma referência de função duas vezes para o mesmo actionId. A API não fará nada se Microsoft 365 Copilot não estiver habilitado.

IDs de ação internas

As IDs de ação a seguir têm manipuladores padrão de plataforma registrados automaticamente. Você pode adicionar manipuladores personalizados ao lado deles ou remover os manipuladores padrão primeiro usando removeDefaultActionHandlers.

ID da ação Descrição Propriedades dos dados
MS.PA.CopilotChat.OpenRecord Abre um registro. entity (cadeia de caracteres) — nome lógico da tabela; recordId (cadeia de caracteres) — ID do registro
MS.PA.CopilotChat.NavigateToView Navega até um modo de exibição. entity (cadeia de caracteres) — nome lógico da tabela; fetchXml (cadeia de caracteres) — consulta 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);

Método removeActionHandler
Xrm.Copilot (referência da API cliente)