Skip to content

Demo project and OnGetQrCode parameters issues #91

@mbnoimi

Description

@mbnoimi

Hi,

I'm building my first basic example but I couldn't figure out the correct parameters of OnGetQrCode.
I tried to use:

procedure(Sender: TObject; const QrCode: string; AImage: TBitmap)

but didn't work. May you please help me to fix it?

unit MaintForm;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
  Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls,
  uTWPPConnect;

type
  TMainForm = class(TForm)
    btnSendMessage: TButton;
    edtPhoneNumber: TEdit;
    memoMessage: TMemo;
    lblStatus: TLabel;
    imgQrCode: TImage;
    procedure btnSendMessageClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    WPP: uTWPPConnect.TWPPConnect;
    procedure UpdateStatus(Status: string);
  public
    { Public declarations }
  end;

var
  MainForm: TMainForm;

implementation

{$R *.dfm}

procedure TMainForm.FormCreate(Sender: TObject);
begin
  {$IFDEF CEFCurrentVersion}
  ShowMessage('CEFCurrentVersion is defined');
  {$ELSE}
  ShowMessage('CEFCurrentVersion is not defined');
  {$ENDIF}

  WPP := uTWPPConnect.TWPPConnect.Create(Self);

  //-----> [dcc32 Error] MaintForm.pas(48): E2009 Incompatible types: 'Parameter lists differ'
  WPP.OnGetQrCode := procedure(Sender: TObject; const QrCode: string; AImage: TBitmap)
  begin
    imgQrCode.Picture.Assign(AImage);
  end;

  UpdateStatus('Not Connected');
end;

procedure TMainForm.UpdateStatus(Status: string);
begin
  lblStatus.Caption := 'Status: ' + Status;
end;

procedure TMainForm.btnSendMessageClick(Sender: TObject);
var
  TargetNumber, MessageText: string;
begin
  TargetNumber := edtPhoneNumber.Text + '@c.us';
  MessageText := memoMessage.Lines.Text;

  if WPP.Auth(True) then
  begin
    UpdateStatus('Connected');
    WPP.Send(TargetNumber, MessageText);
  end
  else
  begin
    UpdateStatus('Authentication required. Please scan the QR code.');
    ShowMessage('Authentication failed. Please scan the QR code.');
  end;
end;

end.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions