Delen via


Het aangepaste kanaal definiëren

Toepasselijke kanalen: sms, aangepast

Nu u de onderdelen van uw aangepaste kanaal hebt gedefinieerd, is het tijd om het kanaal te definiëren. In deze stap verbindt u alle voorgaande stukken in één metadatabestand, dat een record is van de entiteit Kanaaldefinitie (msdyn_channeldefinition).

Belangrijk

Als u metagegevensrecords rechtstreeks in het aanpassingsbestand configureert, moet u ervoor zorgen dat de GUID's in kleine letters worden weergegeven.

Contract kanaaldefinitie

Logische naam van entiteit: msdyn_channeldefinition

Naam van entiteitset: msdyn_channeldefinitions

Naam primaire id-kenmerk: msdyn_channeldefinitionid

  • msdyn_displayname:: tekenreeks - optioneel. Weergavenaam van het kanaal.
  • msdyn_description: tekenreeks - optioneel. Beschrijving van het kanaal.
  • msdyn‑channeltype: tekenreeks - vereist. Ondersteunde waarden: aangepast, sms.
  • msdyn_outboundendpointurltemplate: tekenreeks – vereist. Naam van de aangepaste API voor de uitgaande stroom.
  • msdyn_hasinbound:: bit - vereist. Booleaanse waarde die aangeeft of het kanaal inkomende berichten ondersteunt.
  • msdyn_hasdeliveryreceipt:: bit - vereist. Booleaanse waarde die aangeeft of het kanaal ontvangstbewijzen ondersteunt.
  • msdyn_supportsaccount:: bit - vereist. Booleaanse waarde die aangeeft of het kanaal configuratie op accountniveau ondersteunt. Voor sms moet het waar zijn; anders, onwaar.
  • msdyn_channeldefinitionexternalentity: tekenreeks - vereist. Naam van de CDS-entiteit, die een uitgebreide configuratie van het kanaalexemplaar vertegenwoordigt.
  • msdyn_channeldefinitionexternalformid: GUID - vereist. Id van het formulier dat moet worden weergegeven om de configuratie van de uitgebreide kanaalexemplaartabel weer te geven.
  • msdyn_channeldefinitionaccountexternalentity: tekenreeks - optioneel. Naam van de CDS-entiteit, die een uitgebreide configuratie van het kanaalexemplaaraccount vertegenwoordigt.
  • msdyn_channeldefinitionaccountexternalformid: tekenreeks - optioneel. Id van het formulier dat moet worden weergegeven om de configuratie van de uitgebreide kanaalexemplaaraccounttabel weer te geven.
  • msdyn_messageformid:: GUID - optioneel. Definieert een formulier dat de berichteditor voor het kanaal vertegenwoordigt.

Kanalen worden als oplossingsonderdelen gedefinieerd in customizations.xml. Plaats elke msdyn_channeldefinition onder elementen ImportExportXml>msdyn_channeldefinition. Elk berichtonderdeelelement msdyn_channeldefinition moet zijn eigen unieke id hebben in de vorm van een GUID als het XML-kenmerk msdyn_channeldefinitionid. Wanneer uw oplossing wordt geïmporteerd, wordt een nieuwe rij gemaakt in de tabel msdyn_channeldefinition.

Houd in het volgende voorbeeld rekening met het volgende:

Voorbeeld van customizations.xml inclusief kanaaldefinitie:

<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>

Voorbeeldoplossingen

De volgende voorbeelden bevatten onverpakte oplossingen voor Dataverse en invoegtoepassingsprojecten. Als u deze oplossingen wilt inpakken en importeren, moet u eerst het invoegtoepassingsproject bouwen. Het project kopieert de assembly naar het oplossingsproject. Verpak vervolgens de oplossing met het hulpprogramma Oplossingspakketten maken.

Het invoegtoepassingsproject bouwen en de oplossing verpakken

  1. Bouw het invoegtoepassingsproject met MSBuild of Visual Studio.

    Bij het bouwen van het project wordt een DLL gemaakt in de map PluginAssemblies in de Dataverse-oplossingsmap.

  2. Pak de onbeheerde map in met Oplossingspakket met behulp van:

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