Beispiel PHP Detailabruf

Hier zeigen wir Ihnen exemplarisch, wie Sie eine einfache Webseite erstellen können, die es ermöglicht, das aktuelle Guthaben sowie eine Liste der versendeten Faxe aus Ihrem InterFAX-Account anzuzeigen. Darüber hinaus können Sie spezifische Details zu jedem Fax abrufen. Voraussetzung dafür ist, dass Ihre PHP-Umgebung gemäß unseren Vorgaben mit dem Composer korrekt eingerichtet ist.

1. Die HTML-Seite (index.php)

Auf dieser Seite wird das aktuelle Guthaben und eine Liste der gesendeten Faxe angezeigt. Außerdem können Sie die Details eines Faxes einsehen.

<?php
// Die Interfax-Bibliothek wird eingebunden, um auf die Fax-Schnittstelle zuzugreifen
require_once(‘../interfax-php/vendor/autoload.php’); 

// Verwendung des Interfax-Clients
use Interfax\Client;
 

// Assoziatives Array für die Statuscodes und deren Beschreibung
$statusDescriptions = [
    -11 => ‘Pre-processing’,
    -1  => ‘Pre-processing’,
    -2  => ‘Ready’,
    -3  => ‘Sending (or pending retry)’,
    -22 => ‘Out of credit awaiting topup’,
    0   => ‘OK (Fax successfully sent)’,
    1   => ‘Internal error’,
    130 => ‘Telephony error’,
    132 => ‘Telephony error’,
    263 => ‘Busy’,
    403 => ‘Fax manually canceled’,
    8021 => ‘No answer’,
    9951 => ‘Telephony error’,
    9987 => ‘Telephony error’
];

// Initialisierung des Interfax-Clients mit Ihrem Benutzernamen und Passwort
$client = new Client([‘username’ => ‘BENUTZERNAME’, ‘password’ => ‘PASSWORT’]); 

try {
    // Abrufen des Guthabens
    $balance = $client->getBalance();
 

    // Liste der versendeten Faxe abrufen
    $faxes = $client->outbound->recent();
} catch (Exception $e) {
    echo ‘Fehler: ‘ . $e->getMessage();
}
?>
 

<!DOCTYPE html>
<html lang=”de”>
<head>
    <meta charset=”UTF-8″>
    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>
    <title>Accountübersicht</title>
    <style>
        table {
            border-collapse: collapse;
            width: 100%;
        }
        th, td {
            border: 1px solid black;
            padding: 8px;
            text-align: left;
        }
        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>
    <h2>Accountübersicht</h2>
    <a href=”../index.html”>Zurück zur Startseite</a>


     <!– Guthaben anzeigen –>
    <h3>Versandguthaben</h3>
    <p>Guthaben: <?php echo $balance; ?> €</p>
 

    <!– Liste der versendeten Faxe anzeigen –>
    <h3>Ausgegangene Faxe</h3>
    <table>
        <tr>
            <th>Fax-ID</th>
            <th>Status</th>
            <th>Seitenzahl</th>
            <th>Versanddatum</th>
        </tr>
        <?php foreach ($faxes as $fax) : ?>
            <tr>
                <td><?php echo $fax->id; ?></td>
                <td><?php echo isset($statusDescriptions[$fax->status]) ? $statusDescriptions[$fax->status] : ‘Unknown’; ?></td>
                <td><?php echo $fax

Erklärung der Befehle:

Guthaben und Fax-Informationen abrufen
Der Interfax-Client wird mit Ihrem Benutzernamen und Passwort eingerichtet. Über diesen Client können Sie das aktuelle Guthaben und die Liste der versendeten Faxe abrufen.

Tabelle
In der HTML-Tabelle werden die Fax-ID, der Status, die Seitenzahl und das Versanddatum der Faxe angezeigt. Der Status wird mit Hilfe eines assoziativen Arrays verständlich gemacht, indem der technische Statuscode in eine verständliche Beschreibung umgewandelt wird.

2. PHP-Seite für detaillierte Faxinformationen (get_fax_details.php)

Mit dieser Seite können Sie detaillierte Informationen zu einem bestimmten Fax abrufen, indem Sie die Fax-ID übergeben.

<?php
// Die Interfax-Bibliothek wird eingebunden
require_once(‘../interfax-php/vendor/autoload.php’);
 

// Verwendung des Interfax-Clients
use Interfax\Client;
 

try {
    // Initialisierung des Interfax-Clients
    $client = new Client([‘username’ => ‘BENUTZERNAME’, ‘password’ => ‘PASSWORT’]);

     // Überprüfen, ob die Fax-ID als Parameter übergeben wurde
    if (isset($_GET[‘fax_id’])) {
        $faxId = $_GET[‘fax_id’];
 

        // Abrufen der Faxdetails
        $faxDetails = $client->outbound->find($faxId); 

        if ($faxDetails) {
            // Erfolgreiche Rückgabe der Details als JSON
            header(‘Content-Type: application/json’);
            echo json_encode($faxDetails);
        } else {

            // Fehlermeldung, wenn das Fax nicht gefunden wurde
            echo json_encode([‘error’ => ‘Fax not found’]);
        }
    } else {

        // Fehlermeldung, wenn keine Fax-ID übergeben wurde
        echo json_encode([‘error’ => ‘Fax ID not provided’]);
    }
} catch (Exception $e) {

    // Fehlerbehandlung
    echo json_encode([‘error’ => $e->getMessage()]);
}
?>

Erklärung der Befehle:

$client→outbound→find($faxId);
Hier wird das Fax anhand der übergebenen Fax-ID gefunden und die Details dazu abgerufen.

JSON-Ausgabe
Die Faxinformationen werden im JSON-Format ausgegeben, sodass sie von anderen Programmen weiterverarbeitet werden können. Falls ein Fehler auftritt (z. B. wenn das Fax
nicht gefunden wird), wird eine entsprechende Fehlermeldung ausgegeben.

Zurück zur Übersicht PHP

 

Testen Sie selbst
(Browsersprache muss Englisch sein)