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=dates&wsdl

e.g. https://test.tecart-system.de/soap/index.php?op=dates&wsdl

2. Methoden

2.1. crmgetAppointment

(Version >= 3.4.5121)

Syntax:

array crmgetAppointment( string $session_id, int $appointment_id )

Beschreibung:

Gibt ein Array mit appointment Objekte anhand der ID zurück.

Eigenschaften der zurückgegebenen appointment Objekte:

Type(Length)            Eigenschaft                   Beschreibung
---------------------------------------------------------------------------------------------
int                     $id                       Appointment-Id
int                     $ext_id                   Externe ID ( ab Version 4.2 )
int                     $start                    Startzeit (Unix-Timestamp)
int                     $stop                     Endzeit (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(255)             $cname                    Kontakt-Name 
string(255)             $userid                   Userids (Format: User-Id1:User-Id2) 
int                     $pid                      Projekt-Id 
int                     $ticket_id                Ticket-Id ( ab Version >= 4.1 )
int                     $orderid                  Auftrag-Id ( ab Version 4.2 )
string(255)             $pname                    Projekt-Name
boolean                 $day                      Ganztägiger Termin (0 = nicht ganztägig, 1 = ganztägig)
int                     $rem                      Erinnerung
                                                  0 = nicht erinnern
                                                  1 = erinnern
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 abgeschlossen
                                                  0 = offen
                                                  1 = abgeschlossen
string(255)             $forward                  Userids für die 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                  Serietermin-Interval (z.B. 2) 
int                     $serieend                 Unix-Timestamp des Serienendes ( ab Version 3.7 )
string(255)             $seen                     Userids die diesen Termin gesehen haben
                                                  Format: Userid1:Userid2
string(255)             $category                 Kategorien, Format: Category1; Category2; ... 
string(7)               $caption                  Beschriftung ( ab Version >= 4.3 )
int                     $rem                      Erinnerung
                                                  0 = nicht erinnern
                                                  1 = erinnern
int                     $remember                 Anzahl von Sekunden, vor Stoppzeit

int                     $serie_type               $serie == 1 ? 1 = täglich, 2 = jeden Werktag
                                                  $serie == 2 ? 2
                                                  $serie == 3 ? 1 = Tag und Monat, 2 = Intervall
                                                  $serie == 4 ? 1 = Tag und Monat, 2 = Intervall  
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 = binary bitmask
                                                  Sonntag    = 01000000  (64)
                                                  Montag     = 00100000  (32)
                                                  Dienstag   = 00010000  (16)
                                                  Mittwoch   = 00001000  (8)
                                                  Donnerstag = 00000100  (4)
                                                  Freitag    = 00000010  (2)
                                                  Samstag    = 00000001  (1)

                                                  Wählen Sie beispielsweise Mittwoch UND 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              Anzahl der Ereignisse
int                     $end_type                 3 = an bestimmten Datum enden, 2 = Ende nach bestimmten Anzahl von Ereignissen, 1 = open end
int                     $serie_parent             id des Elternobjekts, 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                   $crmUserConfirmedElements Array von crmUserConfirmedElement Objekte
array                   $crmAppointmentContacts   Array von crmAppointmentContact Objekte

int                     $chguser                  Userid der letzten Änderung
int                     $chgtime                  Unix-Timestamp der letzten Änderung
int                     $createuser               Userid der Erstellung
int                     $createtime               Unix-Timestamp der Erstellung

Eigenschaften von crmUserConfirmedElement:

Type(Length)            Eigenschaft                   Beschreibung
---------------------------------------------------------------------------------------------
int                     $userid                   Userid 
boolean                 $confirmed                Termin für diesen Benutzer bestätigt
                                                  0 = nicht bestätigt
                                                  1 = bestätigt

Eigenschaften von crmAppointmentContact:

Type(Length)            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 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 Geschäftlich 
string(128)             $phone_home               Telefonnummer Privat 
string(128)             $phone_fax                Faxnummer Geschäftlich
string(128)             $phone_pager              Pagernummer
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
string                  $picture                  Kontakt-Bild-Daten - base64-kodiert
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
 
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_dates = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=dates&wsdl");
 
   //Get Appointments with ID 32
   $result = $client_dates->crmgetAppointment($session_id, 32);
 
   foreach($result as $appointment) {
 
       echo date("H:i:s", $appointment->start)." ".$appointment->subject." ";
 
       if (isset($appointment->crmAppointmentContacts)) {
 
           foreach($appointment->crmAppointmentContacts as $contact) {
               echo $contact->firstname." ".$contact->lastname."; ";
           }
 
       }
 
       echo "<br>";
 
   }
}
catch (SOAPFault $f) {
  print $f->faultstring;
}




2.2. crmgetAppointments

Syntax:

array crmgetAppointments( string $session_id, int $userid, int $day, int $month, int $year )

Beschreibung:

Gibt ein Array mit appointment Objekte zurück.

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 gesetzt ist, werden nur Termine von diesem Tag zurückgegeben. Setzen Sie ihn auf 0, um alle Tage zu bekommen.

Wenn month gesetzt ist, werden nur Termine von diesem Monat zurückgegeben. Setzen Sie ihn auf 0, um alle Monate zu bekommen.

Wenn year gesetzt ist, werden nur Termine von diesem Jahr zurückgegeben.

Eigenschaften der zurückgegebenen appointment Objekte:

selben Eigenschaften wie für crmgetAppointment beschrieben.

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_dates = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=dates&wsdl");
 
   //Get Appointments for 2007-03-26
   $result = $client_dates->crmgetAppointments($session_id, 0, 26, 3, 2007);
 
   foreach($result as $appointment) {
 
       echo date("H:i:s", $appointment->start)." ".$appointment->subject." ";
 
       if (isset($appointment->crmAppointmentContacts)) {
 
           foreach($appointment->crmAppointmentContacts as $contact) {
               echo $contact->firstname." ".$contact->lastname."; ";
           }
 
       }
 
       echo "<br>";
 
   }
}
catch (SOAPFault $f) {
  print $f->faultstring;
}




2.3. crmgetAppointmentsFrom

Syntax:

array crmgetAppointmentsFrom( string $session_id, int $userid, int $day, int $month, int $year )

Beschreibung:

Gibt ein Array von Appointment-Objekten vom angegebenen Datum bis heute zurück.

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 gesetzt ist, werden nur Termine von diesem Tag zurückgegeben. Setzen Sie ihn auf 0, um alle Tage zu bekommen.

Wenn month gesetzt ist, werden nur Termine von diesem Monat zurückgegeben. Setzen Sie ihn auf 0, um alle Monate zu bekommen.

Wenn year gesetzt ist, werden nur Termine von diesem Jahr zurückgegeben. Setzen Sie ihn auf 0, um alle Jahr zu bekommen.

Eigenschaften der zurückgegebenen appointment Objekte:

sind die selben wie für crmgetAppointment


2.4. crmgetAppointmentsFromList

(Version >= 3.4.5130)

Syntax:

array crmgetAppointmentsFromList( string $session_id, int $userid, int $start )

Beschreibung:

Gibt ein Array mit List von Appointment-Objekten vom einem User, die seit start beginnen und bis in 4 Jahre beenden.

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.

start ist Unix-Time.

Eigenschaften der zurückgegebenen Objekte:

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
 
//Get all appointments of user with ID = 4, which start at 29.11.2011 00:00:00 and stop until 29.15.2011 00:00:00
$result = $client_dates->crmgetAppointmentsFromList($session_id, 4, 1322521200);
 
foreach($result as $appointment) {
   
     $chgtime  = date("d.m.Y - H:i:s", $appointment->chgtime);
 
   echo "{$appointment->id} - {$chgtime} {$appointment->useen}<br>";
 
}



2.5. crmgetChangedAppointmentsList

(Version >= 3.4.5132)

Syntax:

array crmgetChangedAppointmentsList( string $session_id, int $userid, int $timestamp )

Beschreibung:

Gibt ein Array mit List von Appointment-Objekten vom einem User, die seit timestamp geändert wurden.

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.

timestamp ist Unix-Time.

Eigenschaften der zurückgegebenen Objekte:

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
 
//Get all appointments of user with ID = 4, which have changed since  29.11.2011 00:00:00 
$result = $client_dates->crmgetChangedAppointmentsList($session_id, 4, 1322521200);
 
foreach($result as $appointment) {
   
     $chgtime  = date("d.m.Y - H:i:s", $appointment->chgtime);
 
   echo "{$appointment->id} - {$chgtime} {$appointment->useen}<br>";
 
}



2.6. crmgetAppointmentsPeriod

(Version >= 3.1.2647)

Syntax:

array crmgetAppointmentsPeriod( string $session_id, int $userid, int $start, int $stop )

Beschreibung:

Gibt ein Array mit appointment Objekte von dem gegebenen Zeitraum zurück.

Wenn userid gegeben ist, werden die Termine dieses Benutzers nur zurückgegeben, wenn der authentifizierte Benutzer die Berechtigung zum Lesen hat. Wenn userid auf 0 gesetzt ist, werden die Termine des authentifizierten Benutzer zurückgegeben.

start ist der unix timestamp des Beginns des Zeitraums.

stop ist der unix timestamp des Endes des Zeitraums.

Eigenschaften der zurückgegebenen appointment Objekte:

sind die selben wie für crmgetAppointment

Beispiel:

<?php
 
$result = $client_dates->crmgetAppointmentsPeriod($session_id, 0, time() - (86400 * 30), time() + (86400 * 30));
 
foreach($result 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>";
 
}




2.7. crmgetChangedAppointments

Syntax:

array crmgetChangedAppointments( string $session_id, int $userid, int $timestamp )

Beschreibung:

Gibt ein Array mit appointment Objekte zurück, die seit timestamp geändert wurden.

Wenn userid gegeben ist, werden die Termine dieses Benutzers nur zurückgegeben, wenn der authentifizierte Benutzer die Berechtigung zum Lesen hat. Wenn userid auf 0 gesetzt ist, werden die Termine des authentifizierten Benutzer zurückgegeben.

Eigenschaften von returned appointment Objekte:

sind die selben wie für crmgetAppointment

zusätzliche Eigenschaften zu crmgetAppointment:

Type(Length) Eigenschaft Beschreibung


array $crmSeriesExceptions Array von Appointment Objekten (Eigenschaften wie crmgetAppointment)

                                                    (ausgegliederte oder gelöschte Serien-Elemente)

Beispiel:

<?php
 
$result = $client_dates->crmgetChangedAppointments($session_id, 0, 1174670365);
 
foreach($result as $appointment) {
   
     $start = date("H:i:s", $appointment->start);
     $stop  = date("H:i:s", $appointment->stop);
 
   echo "{$start} - {$stop} {$appointment->subject}<br>";
 
}




2.8. crmgetChangedAppointmentsLimit

(Version >= 3.0.1549)

Syntax:

array crmgetChangedAppointmentsLimit( string $session_id, int $userid, int $timestamp, int $count, int $offset )

Beschreibung:

Liefert ein Array mit appointment Objekte die seit timestamp geändert wurden, limitiert von $count und $offset.

Wenn userid gegeben ist, werden die Termine dieses Benutzers nur zurückgegeben, wenn der authentifizierte Benutzer die Berechtigung zum Lesen hat. Wenn userid auf 0 gesetzt ist, werden die Termine des authentifizierten Benutzer zurückgegeben.

Eigenschaften von returned appointment Objekte:

sind die selben wie für crmgetChangedAppointments

Beispiel:

<?php
 
$result = $client_dates->crmgetChangedAppointmentsLimit($session_id, 0, 1174670365, 10, 20);
 
foreach($result as $appointment) {
   
     $start = date("H:i:s", $appointment->start);
     $stop  = date("H:i:s", $appointment->stop);
 
   echo "{$start} - {$stop} {$appointment->subject}<br>";
 
}



2.9. crmaddAppointment

Syntax:

int crmaddAppointment( string $session_id, crmAppointmentItem $crmAppointmentItem )

Beschreibung:

Fügt einen Termin hinzu.

Gibt eine appointment_id bei Erfolg zurück, 0 bei einem Fehler, -1 wenn der Termin existiert.

crmAppointmentItem kann ein assoziatives Array oder ein Objekt sein.

Zum Zuweisen von Kontakten müssen Sie die Kontakt-IDs oder einige Eigenschaften des Kontakts in crmTaskItemContacts angeben, das System erledigt den Rest.

Eigenschaften von crmAppointmentItem:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $start                    Startzeit (Unix-Timestamp)
int                     $stop                     Endzeit (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(255)             $userid                   Userids (Format: User-Id1:User-Id2) 
int                     $confirmed                Termin bestätigt vom aktuellen Nutzer
                                                  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 = ganztägig)
int                     $rem                      Erinnerung
                                                  0 = nicht erinnern
                                                  1 = erinnern
int                     $remember                 Anzahl von Sekunden, vor Stoppzeit
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 abgeschlossen
                                                  0 = offen
                                                  1 = abgeschlossen
int                     $serie                    Serientermin
                                                  1 = täglich
                                                  2 = wöchentlich
                                                  3 = monatlich
                                                  4 = jährlich
int                     $intrval                  Serietermin-Interval (z.B. 2) 
int                     $serieend                 Unix-Timestamp des Serienendes
string(255)             $category                 Kategorien, Format: Category1; Category2; ... 
string(7)               $caption                  Beschriftung ( ab Version >= 4.3 )

array                   $crmAppointmentItemContacts Array mit crmAppointmentItemContact Objekte

Eigenschaften von crmAppointmentItemContact:

Type(Length)            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 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 Geschäftlich 
string(128)             $phone_home               Telefonnummer Privat 
string(128)             $phone_fax                Faxnummer Geschäftlich
string(128)             $phone_pager              Pagernummer
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 1:

<?php
$appointment = array(
	'start'        => 1178006400,
  	'stop'         => 1178022600,
    'day'          => 0,
    'subject'      => 'webservicetest',
    '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,
    'crmAppointmentItemContacts' => array(
		array(
			'firstname' => 'Christian',
            'lastname'  => 'Friebel',
            'emailadr1' => 'xray@xatec.de'
		),
        array(
			'firstname' => 'Thomas',
            'lastname'  => 'Friebel'
		)
	)
);
 
$app_id = $client_dates->crmaddAppointment($session_id, $appointment);
echo $app_id."<br>\n";



Beispiel 2:

<?php
 
class appointment {
   
     public $start   = 0;
     public $stop    = 0;
     public $subject = //;//
     public $day     = 0;
   
     function __construct($start, $stop, $subject)
     {
         $this->subject = $subject;
         $this->start   = $start;
         $this->stop    = $stop;
     }
 
}
 
$start = mktime(12, 0, 0, 5, 31, 2007);
$stop  = mktime(14, 0, 0, 5, 31, 2007);
 
// Create an appointment for 2007-05-31 from 12:00 to 14:00
$appointment = new appointment($start, $stop, 'WebServiceTest');
 
$app_id = $client_dates->crmaddAppointment($session_id, $appointment);
echo $app_id."<br>\n";




2.10. crmaddAppointments

Syntax:

boolean crmaddAppointments( string $session_id, crmAppointmentsItems $crmAppointmentsItems )

Beschreibung:

Fügt mehrere Termine mit einem Methoden-Aufruf hinzu.

Gibt 1 bei Erfolg zurück, 0 bei einem Fehler, -1 wenn der Termin existiert.

Eigenschaften von crmAppointmentsItems:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
crmAppointmentItems     $crmAppointmentItems      Array mit crmAppointmentItem Objekte

Beispiel 1:

<?php
$appointment1 = array(
	'start'        => mktime(16, 0, 0, 12, 10, 2007),
  	'stop'         => mktime(17, 0, 0, 12, 10, 2007),
    'day'          => 0,
    'subject'      => 'Appointment 1',
    '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('crmAppointmentItems' => array($appointment1, $appointment2));
 
$success = $client_dates->crmaddAppointments($session_id, $appointments);
 
if (!$success) echo "Error adding appointments.";
else           echo "Appointments added successfully.";




2.11. crmchangeAppointment

Syntax:

int crmchangeAppointment( string $session_id, int $appointment_id, crmAppointmentItem $crmAppointmentItem )

Beschreibung:

Ändert Eigenschaften eines vorhandenen Termins.

Liefert die appointment_id bei Erfolg, 0 bei Fehler.

crmAppointmentItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften von crmAppointmentItem:

sind die selben wie für crmaddAppointment

Beispiel:

<?php
 
$appointment['subject'] = 'WebServiceTest changed';
 
$app_id = $client_dates->crmchangeAppointment($session_id, $app_id, $appointment);
echo $app_id."<br>\n";




2.12. crmchangeAppointments

Syntax:

boolean crmchangeAppointments( string $session_id, crmAppointmentsItems $crmAppointmentsItems )

Beschreibung:

Ändert Eigenschaften vorhandener Termine.

Liefert 1 bei Erfolg, 0 bei Fehler.

Eigenschaften von crmAppointmentsItems:

sind die selben wie für crmaddAppointments

Beispiel:

<?php
 
$appointment1 = array(
	'id'           => 25213,
  	'subject'      => 'Appointment 1 changed',
    'body'         => 'this is a changed test'
);
 
$appointment2 = array(
	'id'           => 25217,
  	'start'        => mktime(18, 0, 0, 12, 10, 2007),
    'subject'      => 'Appointment 2 changed'
);
 
$appointments = array('crmAppointmentItems' => array($appointment1, $appointment2));
 
$success = $client_dates->crmchangeAppointments($session_id, $appointments);




2.13. crmdeleteAppointment

Syntax:

boolean crmdeleteAppointment( string $session_id, int $appointment_id )

Beschreibung:

Löscht einen Termin. Gibt 1 bei Erfolg zurück, 0 bei Fehler.

Beispiel:

<?php
 
$success = $client_dates->crmdeleteAppointment($session_id, $app_id);

if (!$success) {
	echo "Unable to delete appointment.";
}




2.14. crmdeleteAppointments

Syntax:

boolean crmdeleteAppointments( string $session_id, string $appointment_ids )

Beschreibung:

Löscht Termine. Liefert 1 bei Erfolg, 0 bei einem Fehler.

appointment_ids ist eine Doppelpunkt-getrennter String mit Termins IDs.

Beispiel:

<?php
 
$app_ids = "20132:45231:23623";
 
$success = $client_dates->crmdeleteAppointments($session_id, $app_ids);

if (!$success) {
	echo "Unable to delete appointments.";
}




2.15. crmgetAppointmentIds

Syntax:

array crmgetAppointmentIds( string $session_id, int $userid, int $timestamp )

Beschreibung:

Liefert ein Array mit appointment Objekte die seit timestamp geändert wurden.

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 der zurückgegebenen appointment Objekte:

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

Beispiel:

<?php
 
$result = $client_dates->crmgetAppointmentIds($session_id, 0, 0);
 
foreach($result as $appointment) {
   
     echo $appointment->id."<br>  ";
 
}




2.16. crmgetAppointmentIdsString

(Version >= 3.0.1549)

Syntax:

string crmgetAppointmentIdsString( string $session_id, int $userid, int $timestamp )

Beschreibung:

Liefert eine Liste mit appointment ids die seit timestamp geändert wurden als Doppelpunkt-getrennten String zurück.

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.

Beispiel:

<?php
 
$result = $client_dates->crmgetAppointmentIdsString($session_id, 0, 0);
 
$app_ids = explode(":", $result);
 
foreach($app_ids as $app_id) {
   
     echo $app_id."<br>  ";
 
}
 




2.17. crmsetReadFlag

(Version >= 3.4.5133)

Syntax:

string crmsetReadFlag( string $session_id, int $app_id, int $flag )

Beschreibung:

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

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

Wirft eine CRMException im Fehlerfall. Gib 1 beim Erfolg zurück.

Beispiel:

<?php
 
try {
  	// Set read-flag for appointment with id = 3
    $result = $client_dates->crmsetReadFlag($session_id, 3, 1);
}
catch (SOAPFault $f) {
	print $f->faultstring;
}
 
if ($result == 1) {
  	echo 'successed';
}




2.18. crmgetIdByExtId

(Version >= 4.2)

Syntax:

array crmgetIdByExtId( string $session_id, int $ext_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 der zurückgegebenen appointment Objekte:

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

Beispiel:

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




2.19. crmgetAllExtIds

(Version >= 4.2)

Syntax:

array crmgetAllExtIds( string $session_id )

Beschreibung

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

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

Eigenschaften der zurückgegebenen appointment Objekte:

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

Beispiel:

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




2.20. 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_dates = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=dates&wsdl");
 
   $fields  = array('fields' => implode(',', array('subject', 'body')) );
   $success = $client_dates->crmsetDuplicateConfig($session_id, $fields);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
echo ($success == 1 ? 'override successful' : $success);




2.21. 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 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_dates = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=dates&wsdl");
 
   	$fields = $client_dates->crmgetDuplicateConfig($session_id);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
$fields = explode(',', $fields);
echo print_r($fields, true);




2.22. crmgetPermissions

(Version >= 4.5.17365)

Syntax:

array crmgetPermissions( string $session_id, string $appointment_ids ) 

Beschreibung:

Gibt ein Array mit Elementen des Typs crmPermission 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.

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

appointment_ids ist eine mit Doppelpunkt getrennte Liste der IDs der Termine.

Eigenschaften von crmPermission:

Type(Length)	  Eigenschaft                    Beschreibung
-------------------------------------------------------------------------------
int               $id                            Appointment ID
array             $crmUserPermissionElements     Array mit crmUserPermissionElement Objekte
array             $crmGroupPermissionElements    Array mit crmGroupPermissionElement Objekte

Eigenschaften von crmUserPermissionElement:

Type(Length)      Eigenschaft                    Beschreibung
---------------------------------------------------------------------------------------
int               $id                            Userid
int               $read                          1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                         1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von crmGroupPermissionElement:

Type(Length)      Eigenschaft                    Beschreibung
---------------------------------------------------------------------------------------
int               $id                            Groupid
int               $read                          1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                         1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert 

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");
  	$client_dates = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=dates&wsdl");
  	$session_id   = $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}

	$result = $client_dates→crmgetPermissions($session_id, '81941:79331');

  	print_r($result);
} 
catch (SOAPFault $f) {

  	print $f->faultstring;
}



2.23. crmsetPermissions

(Version >= 4.5.17365)

Syntax:

array crmsetPermissions( string $session_id, array $crmPermissions ) 

Beschreibung:

Setzt die Berechtigungen für mehrere Termine.

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

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

crmPermissions ist ein Array mit crmPermission Objekten.

Eigenschaften von crmPermission:

Type(Length)	  Eigenschaft                    Beschreibung
-------------------------------------------------------------------------------
int               $id                            Appointment ID
array             $crmUserPermissionElements     Array mit crmUserPermissionElement Objekte
array             $crmGroupPermissionElements    Array mit crmGroupPermissionElement Objekte

Eigenschaften von crmUserPermissionElement:

Type(Length)      Eigenschaft                    Beschreibung
---------------------------------------------------------------------------------------
int               $id                            Userid
int               $read                          1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                         1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von crmGroupPermissionElement:

Type(Length)      Eigenschaft                    Beschreibung
---------------------------------------------------------------------------------------
int               $id                            Groupid
int               $read                          1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                         1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert 

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");
  	$client_dates = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=dates&wsdl");
  	$session_id   = $client_logon->crmLogin('test', 'test');
	if (!$session_id) {
		die("invalid login");
	}

	$permissions = array(
		array(
			'id'						=> 81941, 
			'crmUserPermissionElements'	=> array(
				array(
					'id'		=> 56, 
					'read'		=> 1, 
					'write'		=> 1, 
					'delete'	=> 1
				)
			), 
			'crmGroupPermissionElements' => array(
				array(
					'id'		=> 4, 
					'read'		=> -1, 
					'write'		=> -1, 
					'delete'	=> -1
				)
			)
		),
		array(
			'id'						 => 79331, 
			'crmGroupPermissionElements' => array(
				array(
					'id'		=> 4, 
					'read'		=> 1, 
					'write'		=> 1, 
					'delete'	=> 1
				),
				array(
					'id'		=> 6,
					'read'		=> -1, 
					'write'		=> -1, 
					'delete'	=> -1
				)
			)
		)
	);

  	$client_dates->crmsetPermissions($session_id, array('crmPermissions' => $permissions));

} 
catch (SOAPFault $f) {

  print $f->faultstring;
}



  • No labels