Esempio n. 1
1
 public function testDHL()
 {
     $dhl = config('dhl');
     // Test a getQuote using DHL XML API
     $sample = new GetQuote();
     $sample->SiteID = "DHLMexico";
     $sample->Password = "******";
     // Set values of the request
     $sample->MessageTime = date("c");
     $sample->MessageReference = '1234567890123456789012345678901';
     $sample->BkgDetails->Date = date('Y-m-d');
     $piece = new PieceType();
     $piece->PieceID = 1;
     $piece->Height = 10;
     $piece->Depth = 5;
     $piece->Width = 10;
     $piece->Weight = 10;
     $sample->BkgDetails->addPiece($piece);
     $sample->BkgDetails->IsDutiable = 'N';
     $sample->BkgDetails->ReadyTime = 'PT10H21M';
     $sample->BkgDetails->ReadyTimeGMTOffset = '+01:00';
     $sample->BkgDetails->DimensionUnit = 'CM';
     $sample->BkgDetails->WeightUnit = 'KG';
     $sample->BkgDetails->PaymentCountryCode = 'MX';
     $sample->From->CountryCode = 'MX';
     $sample->From->Postalcode = '15700';
     $sample->From->City = 'DF';
     $sample->To->CountryCode = 'MX';
     $sample->To->Postalcode = '35078';
     $sample->To->City = 'DURANGO';
     // Call DHL XML API
     $start = microtime(true);
     echo $sample->toXML();
     $client = new WebserviceClient('staging');
     $xml = $client->call($sample);
     echo PHP_EOL . 'Executed in ' . (microtime(true) - $start) . ' seconds.' . PHP_EOL;
     echo $xml . PHP_EOL;
     $array_xml = json_decode(json_encode(simplexml_load_string($xml)), true);
     print_r($array_xml);
 }
Esempio n. 2
0
 /**
  * Send a shipment request to DHL
  *
  * @param ShipmentRequest Request to send
  *   
  * @return ShipmentResponse The Shipment response object upon success, false otherwise
  */
 public function sendShipmentRequest(ShipmentRequest $request)
 {
     // Call DHL XML API
     try {
         $xml = $this->_client->call($request);
         $response = new ShipmentResponse();
         $response->initFromXML($xml);
     } catch (\Exception $e) {
         $this->errorMessage = $e->getMessage();
         return false;
     }
     return $response;
 }
while ($testSetCpt <= $testSet) {
    echo PHP_EOL . PHP_EOL . 'Test Sequence ' . $testSetCpt . PHP_EOL . '------------------';
    $values = array('ZPL2', 'EPL2', 'PDF');
    $max = 10;
    $testSetTime[$testSetCpt] = $times;
    $testSetResponse[$testSetCpt] = $responses;
    $times = array();
    $responses = array();
    foreach ($values as $value) {
        $sample->LabelImageFormat = $value;
        // Call DHL XML API
        //    echo $sample->toXML();
        echo PHP_EOL . 'Testing with ' . $value . ' - ' . $max . ' times' . PHP_EOL;
        $cpt = 1;
        while ($cpt <= $max) {
            $startTime = microtime(true);
            $client = new WebserviceClient('staging');
            $response = $client->call($sample);
            $time = microtime(true) - $startTime;
            $xml = simplexml_load_string($response);
            echo 'Waybill number : ' . (string) $xml->AirwayBillNumber . PHP_EOL;
            echo 'Call ' . $cpt . "\t: " . $time . PHP_EOL;
            $times[$value][] = $time;
            $responses[$value][] = $response;
            ++$cpt;
        }
        echo 'Average ' . array_sum($times[$value]) / $max . PHP_EOL;
    }
    ++$testSetCpt;
}
//var_dump($times);
Esempio n. 4
0
 *
 * @author      Al-Fallouji Bashar
 * @version     0.1
 */
use DHL\Entity\GB\RouteRequest;
use DHL\Client\Web as WebserviceClient;
require __DIR__ . '/../../init.php';
// DHL Settings
$dhl = $config['dhl'];
// Test a RouteRequestRequest using DHL XML API
$sample = new RouteRequest();
// Set values of the request
$sample->MessageTime = '2013-08-04T11:28:56.000-08:00';
$sample->MessageReference = '1234567890123456789012345678901';
$sample->SiteID = $dhl['id'];
$sample->Password = $dhl['pass'];
$sample->RegionCode = 'AM';
$sample->RequestType = 'O';
$sample->Address1 = 'Suit 333';
$sample->Address2 = '333 Twin';
$sample->Address3 = '';
$sample->PostalCode = '94089';
$sample->City = 'North Dakhota';
$sample->Division = 'California';
$sample->CountryCode = 'US';
$sample->CountryName = 'United States of America';
$sample->OriginCountryCode = 'US';
// Call DHL XML API
echo $sample->toXML();
$client = new WebserviceClient();
echo $client->call($sample);
Esempio n. 5
0
$piece->PieceID = 1;
$piece->Height = 10;
$piece->Depth = 5;
$piece->Width = 10;
$piece->Weight = 10;
$sample->BkgDetails->addPiece($piece);
$sample->BkgDetails->IsDutiable = 'Y';
$sample->BkgDetails->QtdShp->QtdShpExChrg->SpecialServiceType = 'WY';
$sample->BkgDetails->ReadyTime = 'PT10H21M';
$sample->BkgDetails->ReadyTimeGMTOffset = '+01:00';
$sample->BkgDetails->DimensionUnit = 'CM';
$sample->BkgDetails->WeightUnit = 'KG';
$sample->BkgDetails->PaymentCountryCode = 'CA';
$sample->BkgDetails->IsDutiable = 'Y';
// Request Paperless trade
$sample->BkgDetails->QtdShp->QtdShpExChrg->SpecialServiceType = 'WY';
$sample->From->CountryCode = 'CA';
$sample->From->Postalcode = 'H3E1B6';
$sample->From->City = 'Montreal';
$sample->To->CountryCode = 'CH';
$sample->To->Postalcode = '1226';
$sample->To->City = 'Thonex';
$sample->Dutiable->DeclaredValue = '100.00';
$sample->Dutiable->DeclaredCurrency = 'CHF';
// Call DHL XML API
$start = microtime(true);
echo $sample->toXML();
$client = new WebserviceClient('staging');
$xml = $client->call($sample);
echo PHP_EOL . 'Executed in ' . (microtime(true) - $start) . ' seconds.' . PHP_EOL;
echo $xml . PHP_EOL;
Esempio n. 6
0
 *
 * See the GNU Lesser General Public License for more details.
 */
/**
 * File:        Tracking.php
 * Project:     DHL API
 *
 * @author      Al-Fallouji Bashar
 * @version     0.1
 */
use DHL\Entity\EA\KnownTrackingRequest as Tracking;
use DHL\Client\Web as WebserviceClient;
require __DIR__ . '/../../init.php';
// DHL Settings
$dhl = $config['dhl'];
// Test a tracking request using DHL XML API
$request = new Tracking();
$request->SiteID = $dhl['id'];
$request->Password = $dhl['pass'];
$request->MessageReference = '1234567890123456789012345678';
$request->MessageTime = '2002-06-25T11:28:55-08:00';
$request->LanguageCode = 'en';
$request->AWBNumber = '8564385550';
$request->LevelOfDetails = 'ALL_CHECK_POINTS';
$request->PiecesEnabled = 'S';
echo $request->toXML();
$client = new WebserviceClient();
$xml = $client->call($request);
$result = new DHL\Entity\EA\TrackingResponse();
$result->initFromXML($xml);
echo $result->toXML();