Använd API-anropssvar i anpassade åtgärder custom-action-enhancements

Du kan utnyttja API-anropssvar i anpassade åtgärder och samordna dina resor baserat på dessa svar.

Viktiga anteckningar custom-action-enhancements-notes

  • Skalära arrayer stöds i svarsnyttolasten:

    code language-none
    "dummyScalarArray": [
    "val1",
    "val2"
    ]
    
  • Heterogena arrayer stöds inte i svarsnyttolasten:

    code language-none
    "dummyRandomArray": [
    20,
    "aafw",
    false
    ]
    

Konfigurera den anpassade åtgärden config-response

  1. Skapa den anpassade åtgärden. Se den här sidan.

  2. Klicka i fältet Svar.

    {width="80%"}

  3. Klistra in ett exempel på nyttolasten som returneras av anropet. Kontrollera att fälttyperna är korrekta (sträng, heltal osv.). Här är ett exempel på nyttolast för svar som fångats in under anropet. Vår lokala slutpunkt skickar antalet förmånspoäng och statusen för en profil.

    code language-none
    {
    "customerID" : "xY12hye",
    "status":"gold",
    "points": 1290 }
    

    {width="80%"}

    Varje gång API anropas hämtas alla fält som ingår i nyttolastexemplet.

  4. Vi lägger också till customerID som frågeparameter.

    {width="80%"}

  5. Klicka på Spara.

Utnyttja svarsalternativen under en resa response-in-journey

Lägg bara till den anpassade åtgärden på en resa. Du kan sedan utnyttja svarsnyttolastfälten under förhållanden, andra åtgärder och meddelandepersonalisering.

Du kan till exempel lägga till ett villkor för att kontrollera antalet förmånspoäng. När personen kommer in på restaurangen skickar din lokala slutpunkt ett samtal med profilens lojalitetsinformation. Du kan skicka en push-funktion om profilen är en guldkund. Om ett fel upptäcks i samtalet skickar du en anpassad åtgärd till systemadministratören.

  1. Lägg till din händelse och den anpassade lojalitetsåtgärden som skapades tidigare.

  2. I den anpassade lojalitetsåtgärden kopplar du frågeparametern för kund-ID till profil-ID:t. Markera alternativet Lägg till en alternativ sökväg om en timeout eller ett fel inträffar.

  3. Lägg till ett villkor i den första grenen och använd den avancerade redigeraren för att utnyttja åtgärdssvarsfälten, under noden Kontext .

  4. Lägg sedan till push-meddelanden och anpassa meddelandet med svarsfälten. I vårt exempel personaliserar vi innehållet med hjälp av antalet kundpoäng och kundens status. Åtgärdssvarsfälten är tillgängliga under Sammanhangsberoende attribut > Journey Orchestration > Åtgärder.

    note note
    NOTE
    Varje profil som anger den anpassade åtgärden utlöser ett anrop. Även om svaret alltid är detsamma kommer Journey fortfarande att ringa ett samtal per profil.
  5. Lägg till ett villkor i timeout- och felgrenen och utnyttja det inbyggda fältet jo_status_code. I vårt exempel använder vi
    http_400 -feltyp. Se det här avsnittet.

    code language-none
    @action{ActionLoyalty.jo_status_code} == "http_400"
    

  6. Lägg till en anpassad åtgärd som ska skickas till din organisation.

Loggar för testläge test-mode-logs

I testläge har du åtkomst till statusloggar som är relaterade till anpassade åtgärdssvar. Om du har definierat anpassade åtgärder med svar under din resa, visas ett actionsHistory -avsnitt i loggarna med den nyttolast som returneras av den externa slutpunkten (som ett svar från den anpassade åtgärden). Detta kan vara mycket användbart när det gäller felsökning.

Felstatus error-status

Fältet jo_status_code är alltid tillgängligt även när ingen svarsnyttolast har definierats.

Här är möjliga värden för det här fältet:

  • http-statuskod: http_<HTTP API call returned code>, till exempel http_200 eller http_400
  • timeout-fel: timeout
  • capping-fel: cApped
  • internt fel: internalError

Ett åtgärdsanrop hanteras av fel när den returnerade http-koden är större än 2xx eller om ett fel inträffar. I sådana fall skickas resan till den särskilda tidsgränsen eller felavdelningen.

WARNING
Endast nyligen skapade anpassade åtgärder inkluderar fältet jo_status_code som är körklar. Om du vill använda den med en befintlig anpassad åtgärd måste du uppdatera åtgärden. Du kan till exempel uppdatera beskrivningen och spara den.

Uttryckssyntax exp-syntax

Här är syntaxen:

#@action{myAction.myField}

Här är några exempel:

 // action response field
 @action{<action name>.<path to the field>}
 @action{ActionLoyalty.status}
 // action response field
 @action{<action name>.<path to the field>, defaultValue: <default value expression>}
 @action{ActionLoyalty.points, defaultValue: 0}
 @action{ActionLoyalty.points, defaultValue: @event{myEvent.newPoints}}

När du ändrar samlingar i ett anpassat åtgärdssvar kan du förlita dig på currentActionField för att komma åt det aktuella objektet:

count(
@action{MyAction.MyCollection.all(
currentActionField.description == "abc"
)}
)

Ytterligare resurser

Mer information finns på följande sidor:

recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76