Der Vorschlag für eine weltübergreifende Standardisierung von CPL wurde im Oktober 2004 gemacht. Damit sollte die Call Processing Language, auch kurz als CPL bezeichnet, vereinheitlicht werden. CPL übernimmt bei der Internet Telefonie die Steuerung der Verarbeitung ankommender Anrufe. CPL sollte von Haus aus nur auf einem Server betrieben werden, auf dem die sich anmeldenden Clients keine Möglichkeit haben, etwas in der Befehlsstruktur verändern zu können. Diese Art der Steuerung ist unabhängig vom jeweiligen Transport- und Verbindungsprotokoll, das heißt, CPL sollte sowohl mit SIP als auch mit H.323 zusammenarbeiten können. Als Grundlage, für die Call Processing Language diente, der XML Standard. CPL besitzt eine sehr klare Strukturierung. Zuerst werden die Top Level Aktionen durchgeführt. Sie werden ausgelöst durch bestimmte Signale, die an den Server übermittelt werden.
Zwei grundlegende Aktionen stehen hier zur Verfügung, die dadurch bestimmt werden, ob es sich um ein eingehendes oder ein ausgehendes Telefonat handelt. Damit stellt CPL einen softwarebasierenden Vermittlungsknoten dar. Eingehende Anrufe werden von CPL an verschiedene Subroutinen übergeben. In diesen Subroutinen entscheidet es sich, was mit dem eingehenden Anruf weiter passiert, ob er in eine Warteschleife gelegt wird oder ob er sofort an einen freien Mitarbeiter weiter gegeben werden kann. Dabei arbeitet CPL mit verschiedenen Filtern. Dort werden bestimmte Parameter gesetzt. Befindet sich der eingehende Anruf innerhalb dieser Grenzwerte, wird die eine Aktion ausgelöst, liegt er außerhalb dieses Bereichs, wird eine andere Aktion initiiert. Einer dieser Parameter könnte zum Beispiel die über einen Counter ermittelte Zahl der freien Mitarbeiter innerhalb eines Callcenters oder die aus der mit dem Anruf übermittelten Rufnummer extrahierte Vorwahl sein.
Dabei bezeichnet man die Stellen, an denen die auf CPL basierende Steuerung der Anrufe Entscheidungen treffen kann, als Switches. Dabei kann eine durch die Softwarevorgaben bestimmte Weiterleitung an einem Switch zum nächsten führen. So lässt sich eine Sortierung eingehender Anrufe vornehmen. Eine besonders gute Entwicklung ist der Switch, der auch mit Teilfeldern arbeiten kann. Das bedeutet in der Praxis, wenn keine der gesetzten Bedingungen vollständig erfüllt werden kann, die Bedingungen in Teilbedingungen zerlegt werden und die weitere Bearbeitung an der Stelle erfolgt, wo die meisten Teilbedingungen erfüllt werden.
Zu den Subentscheidungen, die für die weitere Verarbeitung von Voice over IP Anrufen bei CPL getroffen werden können, gehören auch zeitliche Einordnungen. Damit hat man die Möglichkeiten, zum Beispiel eingehende Telefonate außerhalb der Geschäftszeit auf eine andere Rufnummer umzuleiten, die entweder ein Mitarbeiter mit Rufbereitschaft hat, oder man leitet die Anrufe zu einer automatischen Ansage oder einem Anrufbeantworter um. Sämtliche Zeitangaben bei CPL beruhen auf UTC, der koordinierten Weltzeit, die 1926 als Nachfolger der Standardzeit des Null Meridians geschaffen wurde und die auch als Referenzzeit bezeichnet wird. Für die Übermittlung der für die weitere Bearbeitung erforderlichen Daten sorgt bei CPL der String Switch. Diese Zeichenketten werden im Unicode übermittelt. Sie sind vergleichbar mit den Headern, die bei SIP verwendet werden.