www.pudn.com > SMSDemoALL.zip > Call.pas


unit Call; 
 
interface 
 
uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
  Dialogs, StdCtrls; 
 
type 
  TFormCall = class(TForm) 
    Label1: TLabel; 
    Label2: TLabel; 
    Phone: TEdit; 
    DTMF: TEdit; 
    BtnDial: TButton; 
    BtnSend: TButton; 
    BtnAnswer: TButton; 
    BtnHangup: TButton; 
    BtnCancel: TButton; 
    procedure FormShow(Sender: TObject); 
    procedure BtnHangupClick(Sender: TObject); 
    procedure BtnAnswerClick(Sender: TObject); 
    procedure BtnDialClick(Sender: TObject); 
    procedure BtnSendClick(Sender: TObject); 
    procedure BtnCancelClick(Sender: TObject); 
  private 
    { Private declarations } 
  public 
    { Public declarations } 
  end; 
 
var 
  FormCall: TFormCall; 
 
implementation 
 
uses Main; 
 
{$R *.dfm} 
 
procedure TFormCall.FormShow(Sender: TObject); 
begin 
if Length(Phone.Text)=0 then 
begin            //Dial 
    Phone.Enabled:=true; 
    BtnDial.Enabled:=true; 
    DTMF.Enabled := false; 
    BtnSend.Enabled := false; 
    BtnAnswer.Enabled := false; 
    BtnHangup.Enabled := false; 
    BtnSend.Enabled := false; 
end 
else 
begin            //New incomming call 
    Phone.Enabled:=false; 
    BtnDial.Enabled:=false; 
    DTMF.Enabled := false; 
    BtnSend.Enabled := false; 
    BtnAnswer.Enabled := true; 
    BtnHangup.Enabled := true; 
    BtnSend.Enabled := false; 
end 
end; 
 
procedure TFormCall.BtnHangupClick(Sender: TObject); 
begin 
    if FormMain.MobileSMS.CallHangup>0 then 
    begin 
        Phone.Enabled:= true; 
        DTMF.Enabled := false; 
        BtnSend.Enabled := false; 
        BtnDial.Enabled := true; 
        BtnAnswer.Enabled := false; 
        BtnHangup.Enabled := false; 
    end 
    else 
        ShowMessage('Failed!'); 
end; 
 
procedure TFormCall.BtnAnswerClick(Sender: TObject); 
begin 
if FormMain.MobileSMS.CallAnswer > 0 then 
begin 
    Phone.Enabled:=false; 
    DTMF.Enabled := true; 
    BtnSend.Enabled := true; 
    BtnHangup.Enabled := true; 
end 
else 
    ShowMessage('Answer fail!'); 
end; 
 
procedure TFormCall.BtnDialClick(Sender: TObject); 
begin 
if FormMain.MobileSMS.CallDial(Phone.Text,20)>0 then 
begin 
    BtnDial.Enabled := false; 
    DTMF.Enabled := true; 
    BtnSend.Enabled := true; 
    BtnHangup.Enabled := true; 
end 
else 
    ShowMessage('Failed!'); 
end; 
 
procedure TFormCall.BtnSendClick(Sender: TObject); 
begin 
if FormMain.MobileSMS.CallSendDTMF(DTMF.Text)>0 then 
    DTMF.Text:='' 
else 
    ShowMessage('Fail!'); 
end; 
 
procedure TFormCall.BtnCancelClick(Sender: TObject); 
begin 
Close(); 
end; 
 
end.