60 | | {{{ |
61 | | #!php |
62 | | |
63 | | // Plik MyService.php umieszczony w apps/edokumenty. |
64 | | // MyService.php |
65 | | <?php |
66 | | // stałe są w confing.inc i są to dane potrzebne do autentykacji usługi |
67 | | require_once('./../../framework/lib/util/Translator/Translator.inc'); |
68 | | require_once('./config.inc'); |
69 | | |
70 | | // klient SOAP systemu eDokumenty wysyłający nagłówki WSSecurity zmienić na |
71 | | // odpowiednią ścieżkę w zależności od lokalizacji pliku MyService.php |
72 | | require_once('./classes/eDokumentyApi/EDokApiClient.inc'); |
73 | | |
74 | | // wartość {host}:{port} zmienić na odpowiednią dla serwera |
75 | | $ops = array( |
76 | | 'location' => 'http://{host}:{port}eDokumentyApi.php', |
77 | | "uri" => "eDokumentyAPI", |
78 | | 'encoding'=>'UTF-8' |
79 | | ); |
80 | | |
81 | | |
82 | | // Dodatkowo od wersji 3.3 autentykacja nie wymaga nadpisania klienta Soap. Wystarczy do url z adresem serwisu dodać parametry GET w postaci |
83 | | // a1 - login, |
84 | | // a2 - hasło, |
85 | | // a3 - symbol jednostki |
86 | | /* |
87 | | $ops = array( |
88 | | 'location' => 'http://{host}:{port}eDokumentyApi.php?a1='.EDOK_API_LOGIN.'&a2='.md5(md5(EDOK_API_PASSWORD).'_SOAP_eDok_api').'&a3='.DEFAULT_ENTITY_SYMBOL.'', |
89 | | "uri" => "eDokumentyAPI", |
90 | | 'encoding'=>'UTF-8' |
91 | | ); |
92 | | |
93 | | // bezpośrednie wywołanie klienta Soap |
94 | | $client = new SoapClient(NULL, $ops); |
95 | | */ |
96 | | $client = new EDokApiClient(null, $ops); |
97 | | $client->setUser(EDOK_API_LOGIN); // ten sam co w config.inc |
98 | | $client->setPass(md5(EDOK_API_PASSWORD)); // to samo co w config.inc |
99 | | |
100 | | $header = new SoapHeader('eDokumentyAPI', 'entity_symbol', DEFAULT_ENTITY_SYMBOL); |
101 | | $client->__setSoapHeaders($header); |
102 | | |
103 | | // Tworzy kontakt |
104 | | $contid = NULL; |
105 | | |
106 | | try { |
107 | | $data = array( |
108 | | 'name_1' => 'SOAP TEST'.date('d H:m:s'), |
109 | | 'name_2' => 'SOAPTEST', |
110 | | 'nip___' => 1111111111, |
111 | | 'street' => 'Główna', |
112 | | 'symbol' => 'FGH99' |
113 | | ); |
114 | | $contid = $client->createContact($data); |
115 | | var_dump($contid); |
116 | | |
117 | | } catch(SoapFault $fault) { |
118 | | |
119 | | var_dump($fault); |
120 | | |
121 | | if ($fault->faultcode < 100) { |
122 | | trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR); |
123 | | } |
124 | | } |
125 | | |
126 | | ?> |
127 | | }}} |