Я разработал пользовательский маршрут в облаке Salesforce Marketing на основе рекомендаций Salesforce https://developer.salesforce.com/docs/atlas.en-us.noversion.mc-app-development.meta/mc-app-development/creating-activities.htm
Мы создали простое веб-приложение со страницей c HTML Page ( index. html) согласно спецификации. Мы закодировали конечные точки (Сохранить, Опубликовать sh, проверить, остановить, сохранить тесты, Выполнить) в веб-API C#, развернутом в Azure Служба приложений. Мы обеспечили безопасность приложения и конечной точки с помощью SSL. Методы веб-API возвращают статус 200OK в случае успеха и статус 400 неверный запрос в случае ошибки. В целях отслеживания мы регистрируем вызов веб-службы в текстовом файле в службе приложения.
Здесь находится файл конфигурации. json для настраиваемого действия в соответствии со спецификациями маркетингового облака.
{
"workflowApiVersion": "1.1",
"metadata": {
"icon": "images/icon.png",
"iconSmall": "images/iconSmall.png"
},
"type": "RestDecision",
"lang": {
"en-US": {
"name": "A custom journey activity",
"description": "A custom Journey Builder activity to call Propensity hub."
}
},
"userInterfaces": {
"configInspector": {
"size": "small"
}
},
"arguments": {
"execute": {
"inArguments": [
{
"CampaignIdentifier": ""
}
],
"outArguments": [],
"timeout": 99000,
"retryCount": 1,
"retryDelay": 50000,
"url": "https://myUrl/api/myApp/execute"
}
},
"configurationArguments": {
"save": {
"url": "https://myUrl/api/myApp/save"
},
"publish": {
"url": "https://myUrl/api/myApp/publish"
},
"validate": {
"url": "https://myUrl/api/myApp/validate"
},
"stop": {
"url": "https://myUrl/api/myApp/stop"
}
},
"outcomes": [
{
"arguments": {
"branchResult": "OPT1"
},
"metaData": {
"label": "Option 1"
}
},
{
"arguments": {
"branchResult": "OPT2"
},
"metaData": {
"label": "Option 2"
}
},
{
"arguments": {
"branchResult": "OPT3"
},
"metaData": {
"label": "Option 3"
}
},
{
"arguments": {
"branchResult": "OPT4"
},
"metaData": {
"label": "Option 4"
}
},
{
"arguments": {
"branchResult": "OPT5"
},
"metaData": {
"label": "Option 5"
}
},
{
"arguments": {
"branchResult": "OPT6"
},
"metaData": {
"label": "Option 6"
}
},
{
"arguments": {
"branchResult": "OPT7"
},
"metaData": {
"label": "Option 7"
}
},
{
"arguments": {
"branchResult": "OPT8"
},
"metaData": {
"label": "Option 8"
}
},
{
"arguments": {
"branchResult": "OPT9"
},
"metaData": {
"label": "Option 9"
}
},
{
"arguments": {
"branchResult": "OPT10"
},
"metaData": {
"label": "Option 10"
}
},
{
"arguments": {
"branchResult": "NONE"
},
"metaData": {
"label": "Option None"
}
}
]
}
Пользовательский пользовательский интерфейс, разработанный для этого хоста, успешно прошел в облачном маркетинге Iframe. Введенные метаданные конфигурации сохраняются правильно, и когда пользовательская операция загружается снова, значения загружаются правильно в Iframe. В двух словах, интерфейс работает нормально.
Однако ни одна из конечных точек веб-API не выполняется. Если я сохраняю поездку, когда нажимаю Сохранить в построителе поездок, конечная точка сохранения (https://myUrl/api/myApp/save) не вызывается (в текстовом файле нет журнала). То же самое с остальными (надеюсь, что я правильно интерпретируя значение этих операций, указанных в документации по маркетинговому облаку.)
Конечные точки достигнуты, хотя при выполнении через Почтальон - я получаю статус 200OK. Я использовал пример маркетингового облака при разработке этого упражнения (https://developer.salesforce.com/docs/atlas.en-us.noversion.mc-app-development.meta/mc-app-development/example-rest-activity.htm)
Буду признателен за любые мысли / помощь.
Спасибо С уважением, Сид