Web-Service für Dynamische Felder

Hilfe zu OTRS Problemen aller Art
Post Reply
RaKu
Znuny newbie
Posts: 9
Joined: 27 Apr 2020, 12:45
Znuny Version: 6.0.28
Real Name: Ralph Kuster

Web-Service für Dynamische Felder

Post by RaKu »

Hallo,
ich bin gerade dabei mein OTRS (Version 6) zu Automatisieren (per PHP).
Das mit dem Web-Service hab ich so weit verstanden (würde gerne REST verwenden).
Was ich aber nicht schaffe, per Web-Service auf die Dynamischen Felder zuzugreifen. Hier befinden sich aber gerade die daten, welche ich benötige.
Ziel des ganzen ist es also:
Frage ein Dyn.Feld ab -> Wenn dieses einen bestimmten Wert hat, dann suche dir die Ticket-Nummer und mache das damit.

Gibt es ne Anleitung, wie ich per REST-API auf die dyn.-Felder zugreifen kann und hier den Inhalt abfragen bzw. neu beschrieben kann?

Danke und VG
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: Web-Service für Dynamische Felder

Post by root »

Hallo,

Du musst beim TicketGet den Parameter DynamicFields mit dem Wert 1 hinzufügen. https://doc.znuny.org/doc/api/otrs/6.0/ ... et.pm.html

Ich schaue mal das ich bis morgen meine PHP-Beispiele mit einem dynamischen Feld versehen kann.

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
RaKu
Znuny newbie
Posts: 9
Joined: 27 Apr 2020, 12:45
Znuny Version: 6.0.28
Real Name: Ralph Kuster

Re: Web-Service für Dynamische Felder

Post by RaKu »

Klappt!
Danke für die Info!!
Falls es jmd braucht, einfach an die Abfrage-url &DynamicFields=1 anhängen.
RaKu
Znuny newbie
Posts: 9
Joined: 27 Apr 2020, 12:45
Znuny Version: 6.0.28
Real Name: Ralph Kuster

Re: Web-Service für Dynamische Felder

Post by RaKu »

Hallo,
ich bin jetzt leider doch noch auf das nächste Problem gestoßen, wie kann ich dynamische Felder "vorfiltern" bei normalen Feldern geht das ja über z.B. &StateType=open.
Ich möchte aber alle Tickets bei denen ein dynamisches Feld angehakt ist.

THX
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: Web-Service für Dynamische Felder

Post by root »

RaKu wrote: 17 Feb 2021, 12:43 Hallo,
ich bin jetzt leider doch noch auf das nächste Problem gestoßen, wie kann ich dynamische Felder "vorfiltern" bei normalen Feldern geht das ja über z.B. &StateType=open.
Ich möchte aber alle Tickets bei denen ein dynamisches Feld angehakt ist.

THX
Also "vorfiltern" sagt mir mal gar nichts. Aber kannst Suchen mit der Operation TicketSearch: https://doc.znuny.org/doc/api/otrs/6.0/ ... ch.pm.html

Da ist auch ein Beispiel wie die Datenstruktur für dynamische Felder aussehen muss.

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
RaKu
Znuny newbie
Posts: 9
Joined: 27 Apr 2020, 12:45
Znuny Version: 6.0.28
Real Name: Ralph Kuster

Re: Web-Service für Dynamische Felder

Post by RaKu »

root wrote: 17 Feb 2021, 13:02
RaKu wrote: 17 Feb 2021, 12:43 Hallo,
ich bin jetzt leider doch noch auf das nächste Problem gestoßen, wie kann ich dynamische Felder "vorfiltern" bei normalen Feldern geht das ja über z.B. &StateType=open.
Ich möchte aber alle Tickets bei denen ein dynamisches Feld angehakt ist.

THX
Also "vorfiltern" sagt mir mal gar nichts. Aber kannst Suchen mit der Operation TicketSearch: https://doc.znuny.org/doc/api/otrs/6.0/ ... ch.pm.html

Da ist auch ein Beispiel wie die Datenstruktur für dynamische Felder aussehen muss.

- Roy
Hi,
Danke für die Antwort. Im Link ist das, was ich will mit DynamicField_FieldNameX => { beschrieben. Wie mach ich das aber in meiner URL für die CURL abfrage z.B. curl hxxp://localhost/otrs/nph-genericinterface.pl/Webservice/Service/Ticket?UserLogin=login&Password=PW&!!!Hier fehlt mir der richtige Ausdruck (DynamicField_Datenpfade=DATEN funktioniert zum Bsp nicht)

THX
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: Web-Service für Dynamische Felder

Post by root »

Hi,

ich empfehle Dir schon mal die Suche nicht mit GET aufzurufen. Das sorgt dafür, das im Webserverlog die Logindaten verewigt sind und für jeden der da Zugriff hat lesbar. Ich habe leider gerade die Syntax für die dynamische Felder nicht parat um Sie in der URL zu nutzen.
Wie gesagt, ich passe mal meine PHP Beispiele an und lege dann auch mal eine Webservicekonfiguration bei die so etwas berücksichtigt.

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
zzz
Znuny superhero
Posts: 888
Joined: 15 Dec 2016, 15:13
Znuny Version: All
Real Name: Emin
Company: Efflux GmbH
Contact:

Re: Web-Service für Dynamische Felder

Post by zzz »

Hallo,

das lässt sich auf unterschiedliche Arten lösen. Im JSON-Format (curl) kann es zum Beispiel so aussehen:

Code: Select all

...
--header 'Content-Type: application/json' \
--data '
{
    "...": "...",
    "DynamicField_Company": {
        "Like": "*GmbH"
    }
}'
—Emin
Professional OTRS, Znuny & OTOBO services: efflux.de | efflux.de/en/

Free and premium add-ons: German | English
RaKu
Znuny newbie
Posts: 9
Joined: 27 Apr 2020, 12:45
Znuny Version: 6.0.28
Real Name: Ralph Kuster

Re: Web-Service für Dynamische Felder

Post by RaKu »

Hallo Zusammen,

sry, dass ich jetzt erst Antworte, hatte aber zu viel zu tun.
Ich hab mitlerweile eine Lösung gefunden.
Ich hänge diese hier an, falls jmd. auch das Problem hat

Code: Select all


//////// Initialize new client session ////////
$client = new SoapClient(
    null,
    array(
        'location' => $URL,
        'uri' => $Namensraum,
        'trace' => 1,
        'style' => SOAP_RPC,
        'use' => SOAP_ENCODED
    )
    );
    
 //Funktion um alle Tickets mit einem Bestimmten dynamischen Feldwert erhalten

function getTicketDaten()
{
    $Operation = "TicketSearch";
    global $client, $User, $PW;
    
    $msg=array(
        new SoapParam($User,'ns1:UserLogin'),
        new SoapParam($PW,'ns1:Password'),
        new SoapParam(array('Equals' => 1),'ns1:DynamicField_hier der Name des dyn. Feldes einfügen),
    );
    
    $TicketsDaten = $client->__soapCall($Operation,$msg);
    
    return $TicketsDaten;
};
Evtl. kann ja jmd. was damit anfangen.

VG
Post Reply