Export seznamu zásilek pro dopravce (SOAP)
Účel článku
Zdokumentování
exportu seznamu zásilek pro dopravce a
odeslání potvrzení jejich převzetí pomocí web services. Z pohledu CIBS se jedná o seznam zásilek s uzavřenou expedicí. Podrobná referenční dokumentace je k dispozici v
referenčním popisu rozhraní CIBS WSDL.
Registrované metody
Seznam registrovaných metod s referenčním popisem je k dispozici na
https://is.cibs.cz/ws_cibs.php.
Metoda |
Popis |
ws_session_login |
přihlášení operátora |
ws_session_logout |
odhlášení operátora |
ws_session_set_ct |
nastavení lokace |
ws_ts_export_transport_items |
export seznamu zásilek |
ws_ts_export_confirm |
potvrzení převzetí zásilky |
Posloupnost volání metod
Pro obě funkcionality je nutné se nejprve přihlásit do CIBS (
ws_session_login
) a nastavit číslo lokace (
ws_session_set_ct
). Poté je teprve možné zavolat příslušnou metodu (
ws_ts_export_transport_items
resp.
ws_ts_export_confirm
). Po zpracování výsledků je třeba provést odhlášení operátora (
ws_session_logout
).
Příklad použití metod v php skriptu:
<?php
require_once 'libs/nusoap/nusoap.php';
$login = 'jmeno'; // jméno
$password = 'heslo'; // heslo
$host = 'https://adresa/ws_cibs.php?wsdl '; // url
$ct = N; // číslo lokace
$client = new nusoap_client($host);
$err = $client->getError();
if ($err) {
echo '<p><b>Constructor error: ' . $err . '</b></p>';
}
function ws_simple_call($client, $method, $input) {
$res = $client->call($method, $input);
if ($client->fault) {
echo "<p><b>$method - fault: ";
print_r($res);
echo '</b></p>';
$res = false;
} else {
$err = $client->getError();
if ($err) {
echo "<p><b>$method - error: $err</b></p>";
$res = false;
} else {
echo "<p><b>$method - result: $res</b></p>";
}
}
return $res;
}
function export_items($client, $session) {
$r = ws_simple_call($client, 'ws_ts_export_transport_items', array('session' => $session, 'ts_id' => $_GET['ts_id']));
}
function export_confirm($client, $session) {
$r = ws_simple_call($client, 'ws_ts_export_confirm', array('session' => $session, 'ti_id' => $_GET['ti_id']));
}
$session = ws_simple_call($client, 'ws_session_login', array('login' => $login, 'password' => $password));
if ($session) {
$r = ws_simple_call($client, 'ws_session_set_ct', array('session' => $session, 'ct' => $ct));
if (!empty($_GET['ts_id'])) {
export_items($client, $session);
}
if (!empty($_GET['ti_id'])) {
export_confirm($client, $session);
}
$r = ws_simple_call($client, 'ws_session_logout', array('session' => $session));
}
?>
PHP skriptu je třeba předat následující parametry:
Práva a nastavení:
Název |
Účel |
Popis |
Hodnoty |
TRANSPORT.EXPORT_ITEMS |
nastavení operátora |
povoluje operátorovi provádět export zásilek pro konkrétního dopravce |
id dopravce |
TRANSPORT.CONFIRM_ITEMS |
nastavení operátora |
povoluje operátorovi provádět potvrzení převzetí zásilky pro konkrétního dopravce |
id dopravce |
Seznam zásilek
Seznam zásilek je v odpovědi metody
ws_ts_export_transport_items
ve formátu XML. Obsahuje následující elementy:
Element |
Význam |
items |
seznam zásilek |
item |
zásilka |
expedition_id |
id zásilky |
company |
název společnosti – pokud je zákazník evidován v CIBS jako společnost |
user_name |
jméno zákazníka |
phone |
telefonní číslo s mezinárodním prefixem |
house_num |
číslo popisné / orientační |
street |
ulice |
city |
obec |
zip |
PSČ |
weight |
hmotnost zásilky v gramech |
delivery_date |
datum a čas předpokládaného doručení |
Příklad seznamu zásilek
<items>
<item>
<expedition_id>18</expedition_id>
<company></company>
<user_name>Karel Novák</user_name>
<phone>420123456789</phone>
<house_num>2/2</house_num>
<street>1. prosince</street>
<city>Praha</city>
<zip>11000</zip>
<weight>1100</weight>
<delivery_date>25.01.2012 08:40</delivery_date>
</item>
</items>
Odkaz na interní dokumentaci.
Zpět na: