What is Report PUSH?
If you are currently receiving job reports via email, we now provide the option of having job reports pushed (via HTTP POST) to your Receiver instead.
Attached is a php implementation of a Report Receiver (sampleReportReceiver.php). This script can be run on any php enabled web server. If you already have an HTTP server that is php-enabled, you can POST the attached sampleReport.xml to the receiver to see how it behaves and then model your receiver in similar fashion … or build upon our provided sample.
What if my receiver is offline?
We’ve already considered that possibility! Since nothing is up 100% of the time, and other factors outside of your control may disrupt transmission, we can configure your profile to have an optional back up destination of your choice; which can either be a different receiver URL, an email address, or an ftp site.
What format is this PUSH data?
The data format sent out is XML. If you’ve had experience with our other Push services (Fax, CDR), this is very similar. The actual report that you traditionally receive will be a base64 encoded field within the XML PUSH data. There will also be other data as well so as to provide as much detail as possible. Attached is a sample XML data (sampleReport.xml) as well as the WSDL.
Do I need to use php-based receiver?
Not at all, you can develop in which ever language you wish to build an HTTP POST receiver. We are simply providing one that is written in php that is quick and demonstrates proof of concept, and highlights which fields you may be interested in. Inline comments in the code explain what each step does.
I don’t have a web server and don’t know anything about php.
Note that php can be installed on just about any web server (such as IIS). It does not need to be Apache.
Are there any debugging tools that can you can point me to?
Code development can be done on any IDE. For php, I used NetBeans. We're also fan of WireShark; it allows you to capture traffic on any port. Filter for the specific traffic - perhaps based on originating IP - and you get the raw TCP traffic and headers. Very useful to ensure the lines of communication and handshaking are problem-free.