Richtlinien für Aktionen, die mit ausgehenden Wählregeln verwendet werden

Besondere Überlegungen gelten bei der Definition des Erfolgsschemas einer Datenaktion, die Daten an eine ausgehende Wählregel zurückgibt.

Eigenschaften der Nestausgabe

When constructing its output contact (success schema), it is imperative to nest properties when necessary. If an output field from /execute is a complex object, the corresponding property in the schema should be a nested schema, and not a string that assumes “flattened” output. Outbound already uses ?flatten=true to flatten output.

Beispiel für eine nicht verschachtelte Eigenschaft

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "data.my data field": {
      "type": "string",
    }
  }
}

The above example specifies a “data.my data field” in the success schema of a data action. The resulting action won’t work if it used by an outbound dialing data action rule. Outbound will be unable to find the field in the /actions/{actionId}/execute response. It will skip calls with a result of ININ-OUTBOUND-RULE-ERROR-SKIPPED.

Um dieses Problem zu vermeiden, machen Sie "Mein Datenfeld" zu einer verschachtelten Eigenschaft des Feldes "Daten":

Ordnungsgemäß verschachteltes Beispiel

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "my data field": {
          "type": "string"
        }
      }
    }
  }
}

Im Allgemeinen sollte Ihr Ausgabeschema die gleiche Struktur haben wie die Eigenschaften, die Sie von der /execute-Anforderung zurückerhalten möchten.

Betrachten Sie dieses einfache Objekt und wie das Ausgabeschema es zurückgibt:

Ein einfaches Objekt

{
  "foo": {
    "bat": "bar"
  }
}

Ausgabeschema eines einfachen Objekts

{
 "$schema": "http://json-schema.org/draft-04/schema#",
 "type": "object",
 "properties": {
   "foo": {
     "type": "string"
   }
 }
}

Um dies mit Outbound kompatibel zu machen, ändern Sie das Ausgabeschema von Simple Object, um die Eigenschaft zu verschachteln:

Ordnungsgemäß verschachteltes einfaches Objekt

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "foo": {
      "type": "object",
      "properties": {
        "bat": {
          "type": "string"
        }
      }
    }
  }
}

Dieses Schema wird zurückgegeben:

{
  "foo": {
    "bat": "bar"
  }
}

Erforderliche Felder

Wenn es Felder gibt, die für Ihre Datenaktion erforderlich sind, markieren Sie diese Felder im Erfolgsschema als erforderlich.

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "required": [
    "contact_id",
    "phone_number"
  ],
  "properties": {
   ...
    },
Hinweis: Sie können maximal zwei Bedingungen für Datenaktionsregeln für eine einzelne Kampagne haben.