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

API Klassen und deren Funktionen können nur mit der TecArt-System Version >= 3.2 genutzt werden

1. Methoden

1.1. getAppointmentIds

Syntax:

array getAppointmentIds( int $userid, int $timestamp )

Beschreibung:

Gibt ein array mit Appointment-Ids für alle Termine zurück, die seit $timestamp geändert wurden.

Wirft eine CRMException im Fehlerfall.

Wenn die userid gegeben ist, werden die Termine des entsprechenden Benutzers zurückgegeben( nur wenn der authentifizierte Benutzer entsprechende Leseberechtigungen hat). Wird die userid auf 0 gesetzt, werden die Termine des authentifizierten Users zurückgegeben.

Beispiel:

<?php
 
try {
	$crmapi_dates		= crmapi::dates();
	$appointment_ids	= $crmapi_dates->getAppointmentIds($userid, $timestamp);
}
catch (CRMException $e) {
	echo $e->getMessage();
}
 
foreach( $appointment_ids as $appointment_id) {
	echo "id: " . $appointment_id . "<br>  ";
}



1.2. addAppointment

Syntax:

int addAppointment( array $appointment )

Beschreibung:

Fügt einen Termin hinzu.

Gibt eine appointment_id zurück

Wirft eine CRMException im Fehlerfall.

Um dem Termin Kontakte zuzuweisen, müssen Sie die contact_id oder einige Eigenschaften von $appointment_contact angeben, das System erledigt den Rest.

$appointment ist ein Array mit appointment-Werten

Eigenschaften von$appointment:

Typ(Länge)              Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $start                    Start Zeit & Datum (Unix-Timestamp)
int                     $stop                     Stop Zeit & Datum (Unix-Timestamp) 
string(255)             $subject                  Betreff des Termins
binary                  $body                     Body des Termins
string(255)             $cid                      Contact-Id (Format: Contact-Id:Person-Id;Contact-Id2:Person-Id2;...) 
string(255)             $userid                   Userids (Format: User-Id1:User-Id2) 
int                     $confirmed                Termin vom aktuellen User bestätigt 
                                                  0 = nicht bestätigt
                                                  1 = bestätigt
int                     $pid                      Projekt-Id 
int                     $ticket_id                Ticket-Id ( ab Version >= 4.1 )
int                     $orderid                  Auftrag-Id ( ab Version 4.2 )
int                     $ext_id                   Externe ID ( ab Version 4.2 )
boolean                 $day                      Ganztägiger Termin (0 = nicht ganztägig, 1 = gänztägig)
int                     $rem                      Erinnerung für den Termin
                                                  0 = nicht erinnern
                                                  1 = erinnern
int                     $remember                 Zahl der Sekunden vor $stop
string(128)             $city                     Ort des Termins 
int                     $status                   Status des Termins
                                                  0 = Frei
                                                  1 = Mit vorbehalt
                                                  2 = Gebucht
                                                  3 = Abwesend
boolean                 $privat                   Privater Termin (0 = öffentlich, 1 = privat) 
int                     $done                     Termin erledigt
                                                  0 = offen
                                                  1 = erledigt
int                     $serie                    Serientermin
                                                  1 = täglich
                                                  2 = wöchentlich
                                                  3 = monatlich
                                                  4 = jährlich
int                     $intrval                  Serienterminintervall (z.B. 2) 
int                     $serieend                 Unix-Timestamp vom Ende der Serie
string(255)             $category                 Kategorien, Format: Category1; Category2; ... 
string(7)               $caption                  Beschriftung ( ab Version 4.3 )

array                   $contacts                 Array mit contacts-Werten

Eigenschaften von contacts:

Typ(Länge)              Eigenschaften                  Beschreibung
---------------------------------------------------------------------------------------------
string(255)             $cid                      Contact Id ( Format: Cid:Pid )
int                     $ext_id                   Externe ID ( ab Version 4.2 )
string(128)             $firstname                Vorname
string(128)             $lastname                 Nachname
string(128)             $displayname              Name der in Listen erscheint 
string(128)             $Spitzname                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 geschäftlich
string(128)             $phone_home               Telefonnummer privat
string(128)             $phone_fax                Fax Nummer geschäftlich
string(128)             $phone_pager              Pagernummer
string(128)             $phone_mobil              Mobilfunknummer
string(128)             $home_address1            Private Addresse Zeile 1 
string(128)             $home_address2            Private Addresse Zeile 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- or Firmenname  
string(128)             $work_address1            Arbeitsaddresse Zeile 1 
string(128)             $work_address2            Arbeitsaddresse Zeile 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 Firmenwebsite 
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 {
    $crmapi_dates = crmapi::dates();
 
    $appointment = array(
        'start'     => 1178006400,
        'stop'      => 1178022600,
        'day'       => 0,
        'subject'   => 'api test',
        'body'      => 'this is a test',
        'city'      => 'Erfurt',
        'userid'    => '5',
        'rem'       => 0,
        'remember'  => 0,
        'privat'    => 0,
        'done'      => 0,
        'status'    => 2,
        'confirmed' => 1,
        'cid'       => 0,
        'pid'       => 0,
        'serie'     => 0,
        'intrval'   => 0,
        'serieend'  => 0,
        'contacts'  => array(
			array(
				'firstname' => 'Christian',
				'lastname'  => 'Friebel',
				'emailadr1' => 'xray@xatec.de'
			),
			array(
				'firstname' => 'Thomas',
				'lastname'  => 'Draht'
			)
		)
);
 
    $appointment_id = $crmapi_dates->addAppointment($appointment);
 
    echo 'inserted id: ' . $appointment_id;
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.3. addAppointments

Syntax:

array addAppointments( array $appointments ) 

Beschreibung:

Fügt mehrere Termine mit einem Funktionsaufruf hinzu.

Gibt ein Array mit appointment_ids zurück.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $appointments array:

Enthält ein oder mehrere Arrays mit den selben Eigenschaften wie für addAppointment beschrieben.

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
 
    $appointment1 = array(
		'start'		=> 1178006400,
        'stop'		=> 1178022600,
        'day'		=> 0,
        'subject'	=> 'api test',
        'body'		=> 'this is a test',
        'city'		=> 'Erfurt',
        'userid'	=> '5',
        'rem'		=> 0,
        'remember'	=> 0,
        'privat'	=> 0,
        'done'		=> 0,
        'status'	=> 2,
        'confirmed'	=> 1,
        'cid'		=> 0,
        'pid'		=> 0,
        'serie'		=> 0,
        'intrval'	=> 0,
        'serieend'	=> 0
	);
 
    $appointment2 = array(
		'start'        => mktime(19, 0, 0, 12, 10, 2007),
        'stop'         => mktime(21, 0, 0, 12, 10, 2007),
        'day'          => 0,
        'subject'      => 'Appointment 2',
        'body'         => 'this is a second test',
        'city'         => 'Erfurt',
        'userid'       => '5',
        'rem'          => 0,
        'remember'     => 0,
        'privat'       => 0,
        'done'         => 0,
        'status'       => 2,
        'confirmed'    => 1,
        'cid'          => 0,
        'pid'          => 0,
        'orderid'      => 1234,
        'serie'        => 0,
        'intrval'      => 0,
        'serieend'     => 0
	);
 
    $appointments = array($appointment1, $appointment2);
 
    $appointment_ids = $crmapi_dates->addAppointments($appointments);
   
    foreach($appointment_ids as $id) {
		echo 'inserted id: ' . $id;
    }
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.4. changeAppointment

Syntax:

int changeAppointment( array $appointment ) 

Beschreibung

Ändert Eigenschaften eines bestehenden Termins.

Gibt die appointment_id zurück.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $appointment array:

gleiche wie addAppointment

Beispiel

<?php
 
try {
    $appointment = array(
		'id'		=> 23412,
		'subject'	=> 'APITest changed'
	);
 
    $crmapi_dates = crmapi::dates();
    $id = $crmapi_dates->changeAppointment($appointment);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo 'changed id: ' . $id;



1.5. changeAppointments

Syntax:

array changeAppointments( array $appointments ) 

Beschreibung

Ändert die Eigenschaften von bestehenden Terminen.

$appointments ist ein Array mit $change_appointment_arrays

Gibt ein Array mit appointment_ids zurück

Wirft eine CRMException im Fehlerfall.

Beispiel

<?php
 
$appointment1 = array(
	'id'           => 25213,
	'subject'      => 'API Appointment 1 changed',
	'body'         => 'this is a changed test'
);
  
$appointment2 = array(
	'id'           => 25217,
	'start'        => mktime(18, 0, 0, 12, 10, 2007),
	'subject'      => 'API Appointment 2 changed'
);
 
$appointments = array ($appointment1, $appointment2);
 
try {
    $crmapi_dates = crmapi::dates();
    $ids = $crmapi_dates->changeAppointment($appointments);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($ids as $id) {
	echo 'changed id: ' . $id . '<br>';
}


1.6. getAppointment

Syntax:

array getAppointment( int $id ) 

Beschreibung

Gibt ein appointment_array zurück.

Eigenschaften vom zurückgegebenen appointment array:

Typ(Länge)              Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $start                    Startzeit & Datum (Unix-Timestamp)
int                     $stop                     Endzeit  & Datum (Unix-Timestamp) 
string(255)             $subject                  Betreff des Termins
binary                  $body                     Text des Termins
string(255)             $cid                      Contact-Id (Format: Contact-Id:Person-Id;Contact-Id2:Person-Id2;...) 
string                  $cname                    Kontakt-Name 
int                     $pid                      Projekt-Id 
int                     $ticket_id                Ticket-Id ( ab Version >= 4.1 )
int                     $orderid                  Auftrag-Id ( ab Version 4.2 )
int                     $ext_id                   Externe ID ( ab Version 4.2 )
string                  $pname                    Projekt-Name 
string(255)             $userid                   Userids (Format: User-Id1:User-Id2) Achtung: virtuelles Feld, direkte Anforderung führt zu Fehlermeldung!
boolean                 $day                      Ganztägiger Termin (0 = nicht ganztägig, 1 = ganztägig)
int                     $rem                      Erinnerung für den Termin
                                                  0 = nicht erinnern
                                                  1 = erinnern
int                     $remember                 Zahl der Sekunden vor $stop
string(128)             $city                     Ort des Termins 
int                     $status                   Status für den Termin
                                                  0 = Frei
                                                  1 = mit vorbehalt
                                                  2 = Gebucht
                                                  3 = Abwesend
boolean                 $privat                   Privater Termin (0 = öffentlich, 1 = privat) 
int                     $done                     Termin erledigt
                                                  0 = offen
                                                  1 = erledigt
string(255)             $forward                  Userids zu der der Termin weitergeleitet wurde
                                                  Format: User-Id1:User-Id2
int                     $serie                    Serientermin
                                                  1 = täglich
                                                  2 = wöchentlich
                                                  3 = monatlich
                                                  4 = jährlich
int                     $intrval                  Serientermininterval (z.B. 2) 
int                     $serieend                 Unix-Timestamp des Serienendes ( ab Version 3.7 )
string(255)             $seen                     Userids für User, die den Termin gesehen haben
                                                  Format: Userid1:Userid2
string(255)             $category                 Kategorien, Format: Category1; Category2; ... 
string(7)               $caption                  Beschriftung ( ab Version >= 4.3 )

int                     $serie_type               $serie == 1 ? 1 = täglich, 2 = jeden Werktag
                                                  $serie == 2 ? 2
                                                  $serie == 3 ? 1 = Tag und Monat, 2 = Interval  
                                                  $serie == 4 ? 1 = Tag und Monat, 2 = Interval  
int                     $instance                 1 = erste, 2 = zweite, 3 = dritte, 4 = vierte oder 5 = letzte dayofweekmask des Monats oder Jahres
int                     $day_of_week_mask         S M T W T F S = binäre Bitmaske
                                                  Sunday     = 01000000  (64)
                                                  Monday     = 00100000  (32)
                                                  Tuesday    = 00010000  (16)
                                                  Wednesday  = 00001000  (8)
                                                  Thursday   = 00000100  (4)
                                                  Friday     = 00000010  (2)
                                                  Saturday   = 00000001  (1)

                                                  z.B., Mittwoch AND Freitag 
                                                  Mittwoch   = 00001000  (8)
                                                  Freitag    = 00000010  (2)
                                                  --------------------------
                                                  bitwise OR = 00001010  (10)

int                     $day_of_month             Tag des Monats, 1 - 31 
int                     $month_of_year            Monat des Jahres, 1 - 12
int                     $occurrences              Zahl des Auftretens
int                     $end_type                 3 = endet auf ein Datum, 
                                                  2 = endet nach einer bestimmten Anzahl, 
                                                  1 = ohne Ende
int                     $serie_parent             id des übergeordneten Objekts, wenn dieses Element 
                                                  geändert wurde
int                     $serie_parent_date        Datum des ursprünglichen aktuellen Elements, 
                                                  bevor es zu einem anderen Zeitpunkt geändert wurde

array                   $confirmed                Array mit user confirmed status
array                   $contacts                 Array mit Contact-Werten

int                     $chguser                  Userid of last modification 
int                     $chgtime                  Unix-Timestamp of last modification 
int                     $createuser               Userid of appointment creation 
int                     $createtime               Unix-Timestamp of appointment creation

Eigenschaften von confirmed array:

Typ(Länge)              Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $key                      Userid 
boolean                 $value                    Termin bestätigt für diesen Nutzer 
                                                  0 = nicht bestätigt
                                                  1 = bestätigt

Eigenschaften von contacts array:

Typ(Länge)              Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
string(255)             $cid                      Contact Id ( Format: Cid:Pid )
int                     $ext_id                   Externe ID ( ab Version 4.2 )
string(128)             $firstname                Vorname
string(128)             $lastname                 Nachname
string(128)             $displayname              Name, der in Listenansichten erscheint
string(128)             $Spitzname                Spitzname 
string(255)             $emailadr1                Erste E-Mail-Addresse 
string(255)             $emailadr2                Zweite E-Mail-Addresse 
int                     $email_format             Bevorzugtes Format 
                                                  0 = Text
                                                  1 = HTML
string(128)             $screen_name              Screen Name, z.B. Messenger-Account 
string(128)             $phone_work               Telefon am Arbeitsplatz
string(128)             $phone_home               Telefon zu Hause
string(128)             $phone_fax                Fax am Arbeitsplatz
string(128)             $phone_pager              Pagernummer 
string(128)             $phone_mobil              Mobiltelefon
string(128)             $home_address1            Addresszeile 1 zu Hause
string(128)             $home_address2            Addresszeile 2 zu Hause
string(128)             $home_city                Heimatstadt 
string(128)             $home_region              Heimatregion
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            Addresszeile 1 Arbeit
string(128)             $work_address2            Addresszeile 2 Arbeit
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 Firmenwebsite 
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
string                  $picture                  Kontaktbild Daten - base64 encoded
int                     $chguser                  Userid der letzten Änderung
int                     $chgtime                  Unix-Timestamp der letzten Änderung
int                     $createuser               Userid der Erstellung
int                     $createtime               Unix-Timestamp der Erstellung

Beispiel

<?php
 
try {
	$crmapi_dates = crmapi::dates();
	$appointment  = $crmapi_dates->getAppointment($appointment_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo date("H:i:s", $appointment['start'])." ".$appointment['subject']."";
 
if (isset($appointment['contacts']) && is_array($appointment['contacts'])) {
    foreach($appointment['contacts'] as $contact) {
        echo $contact['firstname']." ".$contact['lastname']."<br>  ";
    }
}
 
if (isset($appointment['projects']) && is_array($appointment['projects'])) {
    foreach($appointment['projects'] as $project) {
        echo $project['name']." ".$project['number']."<br>  ";
    }
}



1.7. getAppointments

Syntax:

array getAppointments( int $userid, int $day, int $month, int $year ) 

Beschreibung:

Gibt ein Array mit Terminen zurück

Wirft eine CRMException im Fehlerfall.

Wenn userid gegeben ist, werden Termine für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Termine für den authentifizierten Nutzer zurückgegeben.

Wenn day gegeben ist, werden nur Termine für den entsprechenden Tag zurückgegeben. Ist day auf 0 gesetzt werden Termine für alle Tage zurückgegeben.

Wenn month gegeben ist, werden nur Termine für den entsprechenden Monat zurückgegeben. Ist month auf 0 gesetzt werden Termine für alle Monate zurückgegeben.

Eigenschaften von appointments array:

Typ(Länge)              Eigenschaft              Beschreibung
---------------------------------------------------------------------------------------------
int                     Key                      - normaler Termin: Appointment ID
                                                 - Serientermin: Eine Kombination von Appointment-ID und Unix-Timestamp (die
                                                   Zeit, wann der Termin stattfindet).
                                                   * zum Beispiel 12345-1288566000 ( Ein Termin mit der id = 12345 und 
                                                   der am 1. November 2010 stattfindet ) 

array                   Value                    appointment array

Eigenschaften von Appointment array:

sind die selben wie getAppointment

Beispiel

<?php
 
try {
	$crmapi_dates = crmapi::dates();
	$appointments = $crmapi_dates->getAppointments(0, 0, 10, 2009);
}
catch (CRMException $e) {
	echo $e->getMessage();
}
 
foreach($appointments as $appointment) {
	$start = date("d.m.Y - H:i:s", $appointment['start']);
	$stop  = date("d.m.Y - H:i:s", $appointment['stop']);
   
	echo "{$start} - {$stop} {$appointment['subject']} <br>  ";
}


1.8. getAppointmentsFrom

Syntax:

array getAppointmentsFrom( int $userid, int $day, int $month, int $year ) 

Beschreibung:

Gibt ein Array mit appointment results vom gegebenen Datum zurück

Wirft eine CRMException im Fehlerfall.

Wenn userid gegeben ist, werden Termine für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Termine für den authentifizierten Nutzer zurückgegeben.

Wenn day gegeben ist, werden nur Termine für den entsprechenden Tag zurückgegeben. Ist day auf 0 gesetzt werden Termine für alle Tage zurückgegeben.

Wenn month gegeben ist, werden nur Termine für den entsprechenden Monat zurückgegeben. Ist month auf 0 gesetzt werden Termine für alle Monate zurückgegeben.

Wenn year gegeben ist, werden nur Termine für das entsprechende Jahr zurückgegeben. Ist year auf 0 gesetzt werden Termine für alle Jahre zurückgegeben.

Eigenschaften von appointments array:

sind die selben wie getAppointments

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
    $appointments = $crmapi_dates->getAppointmentsFrom(0, 0, 10, 2009);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($appointments as $appointment) {
    $start = date("d.m.Y - H:i:s", $appointment['start']);
    $stop  = date("d.m.Y - H:i:s", $appointment['stop']);
   
    echo "{$start} - {$stop} {$appointment['subject']} <br>  ";
}



1.9. getAppointmentsFromList

(Version >= 3.4.3366)

Syntax:

array getAppointmentsFromList( int $userid, int $start )

Beschreibung:

Gibt ein Array mit List von Termine zurück, die seit start beginnen und bis in 4 Jahre beenden.

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

Wenn userid gegeben ist werden die Aufgaben für den Entsprechenden Nutzer zurückgegeben. Wenn userid auf 0 gesetzt ist werden Aufgaben des authentifizierten Nutzers zurückgegeben.

Eigenschaften von returned appointment array:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $id                       Termin-Id 
int                     $chgtime                  Änderungzeit (Unix-Timestamp) 
int                     $useen                    Ob der authentifizierte Benutzer, die Aufgabe gesehen hat.
                                                  1: ja
                                                  0: nein

Beispiel:

<?php
 
try {   
    $crmapi_dates = crmapi::dates();
    // Get a list of appointments for user with id=4, which start at 25.11.2011-00:00:00 and stop until 24.11.2015-00:00:00
    $result = $crmapi_dates->getAppointmentsFromList(4, 1322175600);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $date) {
    foreach($date as $key => $value) {
        echo $key. " " .$value ."<br>  \n";
    }
 
    echo '<hr>';
}



1.10. getAppointmentsPeriod

Syntax:

array getAppointmentsPeriod( int $userid, int $start, int $stop )

Beschreibung:

Gibt ein Array mit appointment results für den gegebenen Zeitraum zurück.

Wenn userid gegeben ist, werden Termine für den Benutzer nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Termine für den authentifizierten Nutzer zurückgegeben.

start ist der Unix-timestamp für den Beginn des Zeitraums.

stop ist der Unix-timestamp für das Ende des Zeitraums.

Eigenschaften von appointments array:

sind die selben wie getAppointments

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
    $appointments = $crmapi_dates->getAppointmentsPeriod(0,  time() - (86400 * 30), time() + (86400 * 30));
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($appointments as $appointment) {
    $start = date("d.m.Y - H:i:s", $appointment['start']);
    $stop  = date("d.m.Y - H:i:s", $appointment['stop']);
   
    echo "{$start} - {$stop} {$appointment['subject']} <br>  ";
}



1.11. getChangedAppointments

Syntax:

array getChangedAppointments( int $userid, int $timestamp ) 

Beschreibung

Gibt ein Array mit appointment results die seit $timestamp modifiziert wurden zurück

Wirft eine CRMException im Fehlerfall.

Wenn userid gegeben ist, werden Termine für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn userid auf 0 gesetzt wird, werden alle Termine für den authentifizierten Nutzer zurückgegeben.

Eigenschaften von appointments array:

sind die selben wie getAppointments

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
    $appointments = $crmapi_dates->getChangedAppointments(0, 1174670365);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($appointments as $appointment) {
    $start = date("d.m.Y - H:i:s", $appointment['start']);
    $stop  = date("d.m.Y - H:i:s", $appointment['stop']);
   
    echo "{$start} - {$stop} {$appointment['subject']} <br>  ";
}



1.12. getChangedAppointmentsLimit

Syntax:

array getChangedAppointmentsLimit( int $userid, int $timestamp, int $count, int $offset ) 

Beschreibung

Gibt ein Array mit appointment results zurück, die seit $timestamp modifiziert wurden, limitiert von $count und $offset.

Wirft eine CRMException im Fehlerfall

Wenn userid gegeben ist, werden Termine für den User zurückgegeben ( nur dann, wenn der authentifizierte Benutzer entsprechende Leseberechtigungen hat). Wenn userid auf 0 gesetzt wird, werden alle Termine für den authentifizierten Nutzer zurückgegeben.

Eigenschaften von appointments array:

sind die selben wie getAppointments

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
    $appointments = $crmapi_dates->getChangedAppointmentsLimit(0, 1174670365, 10, 20);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($appointments as $appointment) {
    $start = date("d.m.Y - H:i:s", $appointment['start']);
    $stop  = date("d.m.Y - H:i:s", $appointment['stop']);
  
    echo "{$start} - {$stop} {$appointment['subject']} <br/>";
}



1.13. getChangedAppointmentsList

(Version >= 3.4.3309)

Syntax:

array getChangedAppointmentsList( int $userid, int $timestamp )

Beschreibung:

Gibt ein Array mit List von Termine zurück, die seit timestamp geändert wurden.

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

Wenn userid gegeben ist werden die Aufgaben für den Entsprechenden Nutzer zurückgegeben. Wenn userid auf 0 gesetzt ist werden Aufgaben des authentifizierten Nutzers zurückgegeben.

Eigenschaften von returned appointment array:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $id                       Termin-Id 
int                     $chgtime                  Startzeit (Unix-Timestamp) 
int                     $useen                    Ob der authentifizierte Benutzer, die Aufgabe gesehen hat.
                                                  1: ja
                                                  0: nein

Beispiel:

<?php
 
try {   
    $crmapi_dates = crmapi::dates();
    // Get a list of appointments for user with id=4, which have changed since 25.11.2011-00:00:00
    $result = $crmapi_dates->getChangedAppointmentsList(4, 1322175600);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $date) {
    foreach($date as $key => $value) {
        echo $key. " " .$value ."<br>  \n";
    }
 
    echo '<hr>';
}



1.14. deleteAppointment

Syntax:

void deleteAppointment( int $appointment_id ) 

Beschreibung

Löscht den Termin mit der gegebenen $appointment_id.

Wirft eine CRMException im Fehlerfall.

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
    $crmapi_dates->deleteAppointment($appointment_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.15. deleteAppointments

Syntax:

void deleteAppointments( array $appointment_ids ) 

Beschreibung

Löscht Termine mit den gegebenen $appointment_ids.

Wirft eine CRMException im Fehlerfall.

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
 
    $app_ids = array("20132","45231","23623");
 
    $crmapi_dates->deleteAppointments($app_ids);
}
catch (CRMException $e) {
    echo $e->getMessage();
}


1.16. setReadFlag

Syntax:

void setReadFlag( int $appointment_id, int $flag ) 

Beschreibung

Setzt das gelesen- oder ungelesen-Flag für den authentifizierte User für den Termin mit der entsprechenden $appointment_id.

Wenn flag auf 1 gesetzt ist, wird das Gelesen-Flag auf gesehen gesetzt, bei 0 auf ungesehen.

Wirft eine CRMException im Fehlerfall.

Beispiel

<?php
 
try {
    $crmapi_dates = crmapi::dates();
    // Set 'read' for appointment with id = 7
    $crmapi_dates->setReadFlag(7, 1);
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.17. getIdByExtId

(Version >= 4.2)

Syntax:

array getIdByExtId( string $external_id ) 

Beschreibung

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

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

Eigenschaften des zurückgegebenen date ids array:

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

Beispiel:

<?php
 
try {   
    $crmapi_dates = crmapi::dates();
   
    $result = $crmapi_dates->getIdByExtId(12345);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {
    echo $id."<br>  ";
}



1.18. getAllExtIds

(Version >= 4.2)

Syntax:

array getAllExtIds( string $external_id ) 

Beschreibung

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

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

Eigenschaften des zurückgegebenen date ids array:

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

Beispiel:

<?php
 
try {   
    $crmapi_dates = crmapi::dates();
   
    $result = $crmapi_dates->getAllExtIds();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {
    echo $id."<br>  ";
}



1.19. setDuplicatecheckConfig

(Version >= 4.4)

Syntax:

boolean|string CRMException message setDuplicatecheckConfig( [array( [string <fieldname>, string <fieldname>...]) | NULL] )

Beschreibung:

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

Standardübergabe ist ein leeres Array, was gleichbedeutend mit einer nicht stattfindenden Dublettenprüfung ist.

Zurückgesetzt werden kann die temporäre Dublettenprüfung Feldkonfiguration, wenn NULL anstatt eines Array übergeben wird.

Beispiel:

<?php
 
try {   
    $api     = crmapi::dates();
    $fields  = array('subject', 'body');
    // adding an appointment with identical values in fields "subject" and "body" will result in 
    // an "object already exists" trigger
    $success = $api->setDuplicatecheckConfig($fields);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo ($success === true ? 'override successful' : $success);



1.20. getDuplicatecheckConfig

(Version >= 4.4)

Syntax:

array | string CRMException message getDuplicatecheckConfig( )

Beschreibung:

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

Sollte aktuell keine temporäre Überschreibung der Feldkonfiguration aktiv sein (siehe setDuplicatecheckConfig), wird die durch die Administration konfigurierte Feldliste als Array zurückgegeben.

Beispiel:

<?php
 
try { 
    $api    = crmapi::dates();
    $fields = $api->getDuplicatecheckConfig();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo print_r($fields, true);



1.21. getPermissions

(Version >= 4.5.17365)

Syntax:

array getPermissions( array $appointment_ids ) 

Beschreibung:

Gibt ein assoziatives $objects_permissions array mit den Berechtigungen für die Termine mit den gegebenen $appointment_ids zurück.

Setzt eine Lizenz mit Aktivitätenrechten und aktivierte Aktivitätenrechte für dieses Modul voraus.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $objects_permissions array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Appointment ID
array		   Value                Array mit $permissions array

Eigenschaften von $permissions array:

Type(Length)	   Key                  Value       
-------------------------------------------------------------------------------
array		   user_perm            Array mit $user_permission arrays
array		   group_perm           Array mit $group_permission arrays

Eigenschaften von $user_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  User's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von $group_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Group's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Beispiel:

<?php
 
try {
    $crmapi_dates = crmapi::dates();
 
    $permissions  = $crmapi_dates->getPermissions( array(15, 20, 100) );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
print_r($permissions);



1.22. setPermissions

(Version >= 4.5.17365)

Syntax:

array setPermissions( array $objects_permissions ) 

Beschreibung:

Setzt die Berechtigungen für mehrere Termine

Setzt eine Lizenz mit Aktivitätenrechten und aktivierte Aktivitätenrechte für dieses Modul voraus.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $objects_permissions array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Appointment ID
array		   Value                Array mit $permissions array

Eigenschaften von $permissions array:

Type(Length)	   Key                  Value       
-------------------------------------------------------------------------------
array		   users                Array mit $user_permission arrays
array		   groups               Array mit $group_permission arrays

Eigenschaften von $user_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  User's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von $group_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Group's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Beispiel:

<?php
 
try {
    $crmapi_dates = crmapi::dates();
 
    $permissions = array(
		81941 => array(
			'users'  => array(
				'56' => array('read' => -1, 'write' => -1, 'delete' => -1)
			),
			'groups' => array(
				'4'  => array('read' => -1, 'write' => -1, 'delete' => -1)
			)
		),
		79331 => array(
			'groups' => array(
				'4'  => array('read' => -1, 'write' => -1, 'delete' => -1)
			)
		)
	);
 
    $crmapi_dates->setPermissions($permissions);
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.23. getsearchfilteredAppointments

(Version >= 4.7.20468)

Syntax:

array getsearchfilteredAppointments(int $filter_id, string $search = "", int $count = 0, int $offset = 0, array $fields = false)

Beschreibung:

Gibt ein Array mit Terminen zurück, die dem angegebenen Suchfilter und Suchbegriff entsprechen, limitiert von count und offset.

Der Parameter search repräsentiert die Eingabe im Suchfeld im CRM (Platzhalter <#search_field#> in Filterbedingungen)

Über den Parameter fields können die zurückgegeben Felder eingeschränkt werden (false = alle Felder)

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

Hinweis: Es werden nur Termine und Felder zurückgegeben, für die der authentifizierte Nutzer Leseberechtigungen hat. Felder wie id oder userid brauchen nicht über das $fields Parameter angefordert werden. Sie werden standardmäßig mit zurückgegeben.

Eigenschaften:

Das sind dieselben wie für getAppointment, evtl eingeschränkt nach Parameter fields.

Beispiel:

<?php
 
try {   
	$crmapi_dates = crmapi::dates();
 
	// Liefert die Felder Betreff, Startzeitpunkt und Endzeitpunkt der ersten 10 gefundenen Termine, die dem Suchfilter 5 ohne eingegebenen Suchbegriff entsprechen.
	$result = $crmapi_dates->getsearchfilteredAppointments(5, "", 10, 0, array('subject', 'start', 'stop'));
 
	// Liefert alle Felder aller Termine, die dem Suchfilter 5 mit eingegebenen Suchbegriff "test" entsprechen
	$result = $crmapi_dates->getsearchfilteredAppointments(5, "test", 0, 0, false);
}
catch (CRMException $e) {
	echo $e->getMessage();
}
 
print_r($result);
  • No labels