Configurar vínculo al botón de conversación en formulario de entidad de aplicación basada en modelo
Este tema describe cómo usted, como personalizador del sistema, puede configurar el botón Vincular a conversación en el formulario de entidad de aplicación basada en modelo para los agentes que utilizan la aplicación Omnicanal para servicio al cliente.
Cuando un agente acepta una solicitud de conversación, y no hay ningún registro en Omnicanal para servicio al cliente vinculado con esta conversación, el agente desea buscar un registro de contacto o de cuenta y vincular el registro a la conversación. Como personalizador del sistema, usted debe configurar el botón Vincular a conversación en el formulario de entidad (contacto, cuenta o caso) de la aplicación basada en modelo para que los agentes puedan vincular un registro a la conversación actual. Tras vincular un registro a la conversación, la página Conversación activa se carga y muestra el registro que vinculó.
Nota
El botón de Vínculo a conversación solo se muestra en una sesión (contexto de una conversación) y no en los formularios principales.
Para agregar el botón Vínculo a conversación en el formulario de entidad de aplicación basada en modelo, como personalizador del sistema, usted debe personalizar la definición (<RibbonDiffXml>
) de la cinta de opciones . Las definiciones de los cambios de personalización que especifique se aplican en tiempo de ejecución cuando la cinta se muestra en la aplicación.
Con la última versión de las soluciones base de Omnicanal para servicio al cliente, usted obtiene recursos web para agregar el botón Vínculo a conversación.
Personalice la cinta de opciones de la entidad para agregar el botón Vínculo a conversación
Para agregar el botón Vínculo a conversación debe personalizar la cinta de opciones (<RibbonDiffXml>
) de la entidad. Para ello, editará la cinta de opciones en el Contexto de formulario de la entidad.
Nombre del recurso web:msdyn_OmnichannelLinkCommand.js
Paso 1: Exportar y editar el XML
Paso 2: Agregar el comando y definir acciones de la cinta de opciones
Paso 3: Habilitar reglas de pantalla
Paso 4: Importar la cinta de opciones
Paso 1: Exportar y editar el XML
En este paso, debe exportar la cinta de opciones y editar <RibbonDiffXml>
.
Para obtener más información, consulte Exportar, preparar para editar e importar la cinta de opciones.
Paso 2: Agregar el comando y definir acciones de la cinta de opciones
Edite el XML para proporcionar los valores de los parámetros por ejemplo:
- Biblioteca
- FunctionName
- Valor de StringParameter
- Botón
Nombre del parámetro | Valor | Comentario |
---|---|---|
Library |
$webresource:msdyn_OmnichannelLinkCommand.js |
|
FunctionName |
OmniChannelPackage.OmnichannelLinkCommand.linkRecordToConversation |
|
StringParameter Value |
|
|
Miniprograma de ejemplo
<JavaScriptFunction FunctionName="OmniChannelPackage.OmnichannelLinkCommand.linkRecordToConversation" Library="$webresource:msdyn_OmnichannelLinkCommand.js">
<StringParameter Value="msdyn_account_msdyn_ocliveworkitem_Customer" />
</JavaScriptFunction>
Ejemplo XML para personalización de cinta de opciones de la entidad Cuenta
<RibbonDiffXml>
<CustomActions>
<CustomAction Id="msdyn.account.LinkToConversation.Button.CustomAction" Location="Mscrm.Form.account.MainTab.Save.Controls._children" Sequence="57">
<CommandUIDefinition>
<Button Alt="$LocLabels:msdyn.account.LinkToConversation.Button.Alt" Command="msdyn.account.LinkToConversation.Command" Id="msdyn.account.LinkToConversation.Button" Image32by32="$webresource:msdyn_LinkToConversationCommandButtonIcon.png" Image16by16="$webresource:msdyn_LinkToConversationCommandButtonIcon.png" LabelText="$LocLabels:msdyn.account.LinkToConversation.Button.LabelText" Sequence="57" TemplateAlias="o1" ToolTipTitle="$LocLabels:msdyn.account.LinkToConversation.Button.ToolTipTitle" ToolTipDescription="$LocLabels:msdyn.account.LinkToConversation.Button.ToolTipDescription" />
</CommandUIDefinition>
</CustomAction>
</CustomActions>
<Templates>
<RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates>
</Templates>
<CommandDefinitions>
<CommandDefinition Id="msdyn.account.LinkToConversation.Command">
<EnableRules>
<EnableRule Id="msdyn.account.EnableInConversationContext.EnableRule" />
</EnableRules>
<DisplayRules />
<Actions>
<JavaScriptFunction FunctionName="OmniChannelPackage.OmnichannelLinkCommand.linkRecordToConversation" Library="$webresource:msdyn_OmnichannelLinkCommand.js">
<StringParameter Value="msdyn_account_msdyn_ocliveworkitem_Customer" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules />
<EnableRules>
<EnableRule Id="msdyn.account.EnableInConversationContext.EnableRule">
<CustomRule FunctionName="OmniChannelPackage.OmnichannelLinkCommand.shouldDisplayLinkCommand" Library="$webresource:msdyn_OmnichannelLinkCommand.js" Default="false" />
</EnableRule>
</EnableRules>
</RuleDefinitions>
<LocLabels>
<LocLabel Id="msdyn.account.LinkToConversation.Button.Alt">
<Titles>
<Title description="Link to conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.account.LinkToConversation.Button.LabelText">
<Titles>
<Title description="Link to Conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.account.LinkToConversation.Button.ToolTipDescription">
<Titles>
<Title description="Link this record to the conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.account.LinkToConversation.Button.ToolTipTitle">
<Titles>
<Title description="Link to conversation" languagecode="1033" />
</Titles>
</LocLabel>
</LocLabels>
</RibbonDiffXml>
Ejemplo XML para personalización de cinta de opciones de la entidad Caso
<RibbonDiffXml>
<CustomActions>
<CustomAction Id="msdyn.incident.LinkToConversation.Button.CustomAction" Location="Mscrm.Form.incident.MainTab.Save.Controls._children" Sequence="45">
<CommandUIDefinition>
<Button Alt="$LocLabels:msdyn.incident.LinkToConversation.Button.Alt" Command="msdyn.incident.LinkToConversation.Command" Id="msdyn.incident.LinkToConversation.Button" Image32by32="$webresource:msdyn_LinkToConversationCommandButtonIcon.png" Image16by16="$webresource:msdyn_LinkToConversationCommandButtonIcon.png" LabelText="$LocLabels:msdyn.incident.LinkToConversation.Button.LabelText" Sequence="45" TemplateAlias="o1" ToolTipTitle="$LocLabels:msdyn.incident.LinkToConversation.Button.ToolTipTitle" ToolTipDescription="$LocLabels:msdyn.incident.LinkToConversation.Button.ToolTipDescription" />
</CommandUIDefinition>
</CustomAction>
</CustomActions>
<Templates>
<RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates>
</Templates>
<CommandDefinitions>
<CommandDefinition Id="msdyn.incident.LinkToConversation.Command">
<EnableRules>
<EnableRule Id="msdyn.incident.EnableInConversationContext.EnableRule" />
</EnableRules>
<DisplayRules />
<Actions>
<JavaScriptFunction FunctionName="OmniChannelPackage.OmnichannelLinkCommand.linkRecordToConversation" Library="$webresource:msdyn_OmnichannelLinkCommand.js">
<StringParameter Value="msdyn_incident_msdyn_ocliveworkitem" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules />
<EnableRules>
<EnableRule Id="msdyn.incident.EnableInConversationContext.EnableRule">
<CustomRule FunctionName="OmniChannelPackage.OmnichannelLinkCommand.shouldDisplayLinkCommand" Library="$webresource:msdyn_OmnichannelLinkCommand.js" />
</EnableRule>
</EnableRules>
</RuleDefinitions>
<LocLabels>
<LocLabel Id="msdyn.incident.LinkToConversation.Button.Alt">
<Titles>
<Title description="Link to conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.incident.LinkToConversation.Button.LabelText">
<Titles>
<Title description="Link to Conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.incident.LinkToConversation.Button.ToolTipDescription">
<Titles>
<Title description="Link this record to the conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.incident.LinkToConversation.Button.ToolTipTitle">
<Titles>
<Title description="Link to conversation" languagecode="1033" />
</Titles>
</LocLabel>
</LocLabels>
</RibbonDiffXml>
Ejemplo XML para personalización de cinta de opciones de la entidad Contacto
<RibbonDiffXml>
<CustomActions>
<CustomAction Id="msdyn.contact.LinkToConversation.Button.CustomAction" Location="Mscrm.Form.contact.MainTab.Save.Controls._children" Sequence="53">
<CommandUIDefinition>
<Button Alt="$LocLabels:msdyn.contact.LinkToConversation.Button.Alt" Command="msdyn.contact.LinkToConversation.Button.Command" Id="msdyn.contact.LinkToConversation.Button" Image32by32="$webresource:msdyn_LinkToConversationCommandButtonIcon.png" Image16by16="$webresource:msdyn_LinkToConversationCommandButtonIcon.png" LabelText="$LocLabels:msdyn.contact.LinkToConversation.Button.LabelText" Sequence="53" TemplateAlias="o1" ToolTipTitle="$LocLabels:msdyn.contact.LinkToConversation.Button.ToolTipTitle" ToolTipDescription="$LocLabels:msdyn.contact.LinkToConversation.Button.ToolTipDescription" />
</CommandUIDefinition>
</CustomAction>
</CustomActions>
<Templates>
<RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates>
</Templates>
<CommandDefinitions>
<CommandDefinition Id="msdyn.contact.LinkToConversation.Button.Command">
<EnableRules>
<EnableRule Id="msdyn.contact.EnableInConversationContext.EnableRule" />
</EnableRules>
<DisplayRules />
<Actions>
<JavaScriptFunction FunctionName="OmniChannelPackage.OmnichannelLinkCommand.linkRecordToConversation" Library="$webresource:msdyn_OmnichannelLinkCommand.js">
<StringParameter Value="msdyn_contact_msdyn_ocliveworkitem_Customer" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules />
<EnableRules>
<EnableRule Id="msdyn.contact.EnableInConversationContext.EnableRule">
<CustomRule FunctionName="OmniChannelPackage.OmnichannelLinkCommand.shouldDisplayLinkCommand" Library="$webresource:msdyn_OmnichannelLinkCommand.js" Default="false" />
</EnableRule>
</EnableRules>
</RuleDefinitions>
<LocLabels>
<LocLabel Id="msdyn.contact.LinkToConversation.Button.Alt">
<Titles>
<Title description="Link to conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.contact.LinkToConversation.Button.LabelText">
<Titles>
<Title description="Link to Conversation" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.contact.LinkToConversation.Button.ToolTipDescription">
<Titles>
<Title description="Link to Conversation tooltip description" languagecode="1033" />
</Titles>
</LocLabel>
<LocLabel Id="msdyn.contact.LinkToConversation.Button.ToolTipTitle">
<Titles>
<Title description="Link to conversation" languagecode="1033" />
</Titles>
</LocLabel>
</LocLabels>
</RibbonDiffXml>
Para obtener más información, consulte Definir acciones de la cinta de opciones.
Paso 3: Habilitar reglas de pantalla
Habilitar regla de presentación para una entidad, y agregar regla personalizadas en la etiqueta de habilitar regla.
El elemento <CustomRule>
llama a una función de una biblioteca de JavaScript que devuelva una promesa.
Nombre del parámetro | Valor | Comentario |
---|---|---|
EnableRule Id |
msdyn.account.EnableInConversationContext.EnableRule |
|
Library |
$webresource:msdyn_OmnichannelLinkCommand.js |
En el elemento <CustomRule> |
FunctionName |
OmniChannelPackage.OmnichannelLinkCommand.shouldDisplayLinkCommand |
En el elemento <CustomRule> |
Ejemplo XML para habilitar reglas de visualización
<CommandDefinitions>
<CommandDefinition Id="msdyn.account.LinkToConversation.Command">
<EnableRules>
<EnableRule Id="msdyn.account.EnableInConversationContext.EnableRule" />
</EnableRules>
<DisplayRules />
<Actions>
<JavaScriptFunction FunctionName="OmniChannelPackage.OmnichannelLinkCommand.linkRecordToConversation" Library="$webresource:msdyn_OmnichannelLinkCommand.js">
<StringParameter Value="msdyn_account_msdyn_ocliveworkitem_Customer" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules />
<EnableRules>
<EnableRule Id="msdyn.account.EnableInConversationContext.EnableRule">
<CustomRule FunctionName="OmniChannelPackage.OmnichannelLinkCommand.shouldDisplayLinkCommand" Library="$webresource:msdyn_OmnichannelLinkCommand.js" Default="false" />
</EnableRule>
</EnableRules>
Para obtener más información, consulte Definir reglas de visualización de la cinta de opciones
Paso 4: Importar la cinta de opciones
En este paso necesita importar la cinta de opciones personalizada.
Para obtener más información, consulte Importar la cinta de opciones.
Vea también
Exportar, preparar para modificar e importar la cinta de opciones
Definir las reglas de habilitación de la cinta de opciones
Pasar los datos desde una página como parámetro de las acciones de la cinta de opciones