Sdílet prostřednictvím


Definování vlastního kanálu

Použitelné kanály: SMS, vlastní

Nyní, když jste definovali části vlastního kanálu, je čas definovat kanál. V tomto kroku spojíte všechny předchozí části do jednoho souboru metadat, který je záznamem entity Definice kanálu (msdyn_channeldefinition).

Důležité

Pokud konfigurujete záznamy metadat přímo v souboru vlastních nastavení, ujistěte se, že identifikátory GUID jsou malými písmeny.

Smlouva definice kanálu

Zadejte logický název: msdyn_channeldefinition

Zadejte název sady: msdyn_channeldefinitions

Název primárního atributu ID: msdyn_channeldefinitionid

  • msdyn_displayname: řetězec – volitelné. Zobrazovaný název kanálu.
  • msdyn_description: řetězec – volitelné. Popis kanálu.
  • msdyn_channeltype: string – povinné. Podporované hodnoty: vlastní, SMS
  • msdyn_outboundendpointurltemplate: string – povinné. Název vlastního rozhraní API pro odchozí tok.
  • msdyn_hasinbound: bit – povinné. Logická hodnota udávající, zda kanál podporuje příchozí zprávy.
  • msdyn_hasdeliveryreceipt: bit – povinné. Logická hodnota udávající, zda kanál podporuje zprávy o doručení.
  • msdyn_supportsaccount: bit – povinné. Logická hodnota udávající, zda kanál podporuje konfiguraci na úrovni účtu. U SMS to musí být true, jinak false.
  • msdyn_channeldefinitionexternalentity: řetězec – povinné. Název entity CDS představující rozšířenou konfiguraci instance kanálu.
  • msdyn_channeldefinitionexternalformid: identifikátor GUID – povinné. ID formuláře, který má být vykreslen pro zobrazení konfigurace rozšířené tabulky instance kanálu.
  • msdyn_channeldefinitionaccountexternalentity: řetězec – volitelné. Název entity CDS představující rozšířenou konfiguraci účtu instance kanálu.
  • msdyn_channeldefinitionaccountexternalformid: řetězec – volitelné. ID formuláře, který má být vykreslen pro zobrazení konfigurace rozšířené tabulky účtu instance kanálu.
  • msdyn_messageformid: identifikátor GUID – volitelné. Definuje formulář představující editor zpráv pro kanál.

Kanály jsou definovány v souboru customizations.xml jako součásti řešení. Umístěte každý atribut msdyn_channeldefinition pod prvky ImportExportXml>msdyn_channeldefinitions. Každý prvek části zprávy msdyn_channeldefinition musí obsahovat vlastní jedinečné ID ve formě identifikátoru GUID jako atributu XML msdyn_channelmessagepartid. Při importu vašeho řešení se vytvoří nový řádek pro každou část zprávy v tabulce msdyn_channeldefinition.

V následujícím příkladu si povšimněte:

Příklad souboru customizations.xml obsahujícího definici kanálu:

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

Vzorová řešení

Následující ukázky obsahují rozbalená řešení pro projekty Dataverse a modulů plugin. Chcete-li tato řešení zabalit a importovat, nejprve vytvořte projekt modulu plugin. Projekt poté kopíruje sestavení do projektu řešení. Poté řešení zabalte pomocí nástroje Solution Packager.

Jak sestavit projekt modulů plugin a zabalit řešení

  1. MSBuild nebo Visual Studio umožňuje sestavit projekt modulů plugin.

    Při sestavování projektu se vytvoří knihovna DLL ve složce PluginAssemblies ve složce řešení Dataverse.

  2. Zabalte nespravovanou složku pomocí nástroje pro balení řešení jedním z následujících způsobů:

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