API Calls
Aus TecArt-CRM Developer-Wiki
Inhaltsverzeichnis |
Hinweis
API Klassen und deren Funktionen können nur mit CRM System mit Version >= 3.2 genutzt werden
Methoden
addCall
Syntax:
int addCall( array $call )
Beschreibung:
Fügt einen Anruf hinzu
Gibt eine call_id zurück
Wirft eine CRMException im Fehlerfall.
$call ist ein assoziatives Array
Um Kontakte zuzuweisen müssen Sie die contact id oder einige Eigenschaften des Kontakts( aus $call_contact ) übergeben, das System erledigt den Rest.
Eigenschaften von $call array:
Type(Length) Eigenschaft Beschreibung --------------------------------------------------------------------------------------------- string(255) $cid Contact-Id (Format: Contact-Id:Person-Id;Contact-Id2:Person-Id2;...) string(255) $name Contact-Name int $time Anruf-Zeit (Unix-Timestamp) string(255) $subject Betreff des Anrufs binary $body Nachricht des Anrufs string(255) $userid Userids (Format: User-Id1:User-Id2), -1 for NO userid int $pid Projekt-Id int $duration Anrufdauer in Sekunden int $done 0 für "Anruf erledigt", 1 für "Anruf nicht erledigt" int $io 0 für eingehenden Anruf, 1 für ausgehenden Anruf string(128) $lnumber Lokale Telefonnummer (Angerufener) string(128) $rnumber Entfernte Telefonnummer (Anrufer) string(128) $city Ort des Anrufers double $costs Anrufkosten in der gegebenen Währung( $currency ) string(3) $currency Währung der Anrufkosten string(255) $category Kategorien, Format: Category1; Category2; ... double $obligingness Die Kulanz für den Anruf int $rem Wiedervorlage (1: wenn an den Anruf erinnert werden soll, 0 wenn nicht) int $remtime Unix-Timestamp für die Wiedervorlage int $private Privater Anruf (1: wenn der Anruf privat sein soll, 0: wenn öffentlich) (CRM >= 3.2.2970) array $call_contacts Array mit contact values
Eigenschaften von $call_contacts array:
Type(Length) Eigenschaft Beschreibung
---------------------------------------------------------------------------------------------
string(255) $cid Contact Id ( Format: Cid:Pid )
string(128) $firstname Vorname
string(128) $lastname Nachname
string(128) $displayname Name, der in Listen erscheint
string(128) $nickname Spitzname
string(255) $emailadr1 Erste E-Mail-Addresse
string(255) $emailadr2 Zweite E-Mail-Addresse
int $email_format Bevorzugtes E-Mail-Format
0 = Text
1 = HTML
string(128) $screen_name Screen Name, z.B. Messenger-Account
string(128) $phone_work Telefonnummer Arbeit
string(128) $phone_home Telefonnummer Privat
string(128) $phone_fax Faxnummer Arbeit
string(128) $phone_pager Pager Nummer
string(128) $phone_mobil Mobilnummer
string(128) $home_address1 Adresszeile privat 1
string(128) $home_address2 Adresszeile privat 2
string(128) $home_city Stadt
string(128) $home_region Region
string(128) $home_postcode Postleitzahl
string(128) $home_country Land
string(128) $home_website Persönliche Website
string(128) $work_title Titel auf Arbeit, z.B. CEO
string(128) $work_department Abteilung
string(128) $work_organisation Organisations- oder Firmenname
string(128) $work_address1 Adresszeile Arbeit 1
string(128) $work_address2 Adresszeile Arbeit 2
string(128) $work_city Stadt
string(128) $work_region Region
string(128) $work_postcode Postleitzahl
string(128) $work_country Land
string(255) $work_website Offizielle Firmen-Website
string(255) $custom1 Benutzerdefiniertes Feld 1
string(255) $custom2 Benutzerdefiniertes Feld 2
string(255) $custom3 Benutzerdefiniertes Feld 3
string(255) $custom4 Benutzerdefiniertes Feld 4
string(65535) $notes Notizen
Beispiel
<?php try { $call = array( 'cid' => 0, 'time' => time(), 'name' => "", 'subject' => 'test subject', 'body' => "Test body", 'pid' => "", 'duration' => 100, 'done' => 1, 'lnumber' => "036155656", 'rnumber' => "766333134", 'city' => "Erfurt", 'costs' => 12.77, 'currency' => "Euro", 'category' => "", 'io' => 1, 'obligingness' => '20,25', 'rem' => 1, 'remtime' => 1263830400, 'call_contacts' => array( array('firstname' => 'Axel', 'lastname' => 'Friedrich', 'emailadr1' => 'axel.friedrich@dont-spam-me.de'), array('firstname' => 'Thomas', 'lastname' => 'Fischer'))); $crmapi_calls = crmapi::calls(); $call_id = $crmapi_calls->addCall($call); } catch (CRMException $e) { echo $e->getMessage(); } echo $call_id; ?>
getCall
Syntax:
array getCall( int $call_id )
Beschreibung:
Gibt den Anruf mit der gegebenen call id zurück.
Wirft eine CRMException im Fehlerfall.
Eigenschaften der zurückgegebenen call array:
sind die selben wie für #getCalls
Beispiel:
changeCall
Syntax:
int changeCall( int $callid, array $call)
Beschreibung:
Ändert Eigenschaften eines bestehenden Anrufs.
Gibt eine $call_id zurück.
Wirft eine CRMException im Fehlerfall.
Eigenschaften von $call array:
same as for #addCall
Beispiel:
getCalls
Syntax:
array getCalls( int $userid, int $day, int $month, int $year )
Beschreibung:
Gibt ein calls Array zurück.
Wirft eine CRMException im Fehlerfall.
Wenn userid gegeben ist, werden Anrufe für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf -1 gesetzt wird, werden alle Anrufe für den authentifizierten Nutzer zurückgegeben.
Wenn day, month and year gegeben sind, werden nur Anrufe für den entsprechenden Tag zurückgegeben.
Wenn month and year gegeben sind, werden nur Anrufe für den entsprechenden Monat zurückgegeben.
Wenn year gegeben ist, werden nur Anrufe für das entsprechende Jahr zurückgegeben.
Sie können day auf 0 setzen um den kompletten Monat zu sehen oder day und month auf 0 setzen um das komplette Jahr zu sehen oder day, month und year auf 0 setzen um alle Anrufe zu sehen.
Eigenschaften der zurückgegebenen $calls array:
Type(Length) Eigenschaft Beschreibung --------------------------------------------------------------------------------------------- int $id Call-Id string(255) $cid Contact-Id (Format: Contact-Id:Person-Id;Contact-Id2:Person-Id2;...) string(255) $name Contact-Name int $time Anruf-Zeit (Unix-Timestamp) string(255) $subject Betreff des Anrufs binary $body Nachricht des Anrufs string(255) $userid Userids (Format: User-Id1:User-Id2 int $chguser Userid der letzten Änderung int $chgtime Unix-Timestamp der letzten Änderung int $pid Project-Id int $duration Anrufdauer in Sekunden int $done 0 für "Anruf erledigt", 1 für "Anruf nicht erledigt" int $io 0 für eingehenden Anruf, 1 für ausgehenden Anruf string(128) $lnumber lokale Telefonnummer ( Angerufener ) string(128) $rnumber entfernte Telefonnummer ( Anrufer ) string(128) $city Ort der entfernten Telefonnummer double $costs Kosten in der gegebenen Währung( $currency ) string(3) $currency Währung des Anrufs int $createuser Userid der Erstellung int $createtime Unix-Timestamp der Erstellung string(255) $category Kategorien, Format: Category1; Category2; ... double $obligingness Kulanz des Anrufs int $rem Wiedervorlage (1: an den Anruf wird erinnert, and 0: an den Anruf wird nicht erinnert) int $remtime Unix-Timestamp der Wiedervorlage int $private Privater Anruf (1: der Anruf ist private, und 0: der Anruf ist öffentlich) (CRM >= 3.2.2970) array $call_contacts Array mit call Kontakt-Werte array $call_projects Array mit call Projekt-Werte ( CRM>=3.4.5096 )
Eigenschaften von $call_contacts array:
Type(Length) Eigenschaft Beschreibung
---------------------------------------------------------------------------------------------
string(255) $cid Contact Id ( Format: Cid:Pid )
string(128) $firstname Vorname
string(128) $lastname Nachname
string(128) $displayname Name, der in Listen erscheint
string(128) $nickname Spitzname
string(255) $emailadr1 First E-Mail-Address
string(255) $emailadr2 Second E-Mail-Address
int $email_format Preferred Format
0 = Text
1 = HTML
string(128) $screen_name Screen Name, e.g. Messenger-Account
string(128) $phone_work Phone Number at Work
string(128) $phone_home Phone Number at Home
string(128) $phone_fax Fax Number at Work
string(128) $phone_pager Pager Number
string(128) $phone_mobil Cellular Number
string(128) $home_address1 Home Address Line 1
string(128) $home_address2 Home Address Line 2
string(128) $home_city Hometown
string(128) $home_region Home Region
string(128) $home_postcode Home ZIP
string(128) $home_country Home Country
string(128) $home_website Personal Website
string(128) $work_title Title at Work, e.g. CEO
string(128) $work_department Department
string(128) $work_organisation Org- or Company Name
string(128) $work_address1 Work Address Line 1
string(128) $work_address2 Work Address Line 2
string(128) $work_city Work City
string(128) $work_region Work Region
string(128) $work_postcode Work ZIP
string(128) $work_country Work Country
string(255) $work_website Offical Company Website
string(255) $custom1 Custom Field 1
string(255) $custom2 Custom Field 2
string(255) $custom3 Custom Field 3
string(255) $custom4 Custom Field 4
string(65535) $notes Notes
string $picture Contact Picture Data - base64 encoded
int $chguser Userid of last modification
int $chgtime Unix-Timestamp of last modification
int $createuser Userid of task creation
int $createtime Unix-Timestamp of task creation
Eigenschaften von $call_projects array:
Type(Length) Eigenschaft Beschreibung ------------------------------------------------------------------- int $pid Project-Id string(255) $name Projektname string(50) $number Projektnummer string(255) $url URL des Projekts (Website) int $start Startdatum & Zeit als Unix-Timestamp int $stop Stopdatum & Zeit als Unix-Timestamp int $done Fertigstellung in Prozent double $budget Projektbudget string(65535) $notes Projektnotizen int $leader Projektleiter Userid int $substitute Stellv. Projektleiter Userid string(65535) $shortnotes Projekt Kurzbeschreibung int $invoice Rechnung erstellt? Mögliche Werte: 0, 1 int $priority Priorität, Mögliche Werte: -1 = niedrig, 0 = normal, 1 = hoch string(255) $category Projektkategorien, Format: Category1:Category2:... int $chguser Userid der letzten Änderung int $chgtime Unix-Timestamp der letzten Änderung int $createuser Userid der Erstellung int $createtime Unix-Timestamp der Erstellung string(255) $user19 Benutzerdefiniertes Feld Nr. 19 string(255) $user20 Benutzerdefiniertes Feld Nr. 20 : : : string(255) $user80 Benutzerdefiniertes Feld Nr. 80
Beispiel:
getCallsFrom
Syntax:
array crmapi_calls->getCallsFrom( int $userid, int $day, int $month, int $year )
Beschreibung:
Gibt ein Array mit call values ab dem gegebenem Datum zurück.
Wenn userid gegeben ist, werden Anrufe für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Anrufe für den authentifizierten Nutzer zurückgegeben.
Wenn day, month and year gegeben sind, werden nur Anrufe für den entsprechenden Tag zurückgegeben.
Wenn month and year gegeben sind, werden nur Anrufe für den entsprechenden Monat zurückgegeben.
Wenn year gegeben ist, werden nur Anrufe für das entsprechende Jahr zurückgegeben.
Sie können day auf 0 setzen um den kompletten Monat zu sehen oder day und month auf 0 setzen um das komplette Jahr zu sehen oder day, month und year auf 0 setzen um alle Anrufe zu sehen.
Eigenschaften der zurückgegebenen calls array:
sind die selben wie für #getCalls
Beispiel:
<?php try { $crmapi_calls = crmapi::calls(); //Get all Calls from 10.10.2010: $result = $crmapi_calls->getCallsFrom(-1, 10, 10, 2010); } catch (CRMException $e) { echo $e->getMessage(); } foreach($result as $call) { foreach($call as $key => $val) { echo "$key => $val<br/>\n"; if (is_array($val) && count($val) print_r($val); } } ?>
getChangedCalls
Syntax:
array getChangedCalls( int $userid, int $timestamp )
Beschreibung:
Gibt ein array mit calls zurück, die seit timestamp geändert wurden.
Wenn userid gegeben ist, werden Anrufe für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Anrufe für den authentifizierten Nutzer zurückgegeben.
Eigenschaften von returned call objects:
sind die selben wie für #getCalls
Beispiel:
<?php try { $crmapi_calls = crmapi::calls(); //Get Calls modified in the last 30 days: $result = $crmapi_calls->getChangedCalls(0, time() - 60 * 60 * 24 * 30); foreach($result as $call) { foreach($call as $key => $val) { echo "$key => $val<br/>\n"; if (is_array($val) && count($val) print_r($val); } } } catch (CRMException $e) { echo $e->getMessage(); } ?>
getChangedCallsLimit
Syntax:
array getChangedCallsLimit( int $userid, int $timestamp, int $count, int $offset )
Beschreibung:
Gibt ein Array mit calls zurück die Seit timestamp verändert wurden, limitiert durch count und offset.
Wirft eine CRMException im Fehlerfall.
Wenn userid gegeben ist, werden Anrufe für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Anrufe für den authentifizierten Nutzer zurückgegeben.
Eigenschaften von $call array:
sind die selben wie für #getCalls
Beispiel:
<?php try { $crmapi_calls = crmapi::calls(); //Get the 5 last calls modified in the last 30 days: $result = $crmapi_calls->getChangedCallsLimit(0, time() - 60 * 60 * 24 * 30, 5, 0); foreach($result as $call) { foreach($call as $key => $val) { echo "$key => $val<br/>\n"; if (is_array($val) && count($val) print_r($val); } } } catch (CRMException $e) { echo $e->getMessage(); } ?>
getCallIds
Syntax:
array getCallIds( int $userid, int $timestamp )
Beschreibung:
Gibt ein Array mit call Ids für Anrufe zurück, die seit timestamp verändert wurden.
Wirft eine CRMException im Fehlerfall.
Wenn userid gegeben ist, werden Anrufe für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Anrufe für den authentifizierten Nutzer zurückgegeben.
Beispiel:
deleteCall
Syntax:
void deleteCall( int $callid )
Beschreibung:
Löscht den Anruf mit der gegebenen call id.
Wirft eine CRMException im Fehlerfall.
Beispiel:
