Freigeben über


Den benutzerdefinierten Kanal festlegen

Anwendbare Kanäle: SMS, benutzerdefiniert

Nachdem Sie nun die Teile Ihres benutzerdefinierten Kanals festgelegt haben, ist es an der Zeit, den Kanal zu definieren. In diesem Schritt verbinden Sie alle vorherigen Teile in einer Metadatendatei, die ein Datensatz der Entität Kanaldefinition (msdyn_channeldefinition) ist.

Wichtig

Wenn Sie Metadatensätze direkt in der Anpassungsdatei konfigurieren, achten Sie darauf, dass die GUIDs in Kleinbuchstaben geschrieben sind.

Kanaldefinitionsvertrag

Der logische Name: msdyn_channeldefinition

Entitätssatzname: msdyn_channeldefinition

Attributname der primären ID: msdyn_channeldefinitionid

  • msdyn‑displayname: Zeichenfolge - Optional. Der Anzeigename des Kanals.
  • msdyn‑Beschreibung Zeichenfolge - Optional. Beschreibung des Kanals.
  • msdyn_channeltype: Zeichenfolge - Erforderlich. Unterstützte Werte: Benutzredefiniert, SMS.
  • msdyn_outboundendpointurltemplate: Zeichenfolge - Erforderlich. Name der benutzerdefinierten API für den ausgehenden Flow.
  • msdyn_hasinbound:: Teil - Erforderlich. Boolescher Wert, der angibt, ob der Kanal eingehende Nachrichten unterstützt.
  • msdyn_hasdeliveryreceipt:: Teil - Erforderlich. Boolescher Wert, der angibt, ob der Kanal eingehende Lieferungsnachrichten unterstützt.
  • msdyn_supportsaccount:: Teil - Erforderlich. Boolescher Wert, der angibt, ob der Kanal Kontoebenenkonfiguration unterstützt. Für SMS muss er „wahr“ sein, andernfalls „falsch“.
  • msdyn_channeldefinitionexternalentity:: Zeichenfolge - Erforderlich. Name der CDS-Entität, die eine erweiterte Konfiguration der Kanalinstanz darstellt.
  • msdyn_channeldefinitionexternalformid:. GUID - Erforderlich: ID des Formulars, das gerendert werden soll, um die Konfiguration der erweiterten Kanalinstanztabelle anzuzeigen.
  • msdyn_channeldefinitionaccountexternalentity:: Zeichenfolge - Optional. Name der CDS-Entität, die eine erweiterte Konfiguration des Kanalinstanzkontos darstellt.
  • msdyn_channeldefinitionaccountexternalformid:: Zeichenfolge - Optional. ID des Formulars, das gerendert werden soll, um die Konfiguration der erweiterten Kanalinstanzkontotabelle anzuzeigen.
  • msdyn_messageformid:: GUID - Optional. Definiert ein Formular, das den Nachrichteneditor für den Kanal darstellt.

Kanäle werden in der customizations.xml als Lösungskomponenten festgelegt. Platzieren Sie alle msdyn_channeldefinition unter ImportExportXml>msdyn_channeldefinitions Elementen. Jedes Nachrichtenteilelement msdyn_channeldefinition muss eine eigene eindeutige ID in Form einer GUID als das XML-Attribut msdyn_channeldefinitionid enthalten sein. Wenn Ihre Lösung importiert wurde, wird eine neue Zeile in der Tabelle msdyn_channeldefinition erstellt.

Beachten Sie im nachstehenden Beispiel Folgendes:

Beispiel für customizations.xml einschließlich Kanaldefinition:

<ImportExportXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <msdyn_channeldefinitions>
    <msdyn_channeldefinition msdyn_channeldefinitionid="af0c2a3c-85a5-43b3-84be-2a4a171249f3">
      <msdyn_channeldefinitionaccountexternalentity>cr65f_samplechannelinstanceaccount</msdyn_channeldefinitionaccountexternalentity>
      <msdyn_channeldefinitionaccountexternalformid>3071133f-1208-4dc1-8eba-4d4724961029</msdyn_channeldefinitionaccountexternalformid>
      <msdyn_channeldefinitionexternalentity>cr65f_samplechannelinstance</msdyn_channeldefinitionexternalentity>
      <msdyn_channeldefinitionexternalformid>7d2b885a-80eb-479d-b0c3-600bc41e9789</msdyn_channeldefinitionexternalformid>
      <msdyn_channeltype>Custom</msdyn_channeltype>
      <msdyn_description>Metadata definition for sample custom channel</msdyn_description>
      <msdyn_displayname>Sample custom channel</msdyn_displayname>
      <msdyn_hasdeliveryreceipt>0</msdyn_hasdeliveryreceipt>
      <msdyn_hasinbound>0</msdyn_hasinbound>
      <msdyn_messageformid>69723cfe-3835-4126-ab9a-a82a5b88c21d</msdyn_messageformid>
      <msdyn_outboundendpointurltemplate>/cr65f_OutboundCustomApi</msdyn_outboundendpointurltemplate>
      <msdyn_specialconsentrequired>0</msdyn_specialconsentrequired>
      <msdyn_supportsaccount>0</msdyn_supportsaccount>
      <msdyn_supportsattachment>0</msdyn_supportsattachment>
      <msdyn_supportsbinary>0</msdyn_supportsbinary>
      <statecode>0</statecode>
      <statuscode>1</statuscode>
    </msdyn_channeldefinition>
  </msdyn_channeldefinitions>
</ImportExportXml>

Beispiellösungen

Die folgenden Beispiele enthalten unverpackte Lösungen für Dataverse und Plugin-Projekte. Um diese Lösungen zu packen und zu importieren, erstellen Sie zuerst das Plugin-Projekt. Das Projekt kopiert dann die Assembly in das Lösungsprojekt. Dann verpacken Sie die Lösung mit dem Lösungspaket-Tool.

So wird das Plugin-Projekt erstellt und die Lösung verpackt

  1. Erstellen Sie das Plug-In-Projekt mit MSBuild oder Visual Studio.

    Beim Erstellen des Projekts entsteht eine DLL im Ordner „PluginAssemblies“ innerhalb des Dataverse-Lösungsordners.

  2. Packen Sie den nicht verwalteten Ordner mit dem Solution Packager mit einer der folgenden Methoden:

    pac solution pack --zipfile C:\tmp\SampleCustomChannelSolution.zip -f src\Solutions\Samples\SampleCustomChannel\SampleCustomChannel.Solution\unmanaged --packagetype Both