[잔디 커넥트] 구글 설문 참여자에게 문자 보내기
안녕하세요! 잔디 CX(Customer Experience, 고객 경험) 팀입니다.
구글 설문지 응답완료 시, 설문 참여자에게는 SMS 문자를, 설문 개설자에게는 잔디 메시지를 발송할 수 있는 방법을 알려드릴게요!
1. 준비물
1) 구글 설문지 정보 전달은 GAS(Google Apps Script) 를 활용합니다.
2) 쿨에스엠에스 의 api_key
와 api_secret
를 준비해주세요.
SMS 발송을 위해서 쿨에스엠에스(coolsms) 가입이 필요합니다. (1건당 20원, 일 300건 제한)
로그인 – 환경설정 – API Key 관리 화면으로 이동합니다.
3) JANDI의 Incoming Webhook URL
을 만들어주세요.
설문 응답 알림을 받으려는 대화방 상단에 ‘잔디 커넥트’ 아이콘을 클릭해 연동하기를 시작합니다.
맨 하단에 ‘Webhook 수신 (Incoming Webhook) 연동 항목 추가하기를 완료합니다.
[설정 저장하기] 버튼을 클릭해 잔디 커넥트 항목 생성을 완료합니다.
- 웹훅 URL에 있는 Incoming Webhook URL은 ‘복사하기’ 버튼을 클릭해 복사합니다.
- 알림봇을 연동할 토픽을 선택합니다. 별도 토픽을 새로 만들어야 할 경우, ‘토픽 생성하기’ 버튼을 클릭합니다.
- 연동 서비스 프로필 설정에서 메시지 프로필 이미지와 이름을 설정합니다.
2. 구글 설문지 작성하기
예시로 신청자의 이름과 전화번호를 입력받는 설문을 만들어볼게요.
1) 설문지 작성 후 [스크립트 편집기] 메뉴를 클릭해 스크립트 편집기를 추가합니다.
2) 아래와 같이 코드를 작성 후 저장합니다.
아래와 같이 코드를 작성합니다. 이 중 4개의 값은 본인의 쿨에스엠에스 계정과 잔디 웹훅 URL에 맞게 수정합니다.
- 각자 수정할 부분 :
api_key
,api_secret
,incoming webhook url
,from
function myFunction() {
var form = FormApp.getActiveForm();
var lastLine = FormApp.getActiveForm().getResponses().length;
// 최근, 마지막
var name = form.getResponses()[lastLine - 1].getItemResponses()[0].getResponse(); // 이름
var phone = form.getResponses()[lastLine - 1].getItemResponses()[1].getResponse(); // 전화번호
var message = '이름 : ' + name + '\n' + '전화번호 : ' + phone;
// jandi 설정
var jandi_incoming_url = "https://wh.jandi.com/connect-api/webhook/13352731/2d4cd8c41be1cae130123476758f0xxxxx"; //수정1
var jandi_headers = {
"Accept": "application/vnd.tosslab.jandi-v2+json",
"Content-type": "application/json",
};
var jandi_formData = {
"body": message
};
var jandi_options = {
"method": "POST",
"payload": JSON.stringify(jandi_formData),
"headers": jandi_headers,
};
response = UrlFetchApp.fetch(jandi_incoming_url, jandi_options);
// coolsms 설정
var api_key = 'NCS4FDQ4ZB2XXXXX'; //수정2
var api_secret = 'QIZYGNSDUFY8SFZQDQ0BYWUXJXOXXXXX'; //수정3
var timestamp = '' + Math.round((new Date()).getTime() / 1000);
var salt = '' + new Date().getTime();
var hmac_data = '' + timestamp + salt;
var binSignature = Utilities.computeHmacSignature(Utilities.MacAlgorithm.HMAC_MD5, hmac_data, api_secret);
var hexSignature = Utilities.base64Encode(binSignature);
var payload = {
'api_key': api_key,
'api_secret': api_secret,
'timestamp': timestamp,
'salt': salt,
'encoding': 'base64',
'signature': hexSignature,
'to': phone,
'from': '01012341234', //수정4 coolsms에서 등록한 보내는 전화번호
'text': '이름 : ' + name + '\n' + '전화번호 : ' + phone
};
var sms_options = {
'method': 'post',
'payload': payload
}
response = UrlFetchApp.fetch("https://api.coolsms.co.kr/1/send", sms_options);
}
코드를 모두 작성 후, Project Name을 입력합니다.
3) 트리거를 추가합니다.
시계모양 아이콘을 클릭해 ‘현재 프로젝트의 트리거’를 추가합니다.
트리거의 이벤트 유형 선택은 양식 제출 시
, 트리거 실패 알림 설정은 즉시 알림
으로 변경합니다.
구글 계정 로그인 완료 이후에 설문지 응답에 맞는 트리거가 추가됨을 확인할 수 있습니다.
3. 구글 설문지 응답해보기
1) 이제 설정이 완료된 설문지 링크를 공유하고, 설문에 응답해보겠습니다.
위의 설문링크를 통해 접속해 입력 항목을 채우고 설문지를 제출합니다.
2) 제출이 완료되면, 설문 참여자에게는 SMS 문자가 발송되고, 설문 개설자에게 JANDI 메시지가 발송됩니다.
<설문 참여자에게 보내진 문자 메시지><설문 개설자에게 보내진 잔디 메시지>
3) 쿨에스엠에스 에서 발송된 전체 SMS 결과 리스트도 확인할 수 있습니다.
짠? 생각보다 간단하게 구글 설문지 응답 현황을 관리할 수 있겠죠? 구글 설문지를 잔디와 연결하는 다른 방법도 아래 글을 참고해보시면 좋을 것 같습니다.
또 알찬 스마트워크 사례를 가지고 돌아오도록 할게요~
잔디 공인 컨설턴트 JCC 1기 이청규의 글이었습니다!
JCC 이청규 님의 다른 잔디 활용글 보러가기
- JENNIFER 연동으로 서비스 상태 모니터링 하기
- JIRA 담당자 지정 알림 잔디로 보내기(Team Incoming Webhook 활용법)
- WhaTap(와탭) 연동으로 URL 상태 모니터링하기
- Feedly로 기술 블로그의 최신글을 모아서 볼 수 없을까?
- 잔디 메시지 번역 봇 만들기 – 구글, 파파고 API 활용법