클라우드 코드로 Twilio API를 통한 WhatsApp 메시지 전송 가이드
클라우드 기능을 사용하여 Twilio API를 통해 WhatsApp 메시지 전송하기
소개
이 가이드에서는 Twilio의 간소화된 REST API를 사용하여 WhatsApp 메시지를 쉽게 전송하는 방법을 설명합니다. 이 튜토리얼을 완료한 후에는 클라우드 코드 기능을 사용하여 고객에게 WhatsApp 메시지를 전송할 수 있습니다. 그럼 본론으로 들어가 보겠습니다.
전제 조건
이 튜토리얼을 완료하려면 다음이 필요합니다:
- Back4App에서 생성된 앱.
- 프로젝트에 구성된 Back4App 명령줄.
시작해봅시다!
여러분이 아시다시피, 페이스북 소속의 WhatsApp은 최근 기업이 고객과 원활하게 통합하고 소통할 수 있도록 비즈니스 API의 첫 번째 버전을 출시했습니다. 이 WhatsApp 서비스를 비즈니스 API에 사용함으로써, 기업은 예약 확인, 약속 알림, 배송 알림과 같은 관련성 있는 비홍보 메시지를 선택한 고객에게 맞춤형 알림을 보낼 수 있습니다.
Twilio는 WhatsApp 비즈니스 API와 즉시 소통하고 프로토타입을 만들 수 있는 강력한 기능을 제공하는 클라우드 통신 플랫폼입니다. 현재 Twilio의 WhatsApp API는 베타 버전이며, WhatsApp 사용자에게 텍스트 메시지만 보낼 수 있습니다. 즉, 이 서비스로는 아직 사용자에게 이미지, 오디오, 비디오 및 PDF 파일을 보낼 수 없습니다.
사용자에게 WhatsApp 메시지를 보내거나 받는 데 사용되는 기능은 “Twilio 샌드박스”입니다. 사용자의 WhatsApp 번호로 메시지를 보내려면 먼저 샌드박스를 활성화해야 하며, 샌드박스에 참여할 번호를 활성화해야 합니다. 1단계에서는 WhatsApp을 위한 Twilio 샌드박스를 활성화하는 방법을 설명합니다.
참고: Twilio 샌드박스에는 일부 제한 사항이 있습니다, 주요 제한 사항은 특정 샌드박스에 가입한 사용자와만 메시지를 주고받을 수 있다는 것입니다. 그러나 자신의 Twilio 번호를 사용하여 WhatsApp을 활성화하면 이 제한을 극복할 수 있습니다. 자신의 번호에서 WhatsApp을 활성화하려면 Twilio 콘솔에 직접 승인 요청을 제출해야 합니다.
이 가이드에서는 간단한 REST API를 사용하여 WhatsApp에서 직접 메시지를 보내고 받을 수 있는 방법을 설명합니다. 우리는 메시지를 보내기 위해 Twilio API와 상호작용하는 클라우드 기능을 작성하고 구현할 것입니다. 이 기능은 저장 이벤트에 의해 트리거되며, 우리는 이 기능을 AfterSave라고 부릅니다.
Twilio에서 계정을 생성하거나 액세스하려면 아래 링크를 확인하세요:
1 - WhatsApp 베타 활성화
기존 계정에 로그인하면 프로젝트로 리디렉션됩니다. 그러나 새로운 사용자라면 먼저 프로젝트를 생성하고 프로그래머블 SMS를 제품에서 선택해야 합니다. 이제 콘솔에서 최근에 생성된 프로젝트를 볼 수 있어야 합니다. 다음으로, 프로그래머블 SMS를 클릭하고 4번째 옵션 WhatsApp 베타를 선택한 다음 해당 섹션에 제공된 단계를 따라 WhatsApp용 Twilio 샌드박스를 활성화해야 합니다. 아래와 같이:

2 - 계정 SID 및 인증 토큰 가져오기
당신의 계정 SID와 인증 토큰, Twilio 계정에 로그인하고 대시보드로 이동하여 설정을 클릭하세요. 프로젝트에 대한 모든 중요한 정보는 해당 섹션에서 확인할 수 있습니다. 아래 이미지에 표시된 대로 모든 지침을 따르도록 하세요:

이제 Cloud Code를 위한 SID와 인증 토큰을 복사할 수 있습니다.
3 - Twilio에서 모듈 설치하기
컴퓨터에서 명령줄 인터페이스를 위한 환경을 구성한 후, package.json이라는 파일을 만들고, 이 파일 안에 Twilio 모듈을 설치해야 합니다. 예를 들어:
1 {
2 "dependencies": {
3 "twilio": "*"
4 }
5 }4 - Cloud Code 구현하기
이 섹션에서는 Cloud Functions를 사용하는 방법을 보여드리겠습니다.
우리는 객체가 저장되었다는 확인 메시지를 활성화하고 전송하기 위해 afterSave 트리거 함수를 구축할 것입니다.
1 Parse.Cloud.afterSave("Contact", (request) => {
2
3 // Requiring the values to send
4 var
5 getPhoneTo = request.object.get("phone"),
6 getFirstName = request.object.get("firstName"),
7 getPhoneFrom = "+Your Phone number", //Remember to replace your number enable on Twilio Sandbox
8 accountSid = 'AccountSID',
9 authToken = 'AuthToken',
10 getMessage = "Welcome " + getFirstName +", to Twilio App! Thank you for your interest, our team will contact you ASAP! ;)";
11
12 //require the Twilio module and create a REST client
13 var client = require('twilio')(accountSid, authToken);
14
15 client.messages
16 .create(
17 {
18 from: "whatsapp:" + getPhoneFrom,
19 body: getMessage,
20 to: "whatsapp:" + getPhoneTo
21 })
22 .then(message => console.log(message.sid))
23 .done();
24 });5 - AfterSave 트리거 테스트
이제 AfterSave 트리거를 생성하고 활성화했으므로, 기능이 제대로 작동하는지 테스트할 시간입니다. 클라이언트 SDK에서도 기능을 테스트할 수 있지만, 지금은 REST API 명령을 사용하여 새 사용자를 저장하겠습니다:
curl -X POST \
-H "X-Parse-Application-Id: ${APPLICATION_ID}" \
-H "X-Parse-REST-API-Key: ${REST_API_KEY}" \
-H "Content-Type: application/json" \
-d '{"firstName":"Natália", "phone":"+0000000000000"}' \
https://parseapi.back4app.com/classes/Contact결과는 아래 스크린샷과 유사할 것입니다.

6 - 완료되었습니다!
위에서 설명한 가이드를 통해, Back4App에서 Cloud Code Function을 사용하여 Twilio와 함께 WhatsApp 메시지를 선택한 고객에게 보낼 수 있습니다!
도움이 필요하시거나 기능/링크가 작동하지 않는 경우, 채팅을 통해 저희 팀에 문의해 주세요!