WhatsApp 云 API

从 Delphi/C++ Builder 通过 WhatsApp 云 API 发送模板、文本、媒体和交互式消息。内置 HTTPS Webhook 监听器用于接收入站事件。

TsgcWhatsApp_Client

WhatsApp 商业云 API 的 Delphi/C++ Builder 客户端。通过 HTTPS 发送消息,托管 Webhook 端点以接收送达和状态事件。

组件类

TsgcWhatsApp_Client

支持平台

Windows, macOS, Linux, iOS, Android

版本

Professional / Enterprise

设置令牌,发送消息,托管 Webhook

设置 WhatsAppOptions.Token 和 PhoneNumberId,调用 SendMessage... 方法发送消息,然后调用 StartServer 并绑定 OnMessageReceived 以接收回复。

uses
  sgcLibs;

var
  WhatsApp: TsgcWhatsApp_Client;
begin
  WhatsApp := TsgcWhatsApp_Client.Create(nil);
  WhatsApp.WhatsAppOptions.PhoneNumberId := '123456789012345';
  WhatsApp.WhatsAppOptions.Token := 'EAAG...';

  WhatsApp.SendMessageText('+34666555444', 'hello from Delphi');

  WhatsApp.OnMessageReceived := WhatsAppMessageReceived;
  WhatsApp.StartServer;
end;

procedure TForm1.WhatsAppMessageReceived(Sender: TObject;
  const aMessage: TsgcWhatsApp_Receive_Message;
  var aMarkAsRead: Boolean);
begin
  Memo1.Lines.Add(aMessage.RawMessage);
  aMarkAsRead := True;
end;
// include: sgcLibs.hpp

TsgcWhatsApp_Client *WhatsApp = new TsgcWhatsApp_Client(this);
WhatsApp->WhatsAppOptions->PhoneNumberId = "123456789012345";
WhatsApp->WhatsAppOptions->Token = "EAAG...";

WhatsApp->SendMessageText("+34666555444", "hello from Delphi");

WhatsApp->OnMessageReceived = WhatsAppMessageReceived;
WhatsApp->StartServer();

void __fastcall TForm1::WhatsAppMessageReceived(TObject *Sender,
    TsgcWhatsApp_Receive_Message * const aMessage, bool &aMarkAsRead)
{
  Memo1->Lines->Add(aMessage->RawMessage);
  aMarkAsRead = true;
}

内部功能

将 HTTPS 云 API 客户端与内置 Webhook HTTPS 服务器结合,使单个 Delphi 进程处理出站和入站流量。

发送消息

SendMessageText、SendMessageTemplate、SendMessageImage/Document/Audio/Video、SendMessageInteractiveList、SendMessageInteractiveButtons、SendMessageLocation 和 SendMessageContact 涵盖主要的云 API 内容类型。

Webhook 监听器

组件启动自带的嵌入式 HTTPS 服务器(StartServer/StopServer,通过 ServerOptions 配置),用于托管 Meta 所需的验证与送达 webhook。OnMessageReceived 和 OnMessageSent 传递类型化事件,OnRawMessage 则暴露未经处理的原始 JSON。

身份验证

通过 WhatsAppOptions.Token 进行 OAuth Bearer 身份验证;webhook 验证握手会自动与 ServerOptions.WebhookOptions.Token 进行比对,OnBeforeSubscribe 则让您的应用再有一次机会接受或拒绝该订阅。

模板参数

SendMessageTemplate 接受命名/位置参数和语言代码,组件会构建 Meta 所需的类型化结构。

媒体上传

使用本地文件路径调用 SendFileImage、SendFileDocument、SendFileAudio、SendFileVideo 或 SendFileSticker,组件会通过 UploadMedia 自动上传该文件,并自动引用返回的 media id。DownloadMedia 和 DeleteMedia 用于管理已存放在 Meta 服务器上的媒体资源。

TLS 安全 Webhook

为入站 webhook 配置 ServerOptions.SSLOptions——Meta 要求 Webhook 必须可通过 TLS 访问。顶层的 TLSOptions 则单独负责处理对 Graph API 的出站 HTTPS 调用。

规范与参考

本组件实现的 API 的权威来源。

文档与演示

直接访问组件参考文档,获取即用型演示项目,并下载试用版。

在线帮助 — API_Whatsapp 本组件的完整属性、方法和事件参考。
演示项目 — Demos\50.Other\05.WhatsApp 即用型示例项目,随 sgcWebSockets 包提供——请在下方下载试用版。
技术文档 (PDF) 本组件的功能介绍、快速入门、Delphi & C++ Builder 代码示例及主要来源参考。
用户手册 (PDF) 涵盖库中所有组件的综合手册。
超值之选:All-AccesseSeGeCe 全部产品,含高级支持,每年 €1,059 起。
查看 All-Access 价格

准备好发送 WhatsApp 消息了吗?

下载免费试用版,将 WhatsApp 云 API 集成到您的 Delphi 应用程序中。