You are here: Fax API > Fax Web Service > Code Samples > PHP Samples > Get information about one or more submitted faxes with FaxStatusEx
PHP Faxing Samples
- Tutorial: Fax from PHP
- Send a simple ASCII-text fax using SendCharFax
- Send one file attachment (e.g., PDF, DOC, HTML) to one recipient with Sendfax
- Fax one or more files to one or more recipients with SendfaxEx_2
- Get information about one or more submitted faxes with FaxStatusEx
- Get information about one or more submitted faxes with FaxQuery
- Get information about one or more submitted faxes with FaxQuery2
- Retrieve the image of a submitted fax with GetFaxImageResult
- Cancel a pending fax with CancelFax
- Inbound: get list of inbound faxes using GetList
- Inbound: retrieve a received fax using GetImageChunk
- Deprecated Samples
Get information about one or more submitted faxes with FaxStatusEx
This sample demonstrates how to retrieve information about a sent fax using the FaxStatusEx method.
<?php /**************** Settings begin **************/ $username = ''; // Enter your Interfax username here $password = ''; // Enter your Interfax password here $last_txid = '999999999'; // Enter the transaction ID for which data // is to be retrieved, or "999999999" for // the most recent transaction(s) $max_items = '10'; // How many transactions to return information for /**************** Settings end ****************/ if($last_txid != '999999999') $last_txid++; // LastTransaction ID needs to be one higher // than the transaction be queried for // Retrieve information from InterFAX $client = new SoapClient('https://ws.interfax.net/dfs.asmx?wsdl'); $params->Username = $username; $params->Password = $password; $params->LastTransactionID = $last_txid; $params->MaxItems = $max_items; $params->TotalCount = ''; $params->ListSize = ''; $params->ResultCode = ''; $queryResult = $client->FaxStatusEx($params); // print_r($queryResult); // Format information retrieved from InterFAX if (0 == $queryResult->ResultCode){ // status request succeeded switch($queryResult->ListSize){ case 0: echo 'No transactions fit query'; break; case 1: // single item returned by WS call echo 'ParentTransactionID: ' . $queryResult->FaxStatusExResult->FaxItemEx->ParentTransactionID . '<br />'; echo 'TransactionID: ' . $queryResult->FaxStatusExResult->FaxItemEx->TransactionID . '<br />'; echo 'SubmitTime: ' . $queryResult->FaxStatusExResult->FaxItemEx->SubmitTime . '<br />'; echo 'CompletionTime: ' . $queryResult->FaxStatusExResult->FaxItemEx->PostponeTime . '<br />'; echo 'CompletionTime: ' . $queryResult->FaxStatusExResult->FaxItemEx->CompletionTime . '<br />'; echo 'UserID: ' . $queryResult->FaxStatusExResult->FaxItemEx->UserID . '<br />'; echo 'Contact: ' . $queryResult->FaxStatusExResult->FaxItemEx->Contact . '<br />'; echo 'DestinationFax: ' . $queryResult->FaxStatusExResult->FaxItemEx->DestinationFax . '<br />'; echo 'ReplyEmail: ' . $queryResult->FaxStatusExResult->FaxItemEx->ReplyEmail . '<br />'; echo 'RemoteCSID: ' . $queryResult->FaxStatusExResult->FaxItemEx->RemoteCSID . '<br />'; echo 'PagesSent: ' . $queryResult->FaxStatusExResult->FaxItemEx->PagesSent . '<br />'; echo 'Status: ' . $queryResult->FaxStatusExResult->FaxItemEx->Status . '<br />'; echo 'Duration: ' . $queryResult->FaxStatusExResult->FaxItemEx->Duration . '<br />'; echo 'Subject: ' . $queryResult->FaxStatusExResult->FaxItemEx->Subject . '<br />'; echo 'PagesSubmitted: ' . $queryResult->FaxStatusExResult->FaxItemEx->PagesSubmitted . '<br />'; echo 'SenderCSID: ' . $queryResult->FaxStatusExResult->FaxItemEx->SenderCSID . '<br />'; echo 'Priority: ' . $queryResult->FaxStatusExResult->FaxItemEx->Priority . '<br />'; echo 'Units: ' . $queryResult->FaxStatusExResult->FaxItemEx->Units . '<br />'; echo 'CostPerUnit: ' . $queryResult->FaxStatusExResult->FaxItemEx->CostPerUnit . '<br />'; echo 'PageSize: ' . $queryResult->FaxStatusExResult->FaxItemEx->PageSize . '<br />'; echo 'PageOrientation: ' . $queryResult->FaxStatusExResult->FaxItemEx->PageOrientation . '<br />'; echo 'PageResolution: ' . $queryResult->FaxStatusExResult->FaxItemEx->PageResolution . '<br />'; echo 'RenderingQuality: ' . $queryResult->FaxStatusExResult->FaxItemEx->RenderingQuality . '<br />'; echo 'PageHeader: ' . $queryResult->FaxStatusExResult->FaxItemEx->PageHeader . '<br />'; echo 'RetriesToPerform: ' . $queryResult->FaxStatusExResult->FaxItemEx->RetriesToPerform . '<br />'; echo 'TrialsPerformed: ' . $queryResult->FaxStatusExResult->FaxItemEx->TrialsPerformed . '<br />'; break; default: // multiple items returned by WS call for($i = 0; $i < $queryResult->ListSize; $i++){ echo 'ParentTransactionID: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->ParentTransactionID . '<br />'; echo 'TransactionID: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->TransactionID . '<br />'; echo 'SubmitTime: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->SubmitTime . '<br />'; echo 'CompletionTime: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PostponeTime . '<br />'; echo 'CompletionTime: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->CompletionTime . '<br />'; echo 'UserID: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->UserID . '<br />'; echo 'Contact: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->Contact . '<br />'; echo 'DestinationFax: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->DestinationFax . '<br />'; echo 'ReplyEmail: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->ReplyEmail . '<br />'; echo 'RemoteCSID: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->RemoteCSID . '<br />'; echo 'PagesSent: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PagesSent . '<br />'; echo 'Status: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->Status . '<br />'; echo 'Duration: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->Duration . '<br />'; echo 'Subject: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->Subject . '<br />'; echo 'PagesSubmitted: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PagesSubmitted . '<br />'; echo 'SenderCSID: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->SenderCSID . '<br />'; echo 'Priority: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->Priority . '<br />'; echo 'Units: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->Units . '<br />'; echo 'CostPerUnit: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->CostPerUnit . '<br />'; echo 'PageSize: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PageSize . '<br />'; echo 'PageOrientation: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PageOrientation . '<br />'; echo 'PageResolution: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PageResolution . '<br />'; echo 'RenderingQuality: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->RenderingQuality . '<br />'; echo 'PageHeader: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->PageHeader . '<br />'; echo 'RetriesToPerform: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->RetriesToPerform . '<br />'; echo 'TrialsPerformed: ' . $queryResult->FaxStatusExResult->FaxItemEx[$i]->TrialsPerformed . '<br />'; echo '------------------------------------<br />'; } // close loop break; } // close switch } else { // problem getting status // Do something here, like alerting an administrator echo 'Problem retrieving status'; } ?>