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

Bitte beachten Sie, dass seit TecArt Version 4.10 und aufwärts der SOAP Webservice nicht mehr weiterentwickelt wird. Ab der TecArt Version 5.1 ist der SOAP Webservice nicht mehr unterstützt.

Please note: with the release of TecArt version 4.10 onwards SOAP Webservice will no longer be updated or expanded. With the release of TecArt version 5.1, the soap webservice will be deprecated.

1. WSDL-URI

http://hostname/dirname/soap/index.php?op=tickets&wsdl

z.B. https://test.tecart-system.de/soap/index.php?op=tickets&wsdl

2. Methoden

2.1. Tickets

2.1.1. crmCountTickets

(Version >= 3.1.1777)

Syntax:

int crmCountTickets( string $session_id )

Beschreibung:

Gibt die Gesamtanzahl an Tickets zurück.

Beispiel:

<?php
 
ini_set("soap.wsdl_cache_enabled", "0");
 
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
 
	$client_tickets= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
 
	echo $client_tickets->crmCountTickets($session_id);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}

2.1.2. crmgetTicket

(Version >= 3.1.1777)

Syntax:

array crmgetTicket( string $session_id, int $ticket_id )

Beschreibung:

Gibt ein Array mit einem Ticket-objekten mit nur einem Element zurück.

ticket_id is the Ticket-Id.

Eigenschaften:

Type(Length)      Eigenschaft          Beschreibung
-------------------------------------------------------------------
int               $id                  Ticket-ID 
int               $ext_id              Externe ID ( ab Version 4.2 )
string(255)       $cid                 Kontakt-ID
string(255)       $name                Name des Fragestellers
string(255)       $email               E-Mail-Adresse des Fragestellers
string(255)       $phone               Telefonnummer des Fragestellers ( ab Version 4.2.12947 )
int               $tnumber             Ticketnummer
int               $start               Start-Datum & Zeit als Unix-Timestamp
int               $stop                Stop-Datum & Zeit als Unix-Timestamp
int               $affected            User-Id des betroffenen Nutzers
int               $priority            Priorität. Mögliche Werte: 0->Eskalation, 1->Heute, 2->Hoch, 3->Normal, 4->Niedrig
string(255)       $subject             Ticketbetreff
string(255)       $notes               Ticketinhalt, Beschreibung, Notizen ...
int               $status              Ticketstatus. Mögliche Werte: 0->offen, 1->in Bearbeitung, 2->Wartet auf antwort, 3->geschlossen
int               $section             Ticketbereich (0 -> Stanndard)
int               $pid                 Projekt-ID 
string(255)       $category            Ticketkategorie
int               $createuser          User-Id des Erstellers
int               $createtime          Unix-Timestamp der Erstellung
int               $chguser             User-Id der letzten Änderung
int               $chgtime             Unix-Timestamp der letzten Änderung
string(255)       $user13              Benutzerdefiniertes Feld Nr. 13
string(255)       $user14              Benutzerdefiniertes Feld Nr. 14
   :                  :                           :
string(255)       $user80              Benutzerdefiniertes Feld Nr. 80 

Beispiel:

<?php
 
// Get Ticket with id 1
$result = $client_tickets->crmgetTicket($session_id, 1);
 
foreach($result as $ticket) {
	echo $ticket->id." ".$ticket->name." ".date("Y-m-d", $ticket->chgtime)."<br>  ";
}



2.1.3. crmaddTicket

(Version >= 3.1.1777)

Syntax:

int crmaddTicket ( string $session_id, crmTicketItem $crmTicketItem )

Beschreibung:

Fügt ein Ticket hinzu.

Gibt eine ticket_id oder eine negative Zahl im Fehlerfall zurück.

crmTicketItem kann ein assoziazives Array oder Objekt sein.

Eigenschaften von crmTicketItem:

Type(Length)      Eigenschaft          Beschreibung
------------------------------------------------------------------- 
string(255)       $cid                 Kontakt-ID
string(255)       $name                Name des Fragestellers
string(255)       $email               E-Mail-Adresse des Fragestellers
string(255)       $phone               Telefonnummer des Fragestellers ( ab Version 4.2.12947 )
int               $start               Start-Datum & -Zeit als Unix-Timestamp 
int               $stop                Stop-Datum & -Zeit als Unix-Timestamp 
int               $affected            User-Id des betroffenen Nutzers
int               $priority            Priorität. Mögliche Werte: 0->Eskalation, 1->Heute, 2->Hoch, 3->Normal, 4->Niedrig
string(255)       $subject             Ticketbetreff
string(255)       $notes               Ticketinhalt, Beschreibung, Notizen ...
int               $status              Ticketstatus. Mögliche Werte: 0->offen, 1->in Bearbeitung, 2->Wartet auf antwort, 3->geschlossen
int               $section             Ticketbereich (0 -> Stanndard)
int               $pid                 Projekt-ID 
string(255)       $category            Ticketkategorie
int               $ext_id              Externe ID ( ab Version 4.2 )
 
string(255)       $user13              Benutzerdefiniertes Feld Nr. 13
string(255)       $user14              Benutzerdefiniertes Feld Nr. 14
   :                  :                           :
string(255)       $user80              Benutzerdefiniertes Feld Nr. 80 

Beispiel 1:

<?php
 
$ticket = array(
	'cid'         => 7,
	'name'        => 'Dr John',
	'email'       => 'ticket@tecart.de',
	'start'       => mktime(0, 0, 0, 5, 11, 2007),
	'stop'        => mktime(0, 0, 0, 5, 31, 2007),
	'affected'    => 30,
	'priority'    => 3,
	'subject'     => 'Ticket subject',
	'notes'       => 'Notice here',
	'status'      => 1,
	'category'    => 'Error in System / in Operation',
	'user21'      => '777'
);
 
$ticket_id = $client_tickets->crmaddTicket($session_id, $ticket);
echo $ticket_id;


Beispiel 2:

<?php
 
class ticket 
{
	public $cid;
	public $name;
	public $affected;
	public $start;
	public $stop;
	public $subject = 'subject';
   
	function __construct($cid, $name, $affected, $start)
	{
		$this->name     = $name;
		$this->cid      = $cid;
		$this->start    = $start;
		$this->affected = $affected;
		$this->stop     = $start + (365 * 24 * 3600);   
	}
}
 
$ticket = new ticket(5529, 'Dr John', 55, mktime(0, 0, 0, 5, 11, 2007));
   
$ticket_id = $client_tickets->crmaddTicket($session_id, $ticket);
echo $ticket_id;



2.1.4. crmaddTickets

(Version >= 3.1.1777)

Syntax:

boolean crmaddTickets( string $session_id, crmTicketItems $crmTicketItems )

Beschreibung:

Fügt mehrere Tickets hinzu.

Gibt 1 bei Erfolg oder 0 im Fehlerfall zurück.

Eigenschaften von crmTicketItems :

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
crmTicketItems          $crmTicketItems           array mit crmTicketItem Objekte

Beispiel:

<?php
 
// Add multiple tickets
 
$ticket1 = array(
	'cid'         => 7,
	'name'        => 'Dr John',
	'email'       => 'ticket@tecart.de',
	'start'       => mktime(0, 0, 0, 5, 11, 2007),
	'stop'        => mktime(0, 0, 0, 5, 31, 2007),
	'affected'    => 30,
	'priority'    => 3,
	'subject'     => 'Ticket 1',
	'notes'       => 'Notice here',
	'status'      => 1,
	'category'    => 'Error in System / in Operation',
	'user21'      => '777'
);
 
$ticket2 = array(
	'cid'         => 8,
	'name'        => 'Prof John',
	'email'       => 'ticket@tecart.de',
	'start'       => mktime(0, 0, 0, 5, 11, 2007),
	'stop'        => mktime(0, 0, 0, 5, 31, 2008),
	'affected'    => 40,
	'priority'    => 2,
	'subject'     => 'Ticket 2',
	'notes'       => 'Notice here',
	'status'      => 1,
	'category'    => 'Support needed',
	'user21'      => '777'
);
 
$tickets= array('crmTicketItems' => array($ticket1, $ticket2));
 
$success = $client_tickets->crmaddTickets($session_id, $tickets);
if ($success === false) {
	echo "Error adding tickets.";
}
 



2.1.5. crmChangeTicket

(Version >= 3.1.1777)

Syntax:

int crmChangeTicket( string $session_id, int $ticket_id, crmTicketItem $crmTicketItem )

Beschreibung:

Ändert Eigenschaften eines existierenden Tickets.

Gibt die ticket_id bei Erfolg oder eine negative Zahl im Fehlerfall zurück.

crmTicketItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften von crmTicketItem: sind die selben wie für Tickets SOAP#crmaddTicket

Beispiel:

<?php
 
$ticket['name'] = 'WebService-Ticket changed';
 
$ticket_id = $client_tickets->crmChangeTicket($session_id, $ticket_id, $ticket);
echo $ticket_id;



2.1.6. crmChangeTickets

(Version >= 3.1.1777)

Syntax:

boolean crmChangeTickets ( string $session_id, crmTicketItems $crmTicketItems )

Beschreibung:

Ändert Eigenschaften eines existierenden Tickets.

Gibt 1 bei Erfolg oder eine negative Zahl im Fehlerfall zurück.

Eigenschaften von crmTicketItems :

sind die selben wie für Tickets SOAP#crmaddTickets

Beispiel:

<?php
 
$ticket1 =  array(
	'id'          => 556,
	'name'        => 'Dr Johnny',
	'start'       => mktime(0, 0, 0, 5, 11, 2009),
	'stop'        => mktime(0, 0, 0, 5, 31, 2009),
	'affected'    => 55,
	'notes'       => 'Notice changed',
	'leader'      => 3,
	'user21'      => "444"
);
 
$ticket2 = array(
	'id'          => 557,
	'name'        => 'Prof Johnny',
	'start'       => mktime(0, 0, 0, 5, 11, 2009),
	'stop'        => mktime(0, 0, 0, 5, 15, 2009),
	'affected'    => 56,
	'notes'       => 'Notice here',
	'user21'      => "555"
);
 
$tickets= array('crmTicketItems' => array($ticket1, $ticket2));
 
$success = $client_tickets->crmChangeTickets($session_id, $tickets);
if ($success === false) {
	echo "Error editing tickets.";
}



2.1.7. crmdeleteTicket

(Version >= 3.1.1777)

Syntax:

boolean crmdeleteTicket ( string $session_id, int $ticket_id )

Beschreibung:

Löscht ein Ticket.

Gibt 1 bei Erfolg zurück.

Beispiel:

<?php
 
$ticket_id = 1;
$success = $client_tickets->crmdeleteTicket($session_id, $ticket_id);
if (!$success) {
	echo "Unable to delete ticket.";
}



2.1.8. crmdeleteTickets

(Version >= 3.1.1777)

Syntax:

boolean crmdeleteTickets( string $session_id, string $ticket_ids )

Beschreibung:

Löscht mehrere Tickets. Gibt 1 bei Erfolg, 0 im Fehlerfall zurück.

ticket_ids ist ein Doppelpunkt-getrennter String mit ticket ids.

Beispiel:

<?php
 
//Delete multiple tickets with ID 91, 92 and 101
 
$ticket_ids = "91:92:101";
    
$success = $client_tickets->crmdeleteTickets($session_id, $ticket_ids);
   
if (!$success) {
	echo "Unable to delete tickets.";
}
else {
	echo "Success!<br>";
}



2.1.9. crmgetTicketIds

(Version >= 3.1.1777)

Syntax:

array crmgetTicketIds( string $session_id, int $timestamp )

Beschreibung:

Gibt ein Array mit ticket objecten zurück, die seit timestamp verändert wurden.

Eigenschaften:

Type(Length)      Eigenschaft          Beschreibung
-------------------------------------------------------------------
int               $id                  Ticket-Id 

Beispiel:

<?php
 
$result = $client_tickets->crmgetTicketIds($session_id, 0);
 
foreach($result as $ticket) {
	echo $ticket->id."<br>  ";
}



2.1.10. crmgetTicketIdsString

(Version >= 3.1.1777)

Syntax:

string crmgetTicketIdsString( string $session_id, int $timestamp )

Beschreibung:

Gibt eine Liste mit ticket ids als Doppelpunkt-getrennten String zurück für Tickets die seit timestamp geändert wurden.

Beispiel:

<?php
 
$result = $client_tickets->crmgetTicketIdsString($session_id, 0);
 
$ticket_ids = explode(":", $result);
 
foreach($ticket_ids as $ticket_id) {
	echo $ticket_id."<br>  ";
}



2.1.11. crmgetChangedTickets

(Version >= 3.1.1777)

Syntax:

array crmgetChangedTickets ( string $session_id, int $timestamp )

Beschreibung:

Gibt ein Array mit Ticketobjekten die seit timestamp geändert wurde zurück.

Eigenschaften:

sind die selben wie für Tickets SOAP#crmgetTicket

Beispiel:

<?php
 
$result = $client_tickets->crmgetChangedTickets($session_id, 1176208357);
 
foreach($result as $ticket) {
	echo "{$ticket->cid}, {$ticket->name}, {$ticket->subject}, {$ticket->priority}<br>  \n";
}



2.1.12. crmgetChangedTicketsLimit

(Version >= 3.1.1777)

Syntax:

array crmgetChangedTicketsLimit( string $session_id, int $timestamp, int $count, int $offset )

Beschreibung:

Gibt ein Array mit Ticketobjekten die seit timestamp geändert wurde zurück, limitiert von count und offset.

Eigenschaften:

sind die selben wie für Tickets SOAP#crmgetTicket

Beispiel:

<?php
 
$result = $client_tickets->crmgetChangedTicketsLimit($session_id, 1176208357, 10, 10);
 
foreach($result as $ticket) {
	echo "{$ticket->cid}, {$ticket->name}, {$ticket->subject}, {$ticket->priority}<br>  \n";
}



2.1.13. getTicketByCondition

Syntax:

array crmgetTicketByCondition($session_id, $crmTicketByCondition)

Beschreibung:

Gibt ein Array mit Ticketobjekten zurück, das mit den Bedingungen übereinstimmt. Die Bedingungen sind in der Klasse crmTicketByCondition definiert.

Eigenschaften von $crmTicketByCondition Array:

Type(Length)      Eigenschaft          Beschreibung
------------------------------------------------------------------- 
int               $cid                 Kontakt-ID
int               $status              Ticketstatus. Mögliche Werte: 0->offen, 1->in Bearbeitung, 2->Wartet auf antwort, 3->geschlossen,-1->alle außer abgeschlossene
int               $begin_time          Unix-Time : Erstellungszeit eines Tickets
int               $end_time            Unix-Time : Erstellungszeit eines Tickets

(nur mit der Version >= 3.4.5408) gibt's folgenden Params

int               $affected            User-ID des Zuständigers
int               $section             Bereich der Tickets
int               $pid                 Projekt-ID 
int               $count               Anzahl der zuholenden Tickets
int               $offset              Die Offset Position der Ergebnisse, die zurückgegeben werden sollen.
string            $search              Der Suchstring. Es werden 2 Platzhalter am Anfang und Ender des Strings hinzugefügt.
                             

Eigenschaften der zurückgegebenen Array:

sind die selben wie für Tickets SOAP#getTicket

Beispiel:

<?php
 
//Example 1: Get tickets, which are created from 01.01.2011 to 31.12.2011
$condition = array('begin_time' => 1293836400, 'end_time' => 1325286000);
 
//Example 2: Get tickets, which belong to contact id 4 and responsible user id 7
$condition = array('cid' => 4, 'affected' => 7);
 
//Example 3: Search tickets with subject like '%crm%' or notes like '%crm%' or tnumber like '%crm%' or email like '%crm%' or name like '%crm%'
$condition = array('search' => 'crm');
 
$result = $client_tickets->crmgetTicketByCondition($session_id, $condition);
 
foreach($result as $ticket) {
	echo "{$ticket->cid}, {$ticket->name}, {$ticket->subject}, {$ticket->priority}<br>  \n";
}



2.1.14. crmgetMinMaxCreateTime

(Version>= 3.1.1777)

Syntax:

array crmgetMinMaxCreateTime($session_id, $cid)

Beschreibung:

Gibt ein Objekten mit der Min-und Max CreateTime aller Tickets für die eingegebene $cid.

Eigenschaften:

Type(Length)      Eigenschaft          Beschreibung
-------------------------------------------------------------------
int               $min                 Min createtime (Time Unix-Timestamp)
int               $max                 Max createtime (Time Unix-Timestamp)

Beispiel:

<?php
// the turn the createtime of the first and the last tickets from cid = 5844.
$result = $client_tickets->crmgetMinMaxCreateTime($session_id, 5844);
 
echo 'min createtime' = $result->min;
echo '\n';
echo 'max createtime' = $result->max;



2.1.15. crmgetResponsibleUser

(Version >= 3.1.1795)

Syntax:

int crmgetResponsibleUser( string $session_id )

Beschreibung:

Gibt die Benutzer-ID des Standard-Benutzers für Webservices, die in Administration> Module > Trouble-Tickets vergeben wurde.

Beispiel:

<?php
 
ini_set("soap.wsdl_cache_enabled", "0");
 
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
 
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
	echo $client_tickets->crmgetResponsibleUser($session_id);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}



2.1.16. crmgetResponsibleUserForSection

(Version >= 4.0.10357)

Syntax:

int crmgetResponsibleUserForSection( string $session_id, int $section )

Beschreibung:

Gibt die Benutzer-ID des Standard-Benutzers für Webservices, die in Administration> Module > Trouble-Tickets für den entsprechenden Bereich vergeben wurde.

Beispiel:

<?php
 
ini_set("soap.wsdl_cache_enabled", "0");
 
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
 
	$client_tickets= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
 
	echo $client_tickets->crmgetResponsibleUserForSection($session_id, 0);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}



2.1.17. crmgetTicketGroup

(Version >= 3.1.2333)

Syntax:

int crmgetTicketGroup( string $session_id )

Beschreibung:

Gibt die Gruppen-Auswahl für verantwortliche Personen, die in Administration> Module> Trouble-Tickets vergeben wurde.

Beispiel:

<?php
 
ini_set("soap.wsdl_cache_enabled", "0");
 
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
 
	$client_tickets= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
 
	echo $client_tickets->crmgetTicketGroup($session_id);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}



2.1.18. crmgetTicketFields

(Version >= 3.4.5408)

Syntax:

array crmgetTicketFields( string $session_id )

Beschreibung:

Gibt ein Array mit Information der Feldern für Ticket zurück. Die Info enthält die Felder in der Datenbank, die angezeigte Namen und die Typen der Felder.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eignenschaften von zurückgegebenen array:

Typ(Länge)              Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
string(255)             Key                       Fortlaufende Nummer
array(255)              Value                     Array mit 
                                                  label: der angezeigte Name des Feldes
                                                  field: Name des Feldes in der Datenbank
                                                  type:  Typ des Feldes

Beispiel:

<?php

try {
	$fields = $client_tickets→crmgetTicketFields($session_id); 
} 
catch (CRMException $e) {
	echo $e->getMessage();
}

foreach( $fields as $val) {
	echo $val->field ."<br/>";
}



2.1.19. crmgetTicketSections

(Version >= 3.7.8870)

Syntax:

array crmgetTicketSections( string $session_id )

Beschreibung:

Gibt ein Array mit deb zur Verfügung stehenden Ticketbereichen zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eignenschaften von zurückgegebenen array:

Typ(Länge)              Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     section_id                ID des Ticketbereiches
string(255)             name                      Name des Ticketbereiches

Beispiel:

<?php

try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
	$sections       = $client_tickets->crmgetTicketSections($session_id);
	foreach( $sections as $section) {
		echo $section->section_id . ' => ' . $section->name ."<br/>";
	}
} 
catch (CRMException $e) {
	echo $e->getMessage();
}

?>



2.1.20. crmgetTicketIdByExtId

(Version >= 4.2)

Syntax:

array crmgetTicketIdByExtId( string $session_id, int $ext_id )

Beschreibung

Liefert interne ID(s) eines Tickets mit der übergebenen externen ID zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eigenschaften der zurückgegebenen ticket Objekte:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int			            $id			      Ticket-Id 

Beispiel:

<?php
 
try {
	$result = $client_tickets->crmgetTicketIdByExtId($session_id, 12345);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
foreach($result as $id) {
	echo $id."<br>  ";
}



2.1.21. crmgetAllTicketExtIds

(Version >= 4.2)

Syntax:

array crmgetAllTicketExtIds( string $session_id )

Beschreibung

Liefert eine Liste aller externen IDs in Tickets zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eigenschaften der zurückgegebenen ticket Objekte:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int			            $id			      externe Ticket-Id 

Beispiel:

<?php
 
try { 
	$result = $client_tickets->crmgetAllTicketExtIds($session_id);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
foreach($result as $id) {
	echo $id."<br>  ";
}



2.1.22. crmsetDuplicateConfig

(Version >= 4.4)

Syntax:

int | string <errormessage> crmDuplicateConfig( string $session_id, crmDuplicatecheckFields $crmDuplicatecheckFields )

Beschreibung:

Ermöglicht eine temporäre Überschreibung der Dublettenprüfungsfelder für die Laufzeit der angemeldeten Session.

Eigenschaften des zu übergebenden crmDuplicatecheckFields Objektes:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
string			        $fields			     implodiertes Array ( implode(',', $myFields) ) mit gewünschten Feldern, 
						                     auf die eine Dublettenprüfung angewendet werden soll;
						                     wenn Eigenschaft auf NULL gesetzt wird, wird Override zurückgesetzt

Beispiel:

<?php
 
ini_set("soap.wsdl_cache_enabled", "0");
 
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
 
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
 
	$fields		= array('fields' => implode(',', array('tnumber', 'category')) );
	$success 	= $client_tickets->crmsetDuplicateConfig($session_id, $fields);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
echo ($success == 1 ? 'override successful' : $success);



2.1.23. crmgetDuplicateConfig

(Version >= 4.4)

Syntax:

string crmgetDuplicateConfig( string $session_id )

Beschreibung:

Gibt implodiertes Array als Zeichenkette mit aktueller Feldkonfiguration der Dublettenprüfung zurück.

Sollte aktuell keine temporäre Überschreibung der Feldkonfiguration aktiv sein (siehe Tickets SOAP#crmsetDuplicateConfig), wird die durch die Administration konfigurierte Feldliste zurückgegeben.

Beispiel:

<?php
 
ini_set("soap.wsdl_cache_enabled", "0");
 
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
 
   	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
   	$fields         = $client_tickets->crmgetDuplicateConfig($session_id);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
$fields = explode(',', $fields);
echo print_r($fields, true);



2.1.24. crmsearchTickets

(Version >= 4.5)

Syntax:

array crmsearchTickets( string $session_id, string $search, [int $count, int $offset] )

Beschreibung:

Gibt Array mit Ticket Objekten zurück, die über Volltextsuche nach $search gefunden werden.

$count schränkt die Anzahl der zurückgegebenen Tickets ein.

$offset gibt an, wieviele Einträge vom Beginn des Suchresultats übersprungen werden sollen.

Eigenschaften zurückgegebener Ticket Objekte:

sind identisch mit Tickets SOAP#crmgetTicket

Beispiel:

<?php
 
$result = $client_tickets->crmsearchTickets($session_id, 'My Tickets', 500, 0);
 
foreach($result as $ticket) {
	echo "{$ticket->cid}, {$ticket->name}, {$ticket->subject}, {$ticket->priority}<br>  \n";
}



2.1.25. crmgetTicketSectionOption

(Version v4.5.17301)

Syntax:

mixed crmgetTicketSectionOption( string $session_id, int $section_id, string $option_name )

Beschreibung:

Gibt den Wert einer mit $option_name spezifizierten Administrations- Einstellung für den mit $section_id bestimmten Ticket Bereich (0 = Standardbereich) zurück.

Beispiel:

<?php
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
   
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
	// fetch value for action delimiter character option of Ticket- Section w/ ID 0 (standard)
	$option_value = $client_tickets->crmgetTicketSectionOption($session_id, 0, 'ticket_action_char');
}
catch (SOAPFault $f) {
	echo $f->faultstring;
}
echo 'action delimiter character: '.$option_value;



2.1.26. crmgetTicketSectionMailbody

(Version v4.5.17301)

Syntax:

SoapVar SOAP_ENC_OBJECT crmgetTicketSectionMailbody( string $session_id, int $section_id, int $ticket_id, string $action )

Eigenschaften des zurückgegebenen SoapVar Objektes:

string [text/html]      $mailbody            aus spezifizierter Aktion, Ticket ID und Ticket Bereich generierte E-Mail Vorlage
string                  $subject             automatisch generierte Betreffzeile für die Ticket E-Mail

Beschreibung:

Gibt den Vorlagentext für eine Ticket Aktion eines Ticket Bereichs und die dabei generierte Betreffzeile als SoapVar Objekt zurück.

Parameter

  • $session_id aktuelle Session

  • $section_id bestimmt den Ticket Bereich (0 = Standardbereich)

  • $ticket_id spezifiziert das Ticket, aus dem die Daten bezogen werden sollen

  • $action bezeichnet die Art der Aktion und der zu verwendenden E-Mail Vorlage

Mögliche Aktionen:

  
          * 'info': Standard Informations E-Mail
          * 'open': Zur Eröffnung eines Tickets
          * 'close:' Zur Schließung eines Tickets
          * 'open_webservice': Eröffnung über Webservice
          * 'close_webservice': Schließung über Webservice
          * 'action_open_webservice': Neue Aktion über Webservice
          * 'document_upload_notification': Information über neues Dokument im Ticket
  

Beispiel:

<?php
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
   
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
	// fetch mailbody and subject for an Info E-Mail to Ticket ID 1337 of Ticket Section 0 (standard)
	$maildata = $client_tickets->crmgetTicketSectionMailbody($session_id, 0, 1337, 'info');
 
	echo $maildata->subject.' ';
	echo htmlspecialchars($maildata->mailbody)."\n";
}
catch (SOAPFault $f) {
	echo $f->faultstring;
}



2.1.27. crmgetTicketContactRelations

(Version >= 4.5.17283)

Syntax:

array crmgetTicketContactRelations( string $session_id, int $ticket_id )

Beschreibung:

Liefert ein Array mit Kontakt- Objekten zurück, die zum mit $ticket_id spezifizierten Ticket mittels Verknüpfungsübersicht verbunden worden sind.

Eigenschaften der zurückgegebenen Kontakt Objekte:

int      $id                     interne Kontakt ID
string   $realnumber             Kontakt Nummer
string   $company                Kontakt Firma
string   $department             Kontakt Abteilung
string   $street                 Kontakt Anschrift
string   $postcode               Postleitzahl
string   $city                   Ort
string   $region                 Region/Bundesland
string   $country                Staat
string   $email                  Primäre E-Mail Adresse
string   $email2                 weitere E-Mail Adressen 
string   $email3                 ...
string   $phone                  Telefon
string   $fax                    Fax
string   $notes                  Notizen 
string   $password 
string   $website                Kontakt Website
string   $client_account_id      Kontakt Rechnungskonto
string   $acc_holder             Bankdaten: Kontotinhaber 
string   $acc_nr                            Kontonummer 
string   $bankcode                          Bankleitzahl
string   $bankname                          Name Kreditinstitut 
string   $swift                             SWIFT ID
string   $iban                              IBAN ID 
string   $category               Kontakt Kategorie
string   $branch                 Kontakt Branche(n) 
int      $userid                 verantwortlicher CRM Benutzer
string   $code                   generierter Kontakt Code
string   $ustnr                  Kontakt Umsatzsteuer Nummer 
string   $type                   Kontakt Typ
string   $superior               übergeordnet(e) Kontakt(e)  
string   $md5check               MD5 Prüfsumme
int      $createuser             Ersteller CRM Benutzer ID
int      $createtime             Erstellungsdatum Unix Timestamp
int      $chguser                Änderungsbenutzer ID
int      $chgtime                Änderungsdatum Unix Timestamp
string   $ext_id                 Externe Kontakt ID
int      $edituser               aktuell bearbeitender Benutzer
int      $email_status           Empfängerstatus für Serien E-Mails

Beispiel:

<?php
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
   
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
	// fetch all Contacts that are related to Ticket ID 1337
	$contacts = $client_tickets->crmgetTicketContactRelations($session_id, 1337);
 
	foreach ($contacts as $c) {
		echo 'contact ID: '.$c->id."\n";
		echo 'company: '.$c->company."\n";
		echo 'email: '.$c->email."\n";
	}
}
catch (SOAPFault $f) {
	echo $f->faultstring;
}



2.1.28. crmaddTicketContactRelation

(Version >= 4.5.17283)

Syntax:

boolean crmaddTicketContactRelation( string $session_id, int $ticket_id, int $contact_id )

Beschreibung:

Fügt eine Ticket- Kontakt Verknüpfung hinzu.

Rückgabe erfolgt als Zeichenkette `1` oder ``, die als boolescher Wert zu verstehen ist.

Beispiel:

<?php
try {
	$client_logon	= new SOAPClient("https://test.tecart-system.de/soap/index.php?op=logon&wsdl");
	$session_id		= $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}
   
	$client_tickets = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=tickets&wsdl");
	// add new ticket- contact relation for Ticket ID 1337 with Contact ID 1234
	$success = $client_tickets->crmgetTicketContactRelations($session_id, 1337, 1234);
 
	echo (boolval($success)
}
catch (SOAPFault $f) {
	echo $f->faultstring;
}


2.2. Ticket Actions

2.2.1. crmgetTicketActionsByTicketID

(Version >= 3.1.1777)

Syntax:

array crmgetTicketActionsByTicketID( string $session_id, int $ticket_id )

Beschreibung:

Gibt ein Array von Ticket-Action-Objekten zurück, die dem Ticket mit ticket_id zugehörig sind.

Nur externe Aktionen werden geliefert.

ticket_id is the Ticket-Id

Eigenschaften:

Type(Length)      Eigenschaft          Beschreibung
-------------------------------------------------------------------
int               $id                  Ticket Action-Id
int               $ext_id              Externe ID ( ab Version 4.2 )
int               $ticket_id           Ticket-Id 
int               $userid              Verantwortlicher user-Id
string(65535)     $notes               Notizen, Beschreibung ...
int               $atype               Typ: 0 = intern, 1 = extern
string(255)       $subject             Ticket action Betreff
int               $createuser          User-Id des Erstellers
int               $createtime          Timestamp der Erstellung
int               $chguser             User-Id der letzten Änderung
int               $chgtime             Timestamp der letzten Änderung
float             $duration            Dauer
float             $costs               Kosten (Version >= 3.4.5267)
int               $action_date         Unix-Timestamp, benutzerdefiniertes Aktionsdatum ( ab Version 4.3 )

Beispiel:

<?php
 
// Get Ticket actions with ticket_id 180
$result = $client_tickets->crmgetTicketActionsByTicketID($session_id, 180);
 
foreach($result as $ticket_action) {
	echo $ticket_action->subject. "<br>  \n";
	echo $ticket_action->notes. "<br>  \n";
}



2.2.2. crmgetTicketAction

(Version >= 3.4.5257)

Syntax:

array crmgetTicketAction( string $session_id, int $ticket_action_id )

Beschreibung:

Gibt ein Array von Ticket-Action-Objekten anhand von $ticket_action_id zurück.

Eigenschaften:

same as for Tickets SOAP#crmgetTicketActionsByTicketID

Beispiel:

<?php
 
// Get Ticket actions with ticket_id 180
$result = $client_tickets->crmgetTicketAction($session_id, 180);
 
foreach($result as $ticket_action) {
	echo $ticket_action->subject. "<br>  \n";
	echo $ticket_action->notes. "<br>  \n";
}



2.2.3. crmaddTicketAction

(Version >= 3.1.1777)

Syntax:

int crmaddTicketAction( string $session_id, crmTicketActionItem $crmTicketActionItem )

Beschreibung:

Fügt eine Ticket action hinzu.

Gibt eine ticket_action_id bei Erfolg, negativ Zahl im Fehlerfall.

crmTicketActionItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften von crmTicketActionItem:

Type(Length)      Eigenschaft          Beschreibung
------------------------------------------------------------------- 
int               $ticket_id           Ticket-Id
int               $userid              User-Id des Verantwortlichen
string(65535)     $notes               Notizen, Beschreibung ...
int               $atype               Typ: 0 = intern, 1 = extern
string(255)       $subject             Ticket actions Betreff
float             $duration            Dauer
int               $ext_id              Externe ID ( ab Version 4.2 )
int               $action_date         Unix-Timestamp, benutzerdefiniertes Aktionsdatum ( ab Version 4.3 )

Beispiel 1:

<?php
 
$ticket_action = array(
	'ticket_id'   => 7,
	'userid'      => 55,
	'notes'       => 'Notice here',
	'atype'       => 1,
	'subject'     => 'Ticket action subject',
	'duration'    => 1.5
);
 
$ticket_action_id = $client_tickets->crmaddTicketAction($session_id, $ticket_action );
echo $ticket_action_id;


Beispiel 2:

<?php
 
class ticket_action
{
	public $ticket_id;
	public $userid;
	public $notes;
	public $atype;
	public $subject = 'subject';
	public $duration;
	public $action_date;
   
	function __construct($ticket_id, $userid, $notes)
	{
		$this->ticket_id  = $ticket_id;
		$this->userid     = $userid;
		$this->notes      = $notes;
		$this->atype      = 1; 
		$this->duration   = 1,5;
		$this->action_date = time();
	}
}
 
$ticket_action = new ticket_action(5529, 55, 'Webservice Ticket Action');
   
$ticket_action_id = $client_tickets->crmaddTicketAction($session_id, $ticket);
echo $ticket_action_id;



2.2.4. crmChangeTicketAction

(Version >= 3.1.1777)

Syntax:

int crmChangeTicketAction( string $session_id, int $ticket_action_id, crmTicketActionItem $crmTicketActionItem )

Beschreibung:

Änderungen der Eigenschaften einer bestehenden Ticket Aktion.

Gibt die ticket_action_id bei Erfolg, negativ Zahl im Fehlerfall.

crmTicketActionItem kann ein assoziatives Array oder ein Objekt sein

Eigenschaften von crmTicketActionItem: same as for Tickets SOAP#crmaddTicketAction

Beispiel:

<?php
 
$ticket_action['subject'] = 'WebService Ticket Action changed';
 
$ticket_action_id = $client_tickets->crmChangeTicketAction($session_id, $ticket_action_id, $ticket_action);
echo $ticket_action_id;



2.2.5. crmgetTicketActionByCondition

(Version >= 3.3.4009)

Syntax:

array crmgetTicketActionByCondition($session_id, crmTicketActionByCondition $condition)

Beschreibung:

Gibt ein Array von Ticket-Aktion-Objekten zurück, welche mit den Bedingungen übereinstimmen.

Eigenschaften von crmTicketActionByCondition:

Type(Length)      Eigenschaft          Beschreibung
------------------------------------------------------------------- 
int               $tid                 Ticket-Id
int               $tids                kommagetrennter String von Ids
int               $atype               1 = Externe ( Default ), 0 = Interne, -1 = Beide
int               $userid              User-Id des Verantwortlichen
string(255)       $search              Suche in Betreff, Notizen
int               $count               Anzahl Ergebnisse
int               $offset              Startposition Ergebnisse
boolean           $costs               0 = Es werden keine Kosten zurückgeliefert
int               $action_date         Unix-Timestamp, benutzerdefiniertes Aktionsdatum ( ab Version 4.3 )

Eigenschaften des Ticket-Action-Objekts:

sind die selben wie für Tickets SOAP#crmgetTicketActionsByTicketID

Beispiel:

<?php
 
$params = array('tids'=> '1,2,3,4,5,6,7');
 
// return all ticket actions with ticket_id IN ('1','2','3','4','5','6','7')
$result = $client_tickets->crmgetTicketActionByCondition($session_id, $params);
 
foreach($result as $ticket_action) {
	echo "{$ticket_action->ticket_id}, {$ticket_action->notes}<br>  \n";
}



2.2.6. crmdeleteTicketAction

(Version >= 3.1.1777)

Syntax:

boolean crmdeleteTicketAction ( string $session_id, int $ticket_action_id )

Beschreibung:

Löscht ein Ticket. Liefert 1 bei Erfolg, 0 im Fehlerfall.

Beispiel:

<?php
 
$ticket_action_id = 1;
$success = $client_tickets->crmdeleteTicketAction($session_id, $ticket_action_id);
if (!$success) {
	echo "Unable to delete ticket action.";
}



2.2.7. crmgetTicketActionIdByExtId

(Version >= 4.2)

Syntax:

array crmgetTicketActionIdByExtId( string $session_id, int $ext_id )

Beschreibung

Liefert interne ID(s) von Ticket Actions mit der übergebenen externen ID zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eigenschaften der zurückgegebenen ticket action Objekte:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int			$id			      Ticket Action-Id 

Beispiel:

<?php
 
try {
	$result = $client_tickets->crmgetTicketActionIdByExtId($session_id, 12345);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
foreach($result as $id) {
	echo $id."<br>  ";
}



2.2.8. crmgetAllTicketActionExtIds

(Version >= 4.2)

Syntax:

array crmgetAllTicketActionExtIds( string $session_id )

Beschreibung

Liefert eine Liste aller externen IDs in Ticket Actions zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eigenschaften der zurückgegebenen ticket action Objekte:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int			           $id			      externe Ticket Action-Id 

Beispiel:

<?php
 
try { 
	$result = $client_tickets->crmgetAllTicketActionExtIds($session_id);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
foreach($result as $id) {
	echo $id."<br>  ";
}
  • No labels