1. マーケティングオートメーションAPI

キャンペーン テンプレートをプログラムで操作する

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

このトピックでは、マーケティング オートメーション キャンペーン テンプレートをプログラムで操作する方法について説明します。

キャンペーンテンプレートはSitecore.Marketing.Automation.Definitions.AutomationCampaignTemplates.AutomationCampaignTemplateDefinitionManagerクラスごとに管理されます。これらは、次のパスの下のmasterデータベースに格納されます。

/sitecore/system/Marketing Control Panel/Marketing Automation TemplatesSitecore.Marketing.Automation.Definitions.AutomationCampaignTemplates.AutomationCampaignTemplateDefinitionManagerクラスによって管理されます

タスク

 

コード

自動化キャンペーン テンプレート マネージャーにアクセスします。

AutomationCampaignTemplateDefinitionManager はSitecore DIコンテナーから入手できます。

Constructor Injection

public MyClass(IAutomationCampaignTemplateDefinitionManager manager){}

ServiceLocator

IAutomationCampaignTemplateDefinitionManager manager = ServiceLocator.ServiceProvider.GetRequiredService<IAutomationCampaignTemplateDefinitionManager>();

オートメーションキャンペーンテンプレートを定義する。

オートメーション キャンペーン テンプレートとオートメーション キャンペーンは同じ構造を共有し、IAutomationPlanDefinitionを実装します。詳細については、「 Automationプラン」を参照してください。

自動化キャンペーンテンプレートを保存します。

AutomationPlanDefinition campaignTemplate = CreateTemplate();IAutomationCampaignTemplateDefinitionManager manager = ServiceLocator.ServiceProvider.GetRequiredService<IAutomationCampaignTemplateDefinitionManager>();manager.SaveAsync(campaignTemplate);

既存の自動化キャンペーン テンプレートを更新します。

AutomationPlanDefinition campaignTemplate = CreateTemplate();IAutomationCampaignTemplateDefinitionManager manager = ServiceLocator.ServiceProvider.GetRequiredService<IAutomationCampaignTemplateDefinitionManager>();manager.SaveAsync(campaignTemplate);campaignTemplate.Name = "Updated Name";manager.SaveAsync(campaignTemplate);

オートメーション キャンペーン テンプレートを削除します。

manager.Delete(campaignTemplateId);

オートメーション キャンペーン テンプレートを取得します。

// Get by ID and culture. Will get the latest active versionIAutomationPlanDefinition automationCampaingTemplate= manager.Get(automationCampaingTemplateId, new CultureInfo("da"));// Get by ID and culture. Will get the latest version, including if the version is inactiveIAutomationPlanDefinition automationCampaingTemplate = manager.Get(automationCampaingTemplateId, new CultureInfo("da"), true);// Get a specific version by ID, culture and version numberIAutomationPlanDefinition automationCampaingTemplate = manager.Get(automationCampaingTemplateId, new CultureInfo("da"), 3);

エイリアスを使用して自動化キャンペーンテンプレートを取得します。

CultureInfo culture = new CultureInfo("fr-fr");var automatoinCampaignTemplate = definitionManager.GetByAlias("My alias", culture);

すべてのオートメーション キャンペーン テンプレートを取得します。

// Get All with defaults which will be first page, page size 20, latest active versions onlyResultSet<DefinitionResult<IAutomationPlanDefinition>> campaignTemplates = manager.GetAll(new CultureInfo("da"), new RetrievalParameters<IAutomationPlanDefinition, string>());// Get page 2ResultSet<DefinitionResult<IAutomationPlanDefinition>> campaignTemplates = manager.GetAll(new CultureInfo("da"), new RetrievalParameters<IAutomationPlanDefinition, string>(pageNumber: 2));// Include inactive versionsResultSet<DefinitionResult<IAutomationPlanDefinition>> campaignTemplates = manager.GetAll(new CultureInfo("da"), new RetrievalParameters<IAutomationPlanDefinition, string>(), true);
メモ

自動化キャンペーンテンプレートをプログラムでアクティブ化することはできません。 AutomationCampaignTemplateDefinitionManagerActivateAsyncメソッドが呼び出された場合、またはtheSaveAsyncが呼び出され、activateパラメータがtrueに設定されている場合は、NotSupportedExceptionが発生します。

この記事を改善するための提案がある場合は、 お知らせください!