#/**************** Settings begin **************/ my $username = ''; # Enter your Interfax username here my $password = ''; # Enter your Interfax password here my $verb = "gt"; my $verbData = "1"; my $maxItems = "2"; my $NS = 'http://www.interfax.cc'; #/**************** Settings end ****************/ my $client = SOAP::Lite ->uri($NS) ->on_action( sub { join '/', $NS, $_[1] } ) ->proxy('https://ws.interfax.net/dfs.asmx?WSDL'); my $result = $client ->call(SOAP::Data->name('FaxQuery')->attr({xmlns => $NS}) => SOAP::Data->name('Username')->value($username), SOAP::Data->name('Password')->value($password), SOAP::Data->name('Verb')->value($verb), SOAP::Data->name('VerbData')->value($verbData), SOAP::Data->name('MaxItems')->value($maxItems) ); if ( $result->fault ) { print $result->faultstring . "\n"; } else { if( $result->valueof('//FaxQueryResponse/ResultCode') == 0 ) { my @fax_items = $result->valueof('//FaxQueryResult/*'); print "Displaying information for " . @fax_items . " faxes." . "\n"; for(my $i=0; $i < @fax_items; $i++) { print "Item " . ($i + 1) . "\n"; print " ParentTransactionID=". $fax_items[$i]{'ParentTransactionID'} . "\n"; print " TransactionID=". $fax_items[$i]{'TransactionID'} . "\n"; print " SubmitTime=". $fax_items[$i]{'SubmitTime'} . "\n"; print " PostponeTime=". $fax_items[$i]{'PostponeTime'} . "\n"; print " CompletionTime=". $fax_items[$i]{'CompletionTime'} . "\n"; print " UserID=". $fax_items[$i]{'UserID'} . "\n"; print " DestinationFax=". $fax_items[$i]{'DestinationFax'} . "\n"; print " ReplyEmail=". $fax_items[$i]{'ReplyEmail'} . "\n"; print " RemoteCSID=". $fax_items[$i]{'RemoteCSID'} . "\n" if exists $fax_items[$i]{'RemoteCSID'}; print " PagesSent=". $fax_items[$i]{'PagesSent'} . "\n"; print " Status=". $fax_items[$i]{'Status'} . "\n"; print " Duration=". $fax_items[$i]{'Duration'} . "\n"; print " Subject=". $fax_items[$i]{'Subject'} . "\n" if exists $fax_items[$i]{'Subject'}; print " PagesSubmitted=". $fax_items[$i]{'PagesSubmitted'} . "\n"; print " SenderCSID=". $fax_items[$i]{'SenderCSID'} . "\n"; print " Priority=". $fax_items[$i]{'Priority'} . "\n"; print " Units=". $fax_items[$i]{'Units'} . "\n"; print " CostPerUnit=". $fax_items[$i]{'CostPerUnit'} . "\n"; print " PageSize=". $fax_items[$i]{'PageSize'} . "\n"; print " PageOrientation=". $fax_items[$i]{'PageOrientation'} . "\n"; print " PageResolution=". $fax_items[$i]{'PageResolution'} . "\n"; print " RenderingQuality=". $fax_items[$i]{'RenderingQuality'} . "\n"; print " PageHeader=". $fax_items[$i]{'PageHeader'} . "\n" if exists $fax_items[$i]{'PageHeader'}; print " RetriesToPerform=". $fax_items[$i]{'RetriesToPerform'} . "\n"; print " TrialsPerformed=". $fax_items[$i]{'TrialsPerformed'} . "\n"; } } else { print "Error, return code=" . $result->valueof('//FaxQueryResponse/ResultCode') . "\n"; } }