Page tree
Skip to end of metadata
Go to start of metadata

Klassen vom Typ addon_webhook können innerhalb des CRMs über Webhooks aufgerufen werden.

1. Abstrakte Methoden

1.1. perform

1.1.1. Bis V4.5

Syntax:

array perform()

Beschreibung: 

Die Methode muss ein Array zurückgeben.

array('success'   => true | false,
      'stop'      => true | false, //Shall it stop after it?
      'error'     => error message to show
);
  • Im Feld "success" wird angegeben, ob die Aktion erfolgreich war oder ein Fehler auftrat.

  • Über das Feld "stop" kann festgelegt werden, ob nach diesem Hook noch weitere Prozesse ausgeführt werden sollen. Im Fehlerfall kann damit die weitere Bearbeitung eines Objektes abgebrochen werden.

  • Das Feld "error" enthält eine Fehlermeldung, die dem Anwender angezeigt wird

Beispiel:

class myWebHookClass extends addon_webhook
{
    public function perform()
    {
        $result = crmapi::tickets()->changeTicket(5, array('status' => 3);
  
        return array(
            'success'   => ($result == $ttid ? true : false),
            'stop'      => false,
            'error'     => ($result != $ttid ? '' : 'An error occured')
        );
    }
}

1.1.2. Ab V4.6

Syntax:

addon_response addon_response perform()

Beschreibung:

Die Methode muss eine Instanz von addon_response zurückgeben.

Beispiel:

class myWebHookClass extends addon_webhook
{
    public function perform()
    {
        $result = crmapi::tickets()->changeTicket(5, array('status' => 3);
  
        $success = ($result ? true : false);
        $stop = false;
        $error = ($result ? '' : 'An error occured');
  
        return new addon_response($success, $error, $stop);
    }
}

2. Klassen-Methoden

2.1. add_response_action

Syntax:

void add_response_action($action)

Beschreibung:

(ab v5.0) Diese Methode fügt der Server-Antwort eine Aktion hinzu.

Die Auswertung der Aktionen erfolgt nur wenn der Webhook synchron ausgeführt wurde und die Antwort des Webhooks erfolgreich war ($success === true)!

Beispiel:

class myAjaxClass extends addon_webhook
{
    public function perform()
    {
        $action = addon_util_action::get_message_box_action('Meine Nachricht');
        $this->add_response_action($action);

        return new addon_response($success, $error, $stop);       
    }
}

3. Vererbte Methoden


  • No labels