URL-Aktion hinterlegen und Ergebnis zwischenspeichern

Ich würde gerne im Client (oder noch besser direkt in der PBX selbst) eine URL-Aktion hinterlegen, die nach Aufruf einen Wert zurück liefert, den ich beim Auflegen (2. URL-Aktion) dann wieder benötige.
Hintergrund ist der Start / Stop einer Online-Zeiterfassung (Stopp-Uhr). Beim Stoppen wird die ID benötigt, die beim Start der Uhr zurück geliefert wurde.

Frage: Ist der Pascom-Client in der Lage, die Response eines URL-Aufrufs irgendwie zugänglich zu machen um das Ergebnis zwischenzuspeichern für weiteren Aktionen? Und falls ja, dann wie?

Ich kommuniziere mit Cloud CRMs mittels “curl”.
Beispiel für Pascom:

Set(CURL_RES=${SHELL(/usr/bin/curl -v -H 'Content-type: application/json' -d '{"nr": "${MDC_CALLER_NUM_NAT}"}' 'https://api.website.de?key=geheimerkey&actionName=searchPhoneNumber&lang=de')})

Hier übergebe ich die Rufnummer an die CRM und erhalte eine JSON als Ergebnis.

Das Ergebnis filtere ich dann mit

Set(variableXY=${SHELL(echo '${CURL_RES}' | jq -j .filter_xy)})

Ich bin kein Asterisk-Hacker, hoffe aber, dass der Code okay ist. Wenn jemand einen einfacheren Weg hat, bitte kommentieren :slight_smile:

Dann schiebe ich alles in die entsprechenden Labels und kann es im Client in die Aktionen verpacken

Das wäre noch Mal ein interessantes Feature für Pascom. Ein RESTful API Connector wie bei 3CX.

Vielen Dank, ich hätte vielleicht dazu schreiben sollen, dass ich das unter Windows realisieren will. Da gibt es seit Windows 10 zwar auch Curl, aber die weitere JSON-Verarbeitung ist dann doch eher bescheiden.

Habe nun aber einen Weg gefunden, dass mit der Powershell zu realisieren, damit lässt sich dann das JSON-Ergebnis gleich sinnvoll weiter verarbeiten.

Warum verarbeitest du nicht alles im Pascom Script?

Weil das erst relevant wird, wenn das Gespräch auch tatsächlich angenommen wurde. Und das geht clientseitig deutlich einfacher.