Tasker를 이용해서 카톡 메시지 오면 문자(sms)보내기

왜 이런짓을 하게 되었냐면

메인으로 쓰는 폰(카톡받는폰)이 옵티머스 G 프로라서 항상 들고다니기에는 부담스러워서 이동중에는 가방속에 넣고 다녀서 카톡이 와도 모르고 지나치는 일이 많이 생겼기 때문. 알림 켜서 소리나 진동 나면 바로 알겠지만 무음모드 끄는걸 자주 까먹어서....


1. 먼저 profile 등록을 함. Event -> UI -> Notification


2. Owner Application에서 카카오톡을 선택하고 Title은 Optional이니 생략해도 무방함

그 후에 Task를 등록하는데 Phone->Send SMS 선택




3. Number에는 문자 받을 휴대폰 번호, Message는 받을 메시지 내용을 적으면 되는데 %NTITLE은 Notification의 제목인데, 카톡에서는 사용자 이름~메시지 초반부에 해당하고 %TIME은 해당 이벤트 발생한 시간인데 hh:mm 형식임. 스크린샷 찍을때 순서가 바뀌었는데

%TIME %NTITLE순서로 해야 보기 편하겠지....


Store In Messaging App에 체크해놓으면 보낸 SMS가 기본 메시지 앱의 보낸 내역에 저장됨



여기까지만 해놔도 일단 카톡 메시지 받으면 SMS보내는데는 지장 없음. 실제 SMS는 아래처럼 옴 (00시 17분에 Test라는 사람이 테스트라는 메시지를 보냄)



그런데 단톡방같은데서 포풍카톡을 받는다면??? 무료문자도 폭풍처럼 다 써버리고 SMS발송비용이 엄청나게 나올 일이 생길지도 모름

그래서 SMS발송 개수 제한을 둘 필요가 있는데

나는 최근 3분 안에 SMS를 보냈다면 SMS을 안보내는 방식으로 제한을 두기로 했음


그러기 위해서는 변수(Variable)설정이 필요한데 Variable은 Variables -> Variable Set에서 추가 가능하고 사칙연산을 해야 할 경우에는 Do Maths에 체크해야함


여기서는 %Elapsedsec와 %LastSent 두개를 설정했다.

%Elapsedsecs는 SMS를 보낸 후 경과한 시간(현재시간 - 마지막으로 보낸 시간)을 저장할거고

%LastSent는 SMS를 보낸 시간(%TIMES = Tasker에 미리 지정된 변수, 현재 시간을 초단위로 반환함)을 저장한다


아래처럼 해놓으면 마지막으로 SMS 보낸지 180초가 경과하지 않았다면 SMS 안보냄ㅋ