.NET WhatsApp Cloud API

· 컴포넌트

sgcWebSockets 2022.6.0부터 .NET에서 WhatsApp Cloud API를 지원해요.

클라우드 호스팅 버전의 WhatsApp Business Platform을 사용해 메시지를 보내고 받을 수 있어요. Cloud API를 이용하면 자체 서버 호스팅 비용 없이 WhatsApp Business API를 구현할 수 있고, 비즈니스 메시징을 더 쉽게 확장할 수 있어요. Cloud API는 텍스트 및 미디어 메시지를 포함해 초당 최대 80개의 메시지 송수신을 지원해요.

WhatsApp Business API를 통해 중소·대기업은 고객과 대규모로 소통할 수 있어요. API를 활용해 수천 명의 고객을 상담원이나 봇과 연결하는 시스템을 구축할 수 있으며, 프로그래밍 방식과 수동 방식 모두 지원해요. 또한 CRM이나 마케팅 플랫폼 같은 다양한 백엔드 시스템과 통합할 수 있어요.

기능 

Cloud API를 사용하면 새로운 기능을 더 빠르게 이용할 수 있어요. 현재 WhatsApp Business Cloud API는 WhatsApp Business API에서 제공하는 모든 기능을 포함하고 있어요.

WhatsApp Cloud API의 주요 기능:

시작하기 

테스트 번호로 첫 번째 메시지를 보내고 받으려면 다음 단계를 완료해 주세요:

1. 개발자 자산 및 플랫폼 접근 설정

앱 대시보드에서 WhatsApp에 연결하려는 앱을 클릭하세요. 아래로 스크롤해 "WhatsApp" 제품을 찾고 설정을 클릭하세요.

다음으로 기존 Business Manager를 선택하거나(있는 경우), 온보딩 프로세스에서 자동으로 생성하도록 선택할 수 있어요(나중에 비즈니스를 커스터마이즈할 수 있어요). 선택 후 계속을 클릭하세요.

계속을 클릭하면 온보딩 프로세스가 다음 작업을 수행해요:

2. 테스트 메시지 보내기

이제 IDE를 열고 새 프로젝트를 만드세요. TsgcWhatsapp_Client 컴포넌트를 추가하고 다음 속성을 입력하세요:

이 두 가지 속성을 올바르게 설정한 후 SendTest 메서드를 호출하면 WhatsApp Business Platform을 통해 전화번호로 첫 번째 메시지를 보낼 수 있어요.

TsgcWhatsapp_Client oClient = new TsgcWhatsapp_Client();
oClient.WhatsappOptions.PhoneNumberId = "107809351952205";
oClient.WhatsappOptions.Token = "EAAO4OpgZAs98BAGj3nCFGr...ZB2t8mmLB2LRXJkte2Y5PMNh2";
oClient.SendTest("34605889421"); 

3. 웹훅 설정하기

메시지를 받거나 메시지 상태가 변경될 때 알림을 받으려면 앱에 Webhooks 엔드포인트를 설정해야 해요. Webhooks 설정은 전화번호 상태에 영향을 미치지 않으며 메시지 송수신을 방해하지 않아요.

시작하려면 먼저 엔드포인트를 생성해야 해요. WhatsApp 클라이언트 컴포넌트의 ServerOptions 속성을 구성하고 다음 속성을 설정하세요:

서버 설정 후 StartServer 메서드를 사용해 서버를 시작하고 들어오는 요청을 수락할 수 있어요.

TsgcWhatsapp_Client oClient = TsgcWhatsapp_Client.Create();
oClient.ServerOptions.WebhookOptions.Endpoint = "/webhook";
oClient.ServerOptions.WebhookOptions.Token = "MySecretToken";
oClient.StartServer(); 

엔드포인트가 준비되면 앱 대시보드로 이동하세요.

앱 대시보드에서 WhatsApp 제품을 찾아 Configuration을 클릭하세요. 그런 다음 webhooks 섹션을 찾아 Configure a webhook을 클릭하세요. 클릭 후 화면에 대화 상자가 나타나며 두 가지 항목을 요청해요:

정보를 입력한 후 확인 및 저장을 클릭하세요.

앱 대시보드로 돌아가서 왼쪽 패널에서 WhatsApp > Configuration을 클릭하세요. Webhooks 아래에서 Manage를 클릭하세요. 알림을 받을 수 있는 모든 객체가 포함된 대화 상자가 열려요. 사용자로부터 메시지를 받으려면 messages에 대해 Subscribe를 클릭하세요.

4. 테스트 메시지 받기

새 메시지가 수신될 때마다 클라이언트 이벤트 OnMessageReceived가 호출돼요.

void OnWhatsAppMessageReceived(TsgcWhatsApp_Client Sender, TsgcWhatsApp_Receive_Message Message, ref bool MarkAsRead)
{
  DoLog("Message Received: [" + Message.From + "] " + Message.Text);
  MarkAsRead = true;
} 


Webhook이 설정됐으면, 사용한 테스트 번호로 메시지를 보내세요. 메시지 내용이 담긴 Webhooks 알림을 즉시 받을 수 있어요!

아래에서 공개 온라인 WhatsApp 봇 데모를 확인하세요. 텍스트 메시지를 보내면 시작돼요.

WhatsApp Bot

sgcWebSockets 라이브러리로 만들어졌어요. 텍스트 메시지를 보내면 봇이 옵션 목록을 표시하거나 메시지를 그대로 반환해요. https://www.esegece.com/demo/whatsapp

아래에서 Windows용 컴파일된 WhatsApp 데모를 확인하세요.