API Tickets
Aus TecArt-CRM Developer-Wiki
Inhaltsverzeichnis |
Hinweis
API Klassen und deren Funktionen können nur mit CRM System mit Version >= 3.2 genutzt werden.
Methods
Tickets
addTicket
Syntax:
int addTicket ( array $ticket )
Beschreibung:
Fügt ein Ticket hinzu.
Gibt eine ticket_id zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von ticket array:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- string(255) $cid Contact-Id string(255) $name Name des Fragestellers string(255) $email E-Mail-Adresse des Fragestellers 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 string(255) $category Ticketkategorie string(255) $user13 Benutzerdefiniertes Feld Nr. 13 string(255) $user14 Benutzerdefiniertes Feld Nr. 14 : : : string(255) $user80 Benutzerdefiniertes Feld Nr. 80
Beispiel :
<?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'); try { $crmapi_tickets = crmapi::tickets(); $ticket_id = $crmapi_tickets->addTicket($ticket); } catch (CRMException $e) { echo $e->getMessage(); } echo $ticket_id; ?>
getTicket
Syntax:
array getTicket( int $ticket_id )
Beschreibung:
Gibt ein Array mit einem Ticket-Element zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
ticket_id ist die Ticket-Id
Properties:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- int $id Ticket-Id string(255) $cid Contact-Id string(255) $name Name des Fragestellers string(255) $email E-Mail-Adresse des Fragestellers 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 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 int $section Section (nur CRM mit der Version >= 3.4.5359) string(255) $user13 Benutzerdefiniertes Feld Nr. 13 string(255) $user14 Benutzerdefiniertes Feld Nr. 14 : : : string(255) $user80 Benutzerdefiniertes Feld Nr. 80
Beispiel:
countTickets
Syntax:
int countTickets()
Beschreibung:
Gibt die Gesamtanzahl an Tickets zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Beispiel:
getTicketIds
Syntax:
array getTicketIds( int $timestamp )
Beschreibung:
Gibt ein Array mit Ticket-IDs zurück die seit timestamp geändert wurden.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- int $id Ticket-Id
Beispiel:
changeTicket
Syntax:
int changeTicket( int $ticket_id, array $ticket )
Beschreibung:
Ändert Eigenschaften eines existierenden Tickets.
Gibt die ticket_id zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von crmTicketItem:
same as for #addTicket
Beispiel:
getChangedTickets
Syntax:
array getChangedTickets ( int $timestamp )
Beschreibung:
Gibt ein Array mit Tickets die seit timestamp geändert wurde zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften:
sind die selben wie für #getTicket
Beispiel:
<?php try { $crmapi_tickets = crmapi::tickets(); // Get all tickets, that have been changed since 10.04.2007 $tickets = $crmapi_tickets->getChangedTickets(1176208357); } catch (CRMException $e) { echo $e->getMessage(); } foreach($tickets as $ticket) { foreach($ticket as $key => $value) { echo $key . '=>' . $value . '<br>'; } echo "<hr>"; } ?>
getChangedTicketsLimit
Syntax:
array getChangedTicketsLimit( int $timestamp, int $count, int $offset )
Beschreibung:
Gibt ein Array mit Tickets zurück die seit timestamp geändert wurden, limitiert von count und offset.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften:
sind die selben wie für #getTicket
Beispiel:
<?php try { $crmapi_tickets = crmapi::tickets(); // Get only 10 tickets, that have been changed since 10.04.2007 $tickets = $crmapi_tickets->getChangedTicketsLimit(1176208357, 10, 0); } catch (CRMException $e) { echo $e->getMessage(); } foreach($tickets as $ticket) { foreach($ticket as $key => $value) { echo $key . '=>' . $value . '<br>'; } echo "<hr>"; } ?>
deleteTicket
Syntax:
void deleteTicket ( int $ticket_id )
Beschreibung:
Löscht ein Ticket.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Beispiel:
getResponsibleUser
Syntax:
int getResponsibleUser()
Beschreibung:
Gibt die Benutzer-ID des Standard-Benutzers für Webservices, die in Administration> Module > Trouble-Tickets vergeben wurde.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Beispiel:
getTicketGroup
Syntax:
int getTicketGroup()
Beschreibung:
Gibt die Gruppen-Auswahl für verantwortliche Personen, die in Administration> Module> Trouble-Tickets vergeben wurde.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Beispiel:
getMinMaxCreateTime
Syntax:
array getMinMaxCreateTime( int $cid )
Beschreibung:
Gibt ein Array mit der Min-und Max CreateTime aller Tickets für die eingegebene $cid.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- int $min Min createtime (Time Unix-Timestamp) int $max Max createtime (Time Unix-Timestamp)
Beispiel:
getTicketByCondition
Syntax:
array getTicketByCondition ( array $condition )
Beschreibung:
Gibt ein Array von Tickets zurück, welche mit den Bedingungen übereinstimmen. Die Bedingungen werden mit 'AND' verknüpft.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von $condition 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 CRM mit der Version >= 3.4.5371) gibt's folgenden Params
int $affected User-ID des Zuständigers
int $section Type der Tickets
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.
array $sorting Eine Array mit:
$key -> Name des sortierenden Feld ('createtime' oder 'subject' oder 'start' oder 'stop')
$value -> Type der Sortierung ('ASC' oder 'DESC')
array $search_fields Die Suchfelder. Wird nur benötigt, wenn $search gesetzt wird. Beim Default wird der Suchstring in den Feldern 'subject' oder 'notes' oder 'tnumber' oder 'email' oder 'name' gesucht.
Eigenschaften von zurückgegebenen Array:
sind die selben wie für #getTicket
Beispiel:
<?php try { $crmapi_tickets = crmapi::tickets(); //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: Get tickets, which belong to contact id 4. Sorting ascending with 'createtime'. $sorting = array('createtime' => 'ASC'); $condition = array('cid' => 4, 'sorting' => $sorting); //Example 4: Search tickets with subject like '%crm%' or notes like '%crm%' AND belong to contact 4 $search_fields = array('subject', 'notes'); $condition = array('search' => 'crm', 'search_fields' => $search_fields, 'cid' => 4); //Example 5: 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'); $tickets = $crmapi_tickets->getTicketByCondition($condition); } catch (CRMException $e) { echo $e->getMessage(); } foreach($tickets as $ticket) { echo 'Ticket ID: '. $ticket['id'] .'<br>'; echo 'Subject: '. $ticket['subject'] .'<br>'; } ?>
getTicketFields
(CRM >= 3.3.3391)
Syntax:
array getTicketFields()
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 Name des Feldes in der Datenbank
array(255) Value Array mit
label: der angezeigte Name des Feldes
field: Name des Feldes in der Datenbank
type: Typ des Feldes
Beispiel:
Ticket Actions
addTicketAction
Syntax:
int addTicketAction( array $ticket_action )
Beschreibung:
Fügt eine Ticketaction hinzu.
Gibt eine ticket_action_id zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von ticket_action array:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- int $ticket_id Ticket-Id int $userid User-Id der verantwortlichen Person string(65535) $notes Hinweis, Beschreibun ... int $atype Typ: 0 = intern, 1 = extern string(255) $subject Ticketaction-Betreff float $duration Dauer
Beispiel:
<?php $ticket_action = array( 'ticket_id' => 7, 'userid' => 55, 'notes' => 'Notice here', 'atype' => 1, 'subject' => 'Ticket action subject', 'duration' => 1,5); try { $crmapi_tickets = crmapi::tickets(); $ticket_action_id = $crmapi_tickets->addTicketAction($ticket_action ); } catch (CRMException $e) { echo $e->getMessage(); } echo $ticket_action_id; ?>
getTicketAction
(CRM >= 3.4.5380)
Syntax:
array getTicketAction( int $ticket_action_id )
Beschreibung:
Gibt eine Array mit Information von einer Ticket-Aktion anhand der $ticket_action_id zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften der zurückgegebenen Array zurück:
die selben wie für #getTicketActionsByTicketID
Beispiel:
getTicketActionsByTicketID
Syntax:
array getTicketActionsByTicketID( int $ticket_id )
Beschreibung:
Gibt ein Array mit Ticketactions zurück welche zum Ticket mit der ticket_id gehören.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von $ticket_action array:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- int $id Ticket Action-Id int $ticket_id Ticket-Id int $userid user-Id des verantwortlichen Nutzers string(65535) $notes Hinweis, Beschreibung ... int $atype Typ: 0 = intern, 1 = extern string(255) $subject Ticketaction-Betreff int $createuser User-Id der Erstellers int $createtime Unix-Timestamp der Erstellung int $chguser User-Id der letzten Änderung int $chgtime Unix-Timestamp der letzten Änderung float $duration Dauer
Beispiel:
<?php try { $crmapi_tickets = crmapi::tickets(); // Get Ticket actions, which belong to the ticket with id: 180 $result = $crmapi_tickets->getTicketActionsByTicketID(180); } catch (CRMException $e) { echo $e->getMessage(); } foreach($result as $ticket_action) { foreach($ticket_action as $key => $value) { echo $key . '=>' . $value . '<br>'; } echo "<hr>"; } ?>
changeTicketAction
Syntax:
int changeTicketAction(int $ticket_action_id, array $ticket_action )
Beschreibung:
Ändert die Eigenschaften einer existierenden Ticketaction.
Gibt eine ticket_action_id zurück.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von $ticket_action array:
die selben wie für #addTicketAction
Beispiel:
<?php $ticket_action = array(); $ticket_action['subject'] = 'API Ticket Action changed'; try { $crmapi_tickets = crmapi::tickets(); // Change ticket action with id 180 $ticket_action_id = $crmapi_tickets->changeTicketAction( 180, $ticket_action ); } catch (CRMException $e) { echo $e->getMessage(); } echo $ticket_action_id; ?>
deleteTicketAction
Syntax:
void crmdeleteTicketAction ( int $ticket_action_id )
Beschreibung:
Löscht ein Ticket.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Beispiel:
getTicketActionByCondition
Syntax:
array getTicketActionByCondition ( array $condition )
Beschreibung:
Gibt ein Array von Ticket-Aktion zurück, welche mit den Bedingungen übereinstimmen.
Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.
Eigenschaften von $condition Array:
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
Eigenschaften von zurückgegebenen Array:
sind die selben wie für #getTicketActionsByTicketID
Beispiel:
<?php try { $crmapi_tickets = crmapi::tickets(); $condition = array('tids'=> '1,2,3,4,5,6,7'); $ticket_actions = $crmapi_tickets->getTicketActionByCondition($condition); } catch (CRMException $e) { echo $e->getMessage(); } foreach($ticket_actions as $ticket_action) { echo 'Ticket ID: '. $ticket_action['ticket_id'] .'<br>'; echo 'Subject: '. $ticket_action['subject'] .'<br>'; } ?>
