Ben web servislerle yeni çalışmaya başladım ve bir firma için web servis ile fax gönderen program yapmaya çalışıyorum (Delphi 2010'da).
Şimdi bana verilen web servisin adresi burda
Kod: Tümünü seç
http://webservices.venali.net/fax/1.0/faxservice.asmx?WSDL
Hatta burdan vereyim dosyanın içeriğini :::)
Kod: Tümünü seç
// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL : http://webservices.venali.net/fax/1.0/faxservice.asmx?WSDL
// >Import : http://webservices.venali.net/fax/1.0/faxservice.asmx?WSDL>0
// Encoding : utf-8
// Version : 1.0
// (26.03.2010 11:45:52 - - $Rev: 25127 $)
// ************************************************************************ //
unit faxservice;
interface
uses InvokeRegistry, SOAPHTTPClient, Types, XSBuiltIns;
const
IS_OPTN = $0001;
IS_UNBD = $0002;
IS_NLBL = $0004;
IS_REF = $0080;
type
// ************************************************************************ //
// The following types, referred to in the WSDL document are not being represented
// in this file. They are either aliases[@] of other types represented or were referred
// to but never[!] declared in the document. The types from the latter category
// typically map to predefined/known XML or Embarcadero types; however, they could also
// indicate incorrect WSDL documents that failed to declare or import a schema type.
// ************************************************************************ //
// !:string - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:boolean - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:base64Binary - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:dateTime - "http://www.w3.org/2001/XMLSchema"[Gbl]
// !:int - "http://www.w3.org/2001/XMLSchema"[Gbl]
Outbound = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
OutboundRecipient = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
DocumentBase = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
OutboundDocument = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
RequestSettings = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
DIMEConfiguration = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
SecurityRequest = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
DIMEDocuments = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
SecretKey = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
RecipientStatus = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
Inbound = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
InboundDocument = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
ArchivedDocument = class; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
ArrayOfOutboundRecipient = array of OutboundRecipient; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
ArrayOfOutboundDocument = array of OutboundDocument; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
// ************************************************************************ //
// XML : Outbound, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
Outbound = class(TRemotable)
private
FCustomerID: string;
FCustomerID_Specified: boolean;
FPassword: string;
FPassword_Specified: boolean;
FConfirmationURL: string;
FConfirmationURL_Specified: boolean;
FCSID: string;
FCSID_Specified: boolean;
FSender: string;
FSender_Specified: boolean;
FSendername: string;
FSendername_Specified: boolean;
FHeader: string;
FHeader_Specified: boolean;
FSubject: string;
FSubject_Specified: boolean;
FBody: string;
FBody_Specified: boolean;
FBodyContentType: string;
FBodyContentType_Specified: boolean;
FResolution: string;
FResolution_Specified: boolean;
FTestMode: Boolean;
FRecipients: ArrayOfOutboundRecipient;
FRecipients_Specified: boolean;
FDocuments: ArrayOfOutboundDocument;
FDocuments_Specified: boolean;
FDate: string;
FDate_Specified: boolean;
FRetries: string;
FRetries_Specified: boolean;
procedure SetCustomerID(Index: Integer; const Astring: string);
function CustomerID_Specified(Index: Integer): boolean;
procedure SetPassword(Index: Integer; const Astring: string);
function Password_Specified(Index: Integer): boolean;
procedure SetConfirmationURL(Index: Integer; const Astring: string);
function ConfirmationURL_Specified(Index: Integer): boolean;
procedure SetCSID(Index: Integer; const Astring: string);
function CSID_Specified(Index: Integer): boolean;
procedure SetSender(Index: Integer; const Astring: string);
function Sender_Specified(Index: Integer): boolean;
procedure SetSendername(Index: Integer; const Astring: string);
function Sendername_Specified(Index: Integer): boolean;
procedure SetHeader(Index: Integer; const Astring: string);
function Header_Specified(Index: Integer): boolean;
procedure SetSubject(Index: Integer; const Astring: string);
function Subject_Specified(Index: Integer): boolean;
procedure SetBody(Index: Integer; const Astring: string);
function Body_Specified(Index: Integer): boolean;
procedure SetBodyContentType(Index: Integer; const Astring: string);
function BodyContentType_Specified(Index: Integer): boolean;
procedure SetResolution(Index: Integer; const Astring: string);
function Resolution_Specified(Index: Integer): boolean;
procedure SetRecipients(Index: Integer; const AArrayOfOutboundRecipient: ArrayOfOutboundRecipient);
function Recipients_Specified(Index: Integer): boolean;
procedure SetDocuments(Index: Integer; const AArrayOfOutboundDocument: ArrayOfOutboundDocument);
function Documents_Specified(Index: Integer): boolean;
procedure SetDate(Index: Integer; const Astring: string);
function Date_Specified(Index: Integer): boolean;
procedure SetRetries(Index: Integer; const Astring: string);
function Retries_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property CustomerID: string Index (IS_OPTN) read FCustomerID write SetCustomerID stored CustomerID_Specified;
property Password: string Index (IS_OPTN) read FPassword write SetPassword stored Password_Specified;
property ConfirmationURL: string Index (IS_OPTN) read FConfirmationURL write SetConfirmationURL stored ConfirmationURL_Specified;
property CSID: string Index (IS_OPTN) read FCSID write SetCSID stored CSID_Specified;
property Sender: string Index (IS_OPTN) read FSender write SetSender stored Sender_Specified;
property Sendername: string Index (IS_OPTN) read FSendername write SetSendername stored Sendername_Specified;
property Header: string Index (IS_OPTN) read FHeader write SetHeader stored Header_Specified;
property Subject: string Index (IS_OPTN) read FSubject write SetSubject stored Subject_Specified;
property Body: string Index (IS_OPTN) read FBody write SetBody stored Body_Specified;
property BodyContentType: string Index (IS_OPTN) read FBodyContentType write SetBodyContentType stored BodyContentType_Specified;
property Resolution: string Index (IS_OPTN) read FResolution write SetResolution stored Resolution_Specified;
property TestMode: Boolean read FTestMode write FTestMode;
property Recipients: ArrayOfOutboundRecipient Index (IS_OPTN) read FRecipients write SetRecipients stored Recipients_Specified;
property Documents: ArrayOfOutboundDocument Index (IS_OPTN) read FDocuments write SetDocuments stored Documents_Specified;
property Date: string Index (IS_OPTN) read FDate write SetDate stored Date_Specified;
property Retries: string Index (IS_OPTN) read FRetries write SetRetries stored Retries_Specified;
end;
// ************************************************************************ //
// XML : OutboundRecipient, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
OutboundRecipient = class(TRemotable)
private
FTransactionID: string;
FTransactionID_Specified: boolean;
FName_: string;
FName__Specified: boolean;
FPhone: string;
FPhone_Specified: boolean;
FScheduleTime: string;
FScheduleTime_Specified: boolean;
procedure SetTransactionID(Index: Integer; const Astring: string);
function TransactionID_Specified(Index: Integer): boolean;
procedure SetName_(Index: Integer; const Astring: string);
function Name__Specified(Index: Integer): boolean;
procedure SetPhone(Index: Integer; const Astring: string);
function Phone_Specified(Index: Integer): boolean;
procedure SetScheduleTime(Index: Integer; const Astring: string);
function ScheduleTime_Specified(Index: Integer): boolean;
published
property TransactionID: string Index (IS_OPTN) read FTransactionID write SetTransactionID stored TransactionID_Specified;
property Name_: string Index (IS_OPTN) read FName_ write SetName_ stored Name__Specified;
property Phone: string Index (IS_OPTN) read FPhone write SetPhone stored Phone_Specified;
property ScheduleTime: string Index (IS_OPTN) read FScheduleTime write SetScheduleTime stored ScheduleTime_Specified;
end;
// ************************************************************************ //
// XML : DocumentBase, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
DocumentBase = class(TRemotable)
private
FFileData: string;
FFileData_Specified: boolean;
FContentType: string;
FContentType_Specified: boolean;
procedure SetFileData(Index: Integer; const Astring: string);
function FileData_Specified(Index: Integer): boolean;
procedure SetContentType(Index: Integer; const Astring: string);
function ContentType_Specified(Index: Integer): boolean;
published
property FileData: string Index (IS_OPTN) read FFileData write SetFileData stored FileData_Specified;
property ContentType: string Index (IS_OPTN) read FContentType write SetContentType stored ContentType_Specified;
end;
// ************************************************************************ //
// XML : OutboundDocument, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
OutboundDocument = class(DocumentBase)
private
FTransferEncoding: string;
FTransferEncoding_Specified: boolean;
procedure SetTransferEncoding(Index: Integer; const Astring: string);
function TransferEncoding_Specified(Index: Integer): boolean;
published
property TransferEncoding: string Index (IS_OPTN) read FTransferEncoding write SetTransferEncoding stored TransferEncoding_Specified;
end;
// ************************************************************************ //
// XML : RequestSettings, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
RequestSettings = class(TRemotable)
private
FDIMEDocuments: DIMEDocuments;
FDIMEDocuments_Specified: boolean;
FSecurityMode: SecurityRequest;
FSecurityMode_Specified: boolean;
procedure SetDIMEDocuments(Index: Integer; const ADIMEDocuments: DIMEDocuments);
function DIMEDocuments_Specified(Index: Integer): boolean;
procedure SetSecurityMode(Index: Integer; const ASecurityRequest: SecurityRequest);
function SecurityMode_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property DIMEDocuments: DIMEDocuments Index (IS_OPTN) read FDIMEDocuments write SetDIMEDocuments stored DIMEDocuments_Specified;
property SecurityMode: SecurityRequest Index (IS_OPTN) read FSecurityMode write SetSecurityMode stored SecurityMode_Specified;
end;
// ************************************************************************ //
// XML : DIMEConfiguration, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
DIMEConfiguration = class(TRemotable)
private
FChunked: Boolean;
FEncrypted: Boolean;
FEncryptionType: string;
FEncryptionType_Specified: boolean;
procedure SetEncryptionType(Index: Integer; const Astring: string);
function EncryptionType_Specified(Index: Integer): boolean;
published
property Chunked: Boolean read FChunked write FChunked;
property Encrypted: Boolean read FEncrypted write FEncrypted;
property EncryptionType: string Index (IS_OPTN) read FEncryptionType write SetEncryptionType stored EncryptionType_Specified;
end;
// ************************************************************************ //
// XML : SecurityRequest, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
SecurityRequest = class(DIMEConfiguration)
private
FUseDIME: Boolean;
FDigitallySigned: Boolean;
published
property UseDIME: Boolean read FUseDIME write FUseDIME;
property DigitallySigned: Boolean read FDigitallySigned write FDigitallySigned;
end;
ArrayOfSecretKey = array of SecretKey; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
// ************************************************************************ //
// XML : DIMEDocuments, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
DIMEDocuments = class(DIMEConfiguration)
private
FSecretKeys: ArrayOfSecretKey;
FSecretKeys_Specified: boolean;
procedure SetSecretKeys(Index: Integer; const AArrayOfSecretKey: ArrayOfSecretKey);
function SecretKeys_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property SecretKeys: ArrayOfSecretKey Index (IS_OPTN) read FSecretKeys write SetSecretKeys stored SecretKeys_Specified;
end;
// ************************************************************************ //
// XML : SecretKey, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
SecretKey = class(TRemotable)
private
FKey: TByteDynArray;
FKey_Specified: boolean;
FIV: TByteDynArray;
FIV_Specified: boolean;
procedure SetKey(Index: Integer; const ATByteDynArray: TByteDynArray);
function Key_Specified(Index: Integer): boolean;
procedure SetIV(Index: Integer; const ATByteDynArray: TByteDynArray);
function IV_Specified(Index: Integer): boolean;
published
property Key: TByteDynArray Index (IS_OPTN) read FKey write SetKey stored Key_Specified;
property IV: TByteDynArray Index (IS_OPTN) read FIV write SetIV stored IV_Specified;
end;
ArrayOfString = array of string; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
ArrayOfRecipientStatus = array of RecipientStatus; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
// ************************************************************************ //
// XML : RecipientStatus, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
RecipientStatus = class(TRemotable)
private
FAttemps: string;
FAttemps_Specified: boolean;
FCSID: string;
FCSID_Specified: boolean;
FCallTime: string;
FCallTime_Specified: boolean;
FTransactionID: string;
FTransactionID_Specified: boolean;
FCharges: string;
FCharges_Specified: boolean;
FPages: string;
FPages_Specified: boolean;
FPhone: string;
FPhone_Specified: boolean;
FSeconds: string;
FSeconds_Specified: boolean;
FSpeed: string;
FSpeed_Specified: boolean;
FStatus: string;
FStatus_Specified: boolean;
FProviderTxId: string;
FProviderTxId_Specified: boolean;
procedure SetAttemps(Index: Integer; const Astring: string);
function Attemps_Specified(Index: Integer): boolean;
procedure SetCSID(Index: Integer; const Astring: string);
function CSID_Specified(Index: Integer): boolean;
procedure SetCallTime(Index: Integer; const Astring: string);
function CallTime_Specified(Index: Integer): boolean;
procedure SetTransactionID(Index: Integer; const Astring: string);
function TransactionID_Specified(Index: Integer): boolean;
procedure SetCharges(Index: Integer; const Astring: string);
function Charges_Specified(Index: Integer): boolean;
procedure SetPages(Index: Integer; const Astring: string);
function Pages_Specified(Index: Integer): boolean;
procedure SetPhone(Index: Integer; const Astring: string);
function Phone_Specified(Index: Integer): boolean;
procedure SetSeconds(Index: Integer; const Astring: string);
function Seconds_Specified(Index: Integer): boolean;
procedure SetSpeed(Index: Integer; const Astring: string);
function Speed_Specified(Index: Integer): boolean;
procedure SetStatus(Index: Integer; const Astring: string);
function Status_Specified(Index: Integer): boolean;
procedure SetProviderTxId(Index: Integer; const Astring: string);
function ProviderTxId_Specified(Index: Integer): boolean;
published
property Attemps: string Index (IS_OPTN) read FAttemps write SetAttemps stored Attemps_Specified;
property CSID: string Index (IS_OPTN) read FCSID write SetCSID stored CSID_Specified;
property CallTime: string Index (IS_OPTN) read FCallTime write SetCallTime stored CallTime_Specified;
property TransactionID: string Index (IS_OPTN) read FTransactionID write SetTransactionID stored TransactionID_Specified;
property Charges: string Index (IS_OPTN) read FCharges write SetCharges stored Charges_Specified;
property Pages: string Index (IS_OPTN) read FPages write SetPages stored Pages_Specified;
property Phone: string Index (IS_OPTN) read FPhone write SetPhone stored Phone_Specified;
property Seconds: string Index (IS_OPTN) read FSeconds write SetSeconds stored Seconds_Specified;
property Speed: string Index (IS_OPTN) read FSpeed write SetSpeed stored Speed_Specified;
property Status: string Index (IS_OPTN) read FStatus write SetStatus stored Status_Specified;
property ProviderTxId: string Index (IS_OPTN) read FProviderTxId write SetProviderTxId stored ProviderTxId_Specified;
end;
// ************************************************************************ //
// XML : Inbound, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
Inbound = class(TRemotable)
private
FCustomerID: string;
FCustomerID_Specified: boolean;
FDocument: InboundDocument;
FDocument_Specified: boolean;
FDIMEDocument: DIMEDocuments;
FDIMEDocument_Specified: boolean;
procedure SetCustomerID(Index: Integer; const Astring: string);
function CustomerID_Specified(Index: Integer): boolean;
procedure SetDocument(Index: Integer; const AInboundDocument: InboundDocument);
function Document_Specified(Index: Integer): boolean;
procedure SetDIMEDocument(Index: Integer; const ADIMEDocuments: DIMEDocuments);
function DIMEDocument_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property CustomerID: string Index (IS_OPTN) read FCustomerID write SetCustomerID stored CustomerID_Specified;
property Document: InboundDocument Index (IS_OPTN) read FDocument write SetDocument stored Document_Specified;
property DIMEDocument: DIMEDocuments Index (IS_OPTN) read FDIMEDocument write SetDIMEDocument stored DIMEDocument_Specified;
end;
// ************************************************************************ //
// XML : InboundDocument, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
InboundDocument = class(DocumentBase)
private
FAccountingCode: string;
FAccountingCode_Specified: boolean;
FDNIS: string;
FDNIS_Specified: boolean;
FANI: string;
FANI_Specified: boolean;
FCSID: string;
FCSID_Specified: boolean;
FTransactionID: string;
FTransactionID_Specified: boolean;
FCallTime: string;
FCallTime_Specified: boolean;
FSpeed: string;
FSpeed_Specified: boolean;
FSeconds: string;
FSeconds_Specified: boolean;
FPages: string;
FPages_Specified: boolean;
FCost: string;
FCost_Specified: boolean;
FStatus: string;
FStatus_Specified: boolean;
FSpamScore: string;
FSpamScore_Specified: boolean;
procedure SetAccountingCode(Index: Integer; const Astring: string);
function AccountingCode_Specified(Index: Integer): boolean;
procedure SetDNIS(Index: Integer; const Astring: string);
function DNIS_Specified(Index: Integer): boolean;
procedure SetANI(Index: Integer; const Astring: string);
function ANI_Specified(Index: Integer): boolean;
procedure SetCSID(Index: Integer; const Astring: string);
function CSID_Specified(Index: Integer): boolean;
procedure SetTransactionID(Index: Integer; const Astring: string);
function TransactionID_Specified(Index: Integer): boolean;
procedure SetCallTime(Index: Integer; const Astring: string);
function CallTime_Specified(Index: Integer): boolean;
procedure SetSpeed(Index: Integer; const Astring: string);
function Speed_Specified(Index: Integer): boolean;
procedure SetSeconds(Index: Integer; const Astring: string);
function Seconds_Specified(Index: Integer): boolean;
procedure SetPages(Index: Integer; const Astring: string);
function Pages_Specified(Index: Integer): boolean;
procedure SetCost(Index: Integer; const Astring: string);
function Cost_Specified(Index: Integer): boolean;
procedure SetStatus(Index: Integer; const Astring: string);
function Status_Specified(Index: Integer): boolean;
procedure SetSpamScore(Index: Integer; const Astring: string);
function SpamScore_Specified(Index: Integer): boolean;
published
property AccountingCode: string Index (IS_OPTN) read FAccountingCode write SetAccountingCode stored AccountingCode_Specified;
property DNIS: string Index (IS_OPTN) read FDNIS write SetDNIS stored DNIS_Specified;
property ANI: string Index (IS_OPTN) read FANI write SetANI stored ANI_Specified;
property CSID: string Index (IS_OPTN) read FCSID write SetCSID stored CSID_Specified;
property TransactionID: string Index (IS_OPTN) read FTransactionID write SetTransactionID stored TransactionID_Specified;
property CallTime: string Index (IS_OPTN) read FCallTime write SetCallTime stored CallTime_Specified;
property Speed: string Index (IS_OPTN) read FSpeed write SetSpeed stored Speed_Specified;
property Seconds: string Index (IS_OPTN) read FSeconds write SetSeconds stored Seconds_Specified;
property Pages: string Index (IS_OPTN) read FPages write SetPages stored Pages_Specified;
property Cost: string Index (IS_OPTN) read FCost write SetCost stored Cost_Specified;
property Status: string Index (IS_OPTN) read FStatus write SetStatus stored Status_Specified;
property SpamScore: string Index (IS_OPTN) read FSpamScore write SetSpamScore stored SpamScore_Specified;
end;
// ************************************************************************ //
// XML : ArchivedDocument, global, <complexType>
// Namespace : http://webservices.venali.net/fax/1.0/
// ************************************************************************ //
ArchivedDocument = class(DocumentBase)
private
FDIMEDocument: DIMEDocuments;
FDIMEDocument_Specified: boolean;
procedure SetDIMEDocument(Index: Integer; const ADIMEDocuments: DIMEDocuments);
function DIMEDocument_Specified(Index: Integer): boolean;
public
destructor Destroy; override;
published
property DIMEDocument: DIMEDocuments Index (IS_OPTN) read FDIMEDocument write SetDIMEDocument stored DIMEDocument_Specified;
end;
ArrayOfArrayOfString = array of ArrayOfString; { "http://webservices.venali.net/fax/1.0/"[GblCplx] }
// ************************************************************************ //
// Namespace : http://webservices.venali.net/fax/1.0/
// soapAction: http://webservices.venali.net/fax/1.0/%operationName%
// transport : http://schemas.xmlsoap.org/soap/http
// style : document
// binding : FaxServiceSoap
// service : FaxService
// port : FaxServiceSoap
// URL : http://webservices.venali.net/fax/1.0/faxservice.asmx
// ************************************************************************ //
FaxServiceSoap = interface(IInvokable)
['{D77E507E-5D64-081B-D42E-10C7EF5115D0}']
function Send(const faxData: Outbound; const requestSettings: RequestSettings): ArrayOfString; stdcall;
function SendLite(const customerID: string; const password: string; const phone: string; const body: string): string; stdcall;
function GetOutboundStatus(const customerID: string; const password: string; const transactionIDs: ArrayOfString; const requestSettings: RequestSettings): ArrayOfRecipientStatus; stdcall;
function GetStatusByDateRange(const customerID: string; const password: string; const startDate: TXSDateTime; const endDate: TXSDateTime): ArrayOfRecipientStatus; stdcall;
function GetInbound(const customerID: string; const password: string; const dnis: string; const requestSettings: RequestSettings): Inbound; stdcall;
function GetInboundList(const customerID: string; const password: string; const dnis: string; const requestSettings: RequestSettings): ArrayOfString; stdcall;
function GetInboundByID(const customerID: string; const password: string; const msgId: string; const requestSettings: RequestSettings): Inbound; stdcall;
procedure RemoveInboundByID(const customerID: string; const password: string; const msgId: string; const requestSettings: RequestSettings); stdcall;
function GetSupportedFileFormats: string; stdcall;
function GetOutboundArchiveByID(const customerID: string; const password: string; const transactionID: string; const requestSettings: RequestSettings): ArchivedDocument; stdcall;
function QoS: Integer; stdcall;
function GetAccountInfo(const customerID: string; const password: string): ArrayOfArrayOfString; stdcall;
end;
function GetFaxServiceSoap(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): FaxServiceSoap;
implementation
uses SysUtils;
function GetFaxServiceSoap(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): FaxServiceSoap;
const
defWSDL = 'http://webservices.venali.net/fax/1.0/faxservice.asmx?WSDL';
defURL = 'http://webservices.venali.net/fax/1.0/faxservice.asmx';
defSvc = 'FaxService';
defPrt = 'FaxServiceSoap';
var
RIO: THTTPRIO;
begin
Result := nil;
if (Addr = '') then
begin
if UseWSDL then
Addr := defWSDL
else
Addr := defURL;
end;
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil)
else
RIO := HTTPRIO;
try
Result := (RIO as FaxServiceSoap);
if UseWSDL then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result = nil) and (HTTPRIO = nil) then
RIO.Free;
end;
end;
destructor Outbound.Destroy;
var
I: Integer;
begin
for I := 0 to System.Length(FRecipients)-1 do
SysUtils.FreeAndNil(FRecipients[I]);
System.SetLength(FRecipients, 0);
for I := 0 to System.Length(FDocuments)-1 do
SysUtils.FreeAndNil(FDocuments[I]);
System.SetLength(FDocuments, 0);
inherited Destroy;
end;
procedure Outbound.SetCustomerID(Index: Integer; const Astring: string);
begin
FCustomerID := Astring;
FCustomerID_Specified := True;
end;
function Outbound.CustomerID_Specified(Index: Integer): boolean;
begin
Result := FCustomerID_Specified;
end;
procedure Outbound.SetPassword(Index: Integer; const Astring: string);
begin
FPassword := Astring;
FPassword_Specified := True;
end;
function Outbound.Password_Specified(Index: Integer): boolean;
begin
Result := FPassword_Specified;
end;
procedure Outbound.SetConfirmationURL(Index: Integer; const Astring: string);
begin
FConfirmationURL := Astring;
FConfirmationURL_Specified := True;
end;
function Outbound.ConfirmationURL_Specified(Index: Integer): boolean;
begin
Result := FConfirmationURL_Specified;
end;
procedure Outbound.SetCSID(Index: Integer; const Astring: string);
begin
FCSID := Astring;
FCSID_Specified := True;
end;
function Outbound.CSID_Specified(Index: Integer): boolean;
begin
Result := FCSID_Specified;
end;
procedure Outbound.SetSender(Index: Integer; const Astring: string);
begin
FSender := Astring;
FSender_Specified := True;
end;
function Outbound.Sender_Specified(Index: Integer): boolean;
begin
Result := FSender_Specified;
end;
procedure Outbound.SetSendername(Index: Integer; const Astring: string);
begin
FSendername := Astring;
FSendername_Specified := True;
end;
function Outbound.Sendername_Specified(Index: Integer): boolean;
begin
Result := FSendername_Specified;
end;
procedure Outbound.SetHeader(Index: Integer; const Astring: string);
begin
FHeader := Astring;
FHeader_Specified := True;
end;
function Outbound.Header_Specified(Index: Integer): boolean;
begin
Result := FHeader_Specified;
end;
procedure Outbound.SetSubject(Index: Integer; const Astring: string);
begin
FSubject := Astring;
FSubject_Specified := True;
end;
function Outbound.Subject_Specified(Index: Integer): boolean;
begin
Result := FSubject_Specified;
end;
procedure Outbound.SetBody(Index: Integer; const Astring: string);
begin
FBody := Astring;
FBody_Specified := True;
end;
function Outbound.Body_Specified(Index: Integer): boolean;
begin
Result := FBody_Specified;
end;
procedure Outbound.SetBodyContentType(Index: Integer; const Astring: string);
begin
FBodyContentType := Astring;
FBodyContentType_Specified := True;
end;
function Outbound.BodyContentType_Specified(Index: Integer): boolean;
begin
Result := FBodyContentType_Specified;
end;
procedure Outbound.SetResolution(Index: Integer; const Astring: string);
begin
FResolution := Astring;
FResolution_Specified := True;
end;
function Outbound.Resolution_Specified(Index: Integer): boolean;
begin
Result := FResolution_Specified;
end;
procedure Outbound.SetRecipients(Index: Integer; const AArrayOfOutboundRecipient: ArrayOfOutboundRecipient);
begin
FRecipients := AArrayOfOutboundRecipient;
FRecipients_Specified := True;
end;
function Outbound.Recipients_Specified(Index: Integer): boolean;
begin
Result := FRecipients_Specified;
end;
procedure Outbound.SetDocuments(Index: Integer; const AArrayOfOutboundDocument: ArrayOfOutboundDocument);
begin
FDocuments := AArrayOfOutboundDocument;
FDocuments_Specified := True;
end;
function Outbound.Documents_Specified(Index: Integer): boolean;
begin
Result := FDocuments_Specified;
end;
procedure Outbound.SetDate(Index: Integer; const Astring: string);
begin
FDate := Astring;
FDate_Specified := True;
end;
function Outbound.Date_Specified(Index: Integer): boolean;
begin
Result := FDate_Specified;
end;
procedure Outbound.SetRetries(Index: Integer; const Astring: string);
begin
FRetries := Astring;
FRetries_Specified := True;
end;
function Outbound.Retries_Specified(Index: Integer): boolean;
begin
Result := FRetries_Specified;
end;
procedure OutboundRecipient.SetTransactionID(Index: Integer; const Astring: string);
begin
FTransactionID := Astring;
FTransactionID_Specified := True;
end;
function OutboundRecipient.TransactionID_Specified(Index: Integer): boolean;
begin
Result := FTransactionID_Specified;
end;
procedure OutboundRecipient.SetName_(Index: Integer; const Astring: string);
begin
FName_ := Astring;
FName__Specified := True;
end;
function OutboundRecipient.Name__Specified(Index: Integer): boolean;
begin
Result := FName__Specified;
end;
procedure OutboundRecipient.SetPhone(Index: Integer; const Astring: string);
begin
FPhone := Astring;
FPhone_Specified := True;
end;
function OutboundRecipient.Phone_Specified(Index: Integer): boolean;
begin
Result := FPhone_Specified;
end;
procedure OutboundRecipient.SetScheduleTime(Index: Integer; const Astring: string);
begin
FScheduleTime := Astring;
FScheduleTime_Specified := True;
end;
function OutboundRecipient.ScheduleTime_Specified(Index: Integer): boolean;
begin
Result := FScheduleTime_Specified;
end;
procedure DocumentBase.SetFileData(Index: Integer; const Astring: string);
begin
FFileData := Astring;
FFileData_Specified := True;
end;
function DocumentBase.FileData_Specified(Index: Integer): boolean;
begin
Result := FFileData_Specified;
end;
procedure DocumentBase.SetContentType(Index: Integer; const Astring: string);
begin
FContentType := Astring;
FContentType_Specified := True;
end;
function DocumentBase.ContentType_Specified(Index: Integer): boolean;
begin
Result := FContentType_Specified;
end;
procedure OutboundDocument.SetTransferEncoding(Index: Integer; const Astring: string);
begin
FTransferEncoding := Astring;
FTransferEncoding_Specified := True;
end;
function OutboundDocument.TransferEncoding_Specified(Index: Integer): boolean;
begin
Result := FTransferEncoding_Specified;
end;
destructor RequestSettings.Destroy;
begin
SysUtils.FreeAndNil(FDIMEDocuments);
SysUtils.FreeAndNil(FSecurityMode);
inherited Destroy;
end;
procedure RequestSettings.SetDIMEDocuments(Index: Integer; const ADIMEDocuments: DIMEDocuments);
begin
FDIMEDocuments := ADIMEDocuments;
FDIMEDocuments_Specified := True;
end;
function RequestSettings.DIMEDocuments_Specified(Index: Integer): boolean;
begin
Result := FDIMEDocuments_Specified;
end;
procedure RequestSettings.SetSecurityMode(Index: Integer; const ASecurityRequest: SecurityRequest);
begin
FSecurityMode := ASecurityRequest;
FSecurityMode_Specified := True;
end;
function RequestSettings.SecurityMode_Specified(Index: Integer): boolean;
begin
Result := FSecurityMode_Specified;
end;
procedure DIMEConfiguration.SetEncryptionType(Index: Integer; const Astring: string);
begin
FEncryptionType := Astring;
FEncryptionType_Specified := True;
end;
function DIMEConfiguration.EncryptionType_Specified(Index: Integer): boolean;
begin
Result := FEncryptionType_Specified;
end;
destructor DIMEDocuments.Destroy;
var
I: Integer;
begin
for I := 0 to System.Length(FSecretKeys)-1 do
SysUtils.FreeAndNil(FSecretKeys[I]);
System.SetLength(FSecretKeys, 0);
inherited Destroy;
end;
procedure DIMEDocuments.SetSecretKeys(Index: Integer; const AArrayOfSecretKey: ArrayOfSecretKey);
begin
FSecretKeys := AArrayOfSecretKey;
FSecretKeys_Specified := True;
end;
function DIMEDocuments.SecretKeys_Specified(Index: Integer): boolean;
begin
Result := FSecretKeys_Specified;
end;
procedure SecretKey.SetKey(Index: Integer; const ATByteDynArray: TByteDynArray);
begin
FKey := ATByteDynArray;
FKey_Specified := True;
end;
function SecretKey.Key_Specified(Index: Integer): boolean;
begin
Result := FKey_Specified;
end;
procedure SecretKey.SetIV(Index: Integer; const ATByteDynArray: TByteDynArray);
begin
FIV := ATByteDynArray;
FIV_Specified := True;
end;
function SecretKey.IV_Specified(Index: Integer): boolean;
begin
Result := FIV_Specified;
end;
procedure RecipientStatus.SetAttemps(Index: Integer; const Astring: string);
begin
FAttemps := Astring;
FAttemps_Specified := True;
end;
function RecipientStatus.Attemps_Specified(Index: Integer): boolean;
begin
Result := FAttemps_Specified;
end;
procedure RecipientStatus.SetCSID(Index: Integer; const Astring: string);
begin
FCSID := Astring;
FCSID_Specified := True;
end;
function RecipientStatus.CSID_Specified(Index: Integer): boolean;
begin
Result := FCSID_Specified;
end;
procedure RecipientStatus.SetCallTime(Index: Integer; const Astring: string);
begin
FCallTime := Astring;
FCallTime_Specified := True;
end;
function RecipientStatus.CallTime_Specified(Index: Integer): boolean;
begin
Result := FCallTime_Specified;
end;
procedure RecipientStatus.SetTransactionID(Index: Integer; const Astring: string);
begin
FTransactionID := Astring;
FTransactionID_Specified := True;
end;
function RecipientStatus.TransactionID_Specified(Index: Integer): boolean;
begin
Result := FTransactionID_Specified;
end;
procedure RecipientStatus.SetCharges(Index: Integer; const Astring: string);
begin
FCharges := Astring;
FCharges_Specified := True;
end;
function RecipientStatus.Charges_Specified(Index: Integer): boolean;
begin
Result := FCharges_Specified;
end;
procedure RecipientStatus.SetPages(Index: Integer; const Astring: string);
begin
FPages := Astring;
FPages_Specified := True;
end;
function RecipientStatus.Pages_Specified(Index: Integer): boolean;
begin
Result := FPages_Specified;
end;
procedure RecipientStatus.SetPhone(Index: Integer; const Astring: string);
begin
FPhone := Astring;
FPhone_Specified := True;
end;
function RecipientStatus.Phone_Specified(Index: Integer): boolean;
begin
Result := FPhone_Specified;
end;
procedure RecipientStatus.SetSeconds(Index: Integer; const Astring: string);
begin
FSeconds := Astring;
FSeconds_Specified := True;
end;
function RecipientStatus.Seconds_Specified(Index: Integer): boolean;
begin
Result := FSeconds_Specified;
end;
procedure RecipientStatus.SetSpeed(Index: Integer; const Astring: string);
begin
FSpeed := Astring;
FSpeed_Specified := True;
end;
function RecipientStatus.Speed_Specified(Index: Integer): boolean;
begin
Result := FSpeed_Specified;
end;
procedure RecipientStatus.SetStatus(Index: Integer; const Astring: string);
begin
FStatus := Astring;
FStatus_Specified := True;
end;
function RecipientStatus.Status_Specified(Index: Integer): boolean;
begin
Result := FStatus_Specified;
end;
procedure RecipientStatus.SetProviderTxId(Index: Integer; const Astring: string);
begin
FProviderTxId := Astring;
FProviderTxId_Specified := True;
end;
function RecipientStatus.ProviderTxId_Specified(Index: Integer): boolean;
begin
Result := FProviderTxId_Specified;
end;
destructor Inbound.Destroy;
begin
SysUtils.FreeAndNil(FDocument);
SysUtils.FreeAndNil(FDIMEDocument);
inherited Destroy;
end;
procedure Inbound.SetCustomerID(Index: Integer; const Astring: string);
begin
FCustomerID := Astring;
FCustomerID_Specified := True;
end;
function Inbound.CustomerID_Specified(Index: Integer): boolean;
begin
Result := FCustomerID_Specified;
end;
procedure Inbound.SetDocument(Index: Integer; const AInboundDocument: InboundDocument);
begin
FDocument := AInboundDocument;
FDocument_Specified := True;
end;
function Inbound.Document_Specified(Index: Integer): boolean;
begin
Result := FDocument_Specified;
end;
procedure Inbound.SetDIMEDocument(Index: Integer; const ADIMEDocuments: DIMEDocuments);
begin
FDIMEDocument := ADIMEDocuments;
FDIMEDocument_Specified := True;
end;
function Inbound.DIMEDocument_Specified(Index: Integer): boolean;
begin
Result := FDIMEDocument_Specified;
end;
procedure InboundDocument.SetAccountingCode(Index: Integer; const Astring: string);
begin
FAccountingCode := Astring;
FAccountingCode_Specified := True;
end;
function InboundDocument.AccountingCode_Specified(Index: Integer): boolean;
begin
Result := FAccountingCode_Specified;
end;
procedure InboundDocument.SetDNIS(Index: Integer; const Astring: string);
begin
FDNIS := Astring;
FDNIS_Specified := True;
end;
function InboundDocument.DNIS_Specified(Index: Integer): boolean;
begin
Result := FDNIS_Specified;
end;
procedure InboundDocument.SetANI(Index: Integer; const Astring: string);
begin
FANI := Astring;
FANI_Specified := True;
end;
function InboundDocument.ANI_Specified(Index: Integer): boolean;
begin
Result := FANI_Specified;
end;
procedure InboundDocument.SetCSID(Index: Integer; const Astring: string);
begin
FCSID := Astring;
FCSID_Specified := True;
end;
function InboundDocument.CSID_Specified(Index: Integer): boolean;
begin
Result := FCSID_Specified;
end;
procedure InboundDocument.SetTransactionID(Index: Integer; const Astring: string);
begin
FTransactionID := Astring;
FTransactionID_Specified := True;
end;
function InboundDocument.TransactionID_Specified(Index: Integer): boolean;
begin
Result := FTransactionID_Specified;
end;
procedure InboundDocument.SetCallTime(Index: Integer; const Astring: string);
begin
FCallTime := Astring;
FCallTime_Specified := True;
end;
function InboundDocument.CallTime_Specified(Index: Integer): boolean;
begin
Result := FCallTime_Specified;
end;
procedure InboundDocument.SetSpeed(Index: Integer; const Astring: string);
begin
FSpeed := Astring;
FSpeed_Specified := True;
end;
function InboundDocument.Speed_Specified(Index: Integer): boolean;
begin
Result := FSpeed_Specified;
end;
procedure InboundDocument.SetSeconds(Index: Integer; const Astring: string);
begin
FSeconds := Astring;
FSeconds_Specified := True;
end;
function InboundDocument.Seconds_Specified(Index: Integer): boolean;
begin
Result := FSeconds_Specified;
end;
procedure InboundDocument.SetPages(Index: Integer; const Astring: string);
begin
FPages := Astring;
FPages_Specified := True;
end;
function InboundDocument.Pages_Specified(Index: Integer): boolean;
begin
Result := FPages_Specified;
end;
procedure InboundDocument.SetCost(Index: Integer; const Astring: string);
begin
FCost := Astring;
FCost_Specified := True;
end;
function InboundDocument.Cost_Specified(Index: Integer): boolean;
begin
Result := FCost_Specified;
end;
procedure InboundDocument.SetStatus(Index: Integer; const Astring: string);
begin
FStatus := Astring;
FStatus_Specified := True;
end;
function InboundDocument.Status_Specified(Index: Integer): boolean;
begin
Result := FStatus_Specified;
end;
procedure InboundDocument.SetSpamScore(Index: Integer; const Astring: string);
begin
FSpamScore := Astring;
FSpamScore_Specified := True;
end;
function InboundDocument.SpamScore_Specified(Index: Integer): boolean;
begin
Result := FSpamScore_Specified;
end;
destructor ArchivedDocument.Destroy;
begin
SysUtils.FreeAndNil(FDIMEDocument);
inherited Destroy;
end;
procedure ArchivedDocument.SetDIMEDocument(Index: Integer; const ADIMEDocuments: DIMEDocuments);
begin
FDIMEDocument := ADIMEDocuments;
FDIMEDocument_Specified := True;
end;
function ArchivedDocument.DIMEDocument_Specified(Index: Integer): boolean;
begin
Result := FDIMEDocument_Specified;
end;
initialization
InvRegistry.RegisterInterface(TypeInfo(FaxServiceSoap), 'http://webservices.venali.net/fax/1.0/', 'utf-8');
InvRegistry.RegisterDefaultSOAPAction(TypeInfo(FaxServiceSoap), 'http://webservices.venali.net/fax/1.0/%operationName%');
InvRegistry.RegisterInvokeOptions(TypeInfo(FaxServiceSoap), ioDocument);
RemClassRegistry.RegisterXSInfo(TypeInfo(ArrayOfOutboundRecipient), 'http://webservices.venali.net/fax/1.0/', 'ArrayOfOutboundRecipient');
RemClassRegistry.RegisterXSInfo(TypeInfo(ArrayOfOutboundDocument), 'http://webservices.venali.net/fax/1.0/', 'ArrayOfOutboundDocument');
RemClassRegistry.RegisterXSClass(Outbound, 'http://webservices.venali.net/fax/1.0/', 'Outbound');
RemClassRegistry.RegisterXSClass(OutboundRecipient, 'http://webservices.venali.net/fax/1.0/', 'OutboundRecipient');
RemClassRegistry.RegisterExternalPropName(TypeInfo(OutboundRecipient), 'Name_', 'Name');
RemClassRegistry.RegisterXSClass(DocumentBase, 'http://webservices.venali.net/fax/1.0/', 'DocumentBase');
RemClassRegistry.RegisterXSClass(OutboundDocument, 'http://webservices.venali.net/fax/1.0/', 'OutboundDocument');
RemClassRegistry.RegisterXSClass(RequestSettings, 'http://webservices.venali.net/fax/1.0/', 'RequestSettings');
RemClassRegistry.RegisterXSClass(DIMEConfiguration, 'http://webservices.venali.net/fax/1.0/', 'DIMEConfiguration');
RemClassRegistry.RegisterXSClass(SecurityRequest, 'http://webservices.venali.net/fax/1.0/', 'SecurityRequest');
RemClassRegistry.RegisterXSInfo(TypeInfo(ArrayOfSecretKey), 'http://webservices.venali.net/fax/1.0/', 'ArrayOfSecretKey');
RemClassRegistry.RegisterXSClass(DIMEDocuments, 'http://webservices.venali.net/fax/1.0/', 'DIMEDocuments');
RemClassRegistry.RegisterXSClass(SecretKey, 'http://webservices.venali.net/fax/1.0/', 'SecretKey');
RemClassRegistry.RegisterXSInfo(TypeInfo(ArrayOfString), 'http://webservices.venali.net/fax/1.0/', 'ArrayOfString');
RemClassRegistry.RegisterXSInfo(TypeInfo(ArrayOfRecipientStatus), 'http://webservices.venali.net/fax/1.0/', 'ArrayOfRecipientStatus');
RemClassRegistry.RegisterXSClass(RecipientStatus, 'http://webservices.venali.net/fax/1.0/', 'RecipientStatus');
RemClassRegistry.RegisterXSClass(Inbound, 'http://webservices.venali.net/fax/1.0/', 'Inbound');
RemClassRegistry.RegisterXSClass(InboundDocument, 'http://webservices.venali.net/fax/1.0/', 'InboundDocument');
RemClassRegistry.RegisterXSClass(ArchivedDocument, 'http://webservices.venali.net/fax/1.0/', 'ArchivedDocument');
RemClassRegistry.RegisterXSInfo(TypeInfo(ArrayOfArrayOfString), 'http://webservices.venali.net/fax/1.0/', 'ArrayOfArrayOfString');
end.
Kod: Tümünü seç
(HTTPRIO1 as FaxServiceSoap).SendLite('CustomerID','Şifre','Telefon','Merhaba')
Ama benim asıl işim SendLite yerine "Send" fonksiyonu.Yani birden fazla numaraya,doc gibi dosyalar ekleyip göndermem gerekiyor.
Send fonksiyonun yapısı şu şekilde
Kod: Tümünü seç
Send(const faxData: Outbound; const requestSettings: RequestSettings): ArrayOfString; stdcall;
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
faxVeri : Outbound;
begin
faxVeri := Outbound.Create;
faxVeri.Subject := 'Konu';
faxVeri.Header := 'Baslik';
faxVeri.Retries := '2';
faxVeri.Sendername := 'sender1';
faxVeri.Sender := 'sender2';
faxVeri.Date := '2010-03-26T16:56:5802:00';
faxVeri.ConfirmationURL := '';
end;
OutBound türünün altında Recipients diye olay var ama ne yaptıysam numara ekleyemiyorum.
Sizden ricam bana birkaç numara ve dosyayı ekleyip, Send fonksiyonu ile faxı göndermeme yardımcı olmanız.
Şu Recipients ve Documents türlerini çözmek yani :::)