원격 제어

원격 제어를 사용하면 다른 휴대폰에서 본인 휴대폰으로 짧은 SMS 한 통을 보내 SmsForwarder가 대신 작업을 수행하도록 할 수 있습니다 — 대신 SMS 답장을 보내거나, 전달을 켜고 끄거나, 앱 상태를 조회하거나, 휴대폰이 온라인인지 확인하거나, Google Play와 구독 상태를 다시 동기화하거나, (Advanced 구독이 있는 경우) 자연어로 지시를 내릴 수 있습니다.

명시적으로 허용 목록에 추가한 전화번호만 이러한 명령을 보낼 수 있습니다. 공유 비밀번호는 없으며, 발신자의 전화번호 자체가 자격 증명입니다.

시작하기 전에

  1. 앱 설정에서 원격 제어 를 엽니다.
  2. 원격 제어 메인 스위치를 켭니다.
  3. 허용된 전화번호 를 최소 한 개 추가합니다. 국제 형식 전체(예: +821012345678)로 입력하세요.
  4. 명령 결과를 받을 방식을 선택합니다 — 아래 응답 받기 참조.
  5. #REPLY를 사용할 계획이거나 발신자에게 SMS로 회신을 받으려면 SMS 보내기 권한이 부여되어 있는지 확인하세요.

명령 형식

각 명령은 허용된 번호에서 본인 휴대폰으로 보낸 평범한 SMS입니다. 비어 있지 않은 첫 줄은 항상 명령 키워드(#로 시작)이며, 추가 정보가 필요한 명령에서는 각 값이 자기 줄에 들어갑니다.

명령 자체는 일반 SMS로 전달되지 않습니다 — 앱이 인식하여 소비합니다.

#REPLY — 대신 SMS 답장 보내기

휴대폰을 손에 들고 있지 않을 때, 누군가에게 대신 SMS를 보내고 싶을 때 사용합니다.

형식:

#REPLY
<수신자 전화번호>
<답장 본문>

SIM 지정(선택 사항, 듀얼 SIM 휴대폰 — 어느 SIM으로 보낼지 고정):

#REPLY
#<본인 SIM 전화번호>
<수신자 전화번호>
<답장 본문>

SIM 지정 줄은 #로 시작하고 마지막 8자리로 매칭됩니다. 단일 SIM 휴대폰이거나 시스템 기본 SIM을 사용하려면 이 줄을 생략하세요.

예시:

#REPLY
+821012345678
가는 중입니다. 10분 안에 도착해요.
#REPLY
#15557654321
+14155550123
이건 두 번째 SIM으로 보내줘.

참고:

  • 수신자에게는 원래 발신자의 번호가 아니라 본인 휴대폰 번호에서 보낸 답장으로 표시됩니다.
  • SMS 보내기 권한이 필요합니다. 권한이 없거나 취소되어 있으면 이 명령은 실행할 수 없습니다.
  • 답장 본문은 여러 줄이어도 됩니다.

#CTRL — 규칙, 채널, 메인 스위치 켜기/끄기

휴대폰을 만지지 않고도 전달 규칙, 전송 채널, 메인 스위치를 토글할 수 있습니다.

형식:

#CTRL
<대상>
<이름 또는 범위>
<ON 또는 OFF>
  • 대상RULE, CHANNEL, FORWARDING 중 하나입니다(대소문자 구분 없음).
  • 이름 또는 범위 는 대상에 따라 달라집니다:
    • RULE — 앱에 표시되는 정확한 규칙 이름(대소문자 구분, 고유해야 함).
    • CHANNEL — 앱에 표시되는 정확한 채널 이름(대소문자 구분, 고유해야 함).
    • FORWARDINGSMS, CALL, NOTIFICATION(또는 NOTIFY), ALL 중 하나.
  • ON / OFF1 / 0, TRUE / FALSE, YES / NO 로도 작성할 수 있습니다.

예시:

특정 규칙 켜기:

#CTRL
RULE
급여 입금 알림
ON

SMS 전달 메인 스위치 끄기:

#CTRL
FORWARDING
SMS
OFF

전송 채널 끄기:

#CTRL
CHANNEL
내 Telegram
OFF

한 번에 모두(SMS, 통화, 알림) 끄기:

#CTRL
FORWARDING
ALL
OFF

참고:

  • 이 명령은 메인 SMS 전달이 꺼져 있어도 동작 합니다 — 따라서 원격에서 다시 켜는 용도로도 사용할 수 있습니다.
  • 규칙과 채널 이름은 고유해야 합니다. 두 규칙이 같은 이름을 공유하면 잘못된 대상에 작용하는 것을 막기 위해 명령이 거부됩니다.
  • 규칙과 채널 이름은 대소문자와 공백을 포함해 정확히 일치해야 합니다.

#STATUS — 현재 무엇이 켜져 있는지 확인하기

읽기 전용 조회. 메인 스위치 상태와 켜져 있는 모든 규칙, 채널 이름을 반환합니다.

형식:

#STATUS

응답 예시:

[원격] 상태
전달 · SMS on · 통화 off · 알림 off
규칙 (2): 급여 입금 알림, OTP
채널 (1): 내 Telegram

규칙과 채널 수에 따라 응답이 여러 SMS 세그먼트에 걸쳐 올 수 있습니다. 통신사 요금은 세그먼트 단위로 부과됩니다.

#PING — 휴대폰 생존 확인

읽기 전용 조회. 휴대폰의 현재 상태 스냅샷을 반환합니다 — 휴대폰이 깨어 있고 온라인이며 배터리가 거의 없는 상태가 아닌지만 확인하고 싶을 때 유용합니다.

형식:

#PING

응답 예시:

[원격] Pixel 7 · 2026-05-01 14:35
배터리 73% · 충전 중
절전 모드: off
네트워크: Wi-Fi · 인터넷 정상

휴대폰이 모바일 데이터를 사용 중이라면 응답에는 네트워크 세대, 통신사, (Android 10 이상에서) 0–4단계의 신호 강도도 포함됩니다:

[원격] OnePlus 9 · 2026-05-01 14:35
배터리 45% · 배터리 사용
절전 모드: on
네트워크: 모바일 · 인터넷 정상
모바일: 5G · 통신사
신호: 3/4

참고:

  • 듀얼 SIM 휴대폰에서는 신호 강도가 데이터 SIM 기준으로 표시되며, 이는 명령을 수신한 SIM과 다를 수 있습니다.
  • #PING 은 메인 전달 스위치 상태와 관계없이 실행됩니다.

#HELP — 본 문서 링크 받기

읽기 전용 조회. 이 온라인 명령 레퍼런스에 대한 링크를 반환합니다. 다른 사람과 문서를 공유하거나, 명령의 정확한 형식이 기억나지 않아 찾아보고 싶을 때 유용합니다.

형식:

#HELP

응답 예시:

[원격] 명령 레퍼런스: https://smsforward.zobubo.com/Remote-Control/

현재 #HELP 는 기본적으로 영어 페이지를 반환하며, 앱이 중국어인 경우에만 중국어 버전을 반환합니다. 그 외 언어는 아직 영어 페이지로 폴백됩니다 — 해당 페이지에 모든 명령이 정리되어 있습니다. #HELP 는 메인 전달 스위치 상태와 관계없이 실행됩니다.

#REFRESH — Google Play와 구독 상태 다시 동기화하기

읽기 전용 조회. 휴대폰에 대해 이 기기에 로그인된 Google 계정의 활성 구독 상태를 즉시 Google Play에 다시 조회하고, 반환된 내용으로 로컬 구독 상태를 덮어쓰도록 지시합니다.

다른 휴대폰에서 다시 구독했거나(혹은 방금 결제했고) 매일 한 번 실행되는 백그라운드 점검을 기다리지 않고 이 휴대폰에서 새 권한을 즉시 반영하고 싶을 때 사용합니다.

형식:

#REFRESH

응답 예시:

[원격] 구독 갱신 완료: 월간 요금제 사용 중
[원격] 구독 갱신 완료: 연간 요금제 사용 중
[원격] 갱신 완료: 이 Google 계정에 활성 구독이 없습니다
[원격] 갱신 실패: Google Play에 연결할 수 없습니다. 네트워크를 확인한 후 다시 시도하세요.

참고:

  • 휴대폰에 네트워크 액세스와 정상적인 Google Play 연결이 필요합니다. 둘 중 하나라도 불가능하면 명령은 실패를 보고하고 로컬 구독 상태는 변경되지 않습니다.
  • 조회는 기기에 현재 로그인되어 있는 Google 계정을 사용합니다. 그 계정이 구독을 보유한 계정인지 확인하세요.
  • 로컬 구독이 이미 만료된 상태에서도 #REFRESH 는 실행됩니다 — 그것이 이 명령이 노리는 복구 경로입니다. 메인 전달 스위치 상태와도 무관하게 실행됩니다.
  • 동작은 멱등적입니다: #REFRESH 를 반복해서 보내도 구독을 새로 구매하거나 해지하지 않으며, Google Play가 이미 알고 있는 정보를 다시 읽을 뿐입니다.

#AI — 자연어로 지시 보내기

구조화된 명령을 작성하는 대신, 일상 언어로 휴대폰에 지시를 내리고 싶을 때 사용합니다. SmsForwarder는 메시지를 설정된 클라우드 AI 공급자에게 전달해 기존 명령 중 하나로 다시 표현하도록 요청한 다음, 그 명령을 실행합니다 — 단, 결과가 여전히 허용된 키워드 중 하나에 대응될 때에만 실행됩니다.

형식:

#AI
<원하는 언어로 작성한 지시문>

예시:

#AI
+821012345678 에게 10 분 안에 도착한다고 답장해 줘
#AI
일단 모든 전달을 꺼 줘
#AI
지금 이 폰의 배터리와 신호는 어때?

사전 조건:

  • 기기에 로그인된 Google 계정에 활성화된 Advanced 구독이 있어야 합니다.
  • AI 메인 스위치가 켜져 있고, 설정 → AI 에서 AI 클라우드 경로가 구성되어 있어야 합니다 — Advanced 구독자의 기본값인 내장 클라우드(API 키 불필요), 또는 BYOK 공급자(Gemini, Claude, OpenAI) 와 정상 작동하는 API 키 중 하나여야 합니다.
  • 원격 제어 페이지에서 자연어 원격 명령 스위치가 켜져 있어야 합니다.

사전 조건 중 하나라도 충족되지 않으면 짧은 사유와 함께 명령이 거부됩니다.

참고:

  • #AI 는 항상 클라우드에서 실행됩니다. SmsForwarder 의 AI 처리는 설계상 클라우드 전용입니다.
  • AI가 생성한 텍스트는 #REPLY / #CTRL / #STATUS / #PING / #HELP / #REFRESH 와 동일한 허용 목록으로 다시 검사됩니다. 그 목록을 벗어난 것은 모두 폐기됩니다 — #AI 를 통해 새로운 명령이나 임의의 명령을 실행할 수는 없습니다.
  • 변환된 구조화 명령은 새 SMS로 재전송되지 않습니다. 사용자가 직접 해당 구조화 명령을 입력한 것과 동일한 방식으로 실행됩니다. 원본 #AI 텍스트와 변환된 명령은 감사 목적으로 전달 기록 상세 패널에 함께 저장됩니다.
  • 클라우드 공급자에 연결할 수 없거나 응답을 허용된 명령으로 해석할 수 없는 경우, 결과 메시지에 그 사유가 표시되며 그 외에 다른 동작은 발생하지 않습니다.

응답 받기

각 명령은 짧은 결과 메시지를 만들어 냅니다. 원격 제어 에서 다음 두 방식 중 하나 혹은 둘 다로 결과를 받을 수 있습니다:

  • 발신자에게 SMS 회신. 결과는 명령을 보낸 번호로 일반 SMS로 회신됩니다. SMS 보내기 권한이 필요합니다. 권한을 취소하면 이 옵션은 자동으로 꺼집니다.
  • 전송 채널로 푸시. 결과는 이미 설정된 전송 채널(Telegram, 이메일, 웹훅 등)을 통해 라우팅됩니다. 최대 10개 채널을 선택할 수 있습니다. 비활성화되었거나 설정되지 않은 채널은 건너뜁니다.

두 옵션은 서로 독립적입니다. 한 가지만 사용하거나 둘 다 사용하거나 둘 다 사용하지 않을 수 있습니다(둘 다 끄면 명령은 실행되지만 결과를 받을 수 없습니다).

자주 발생하는 오류

명령 형식이 잘못되면 다음과 같은 메시지를 받습니다:

[원격] 명령 거부됨: <사유>

대표적인 사유:

  • 수신자 누락#REPLY 에 대상 전화번호가 없음.
  • 답장 내용 누락#REPLY 에 본문이 없음.
  • 대상 누락#CTRL 두 번째 줄에 RULE, CHANNEL, FORWARDING 이 없음.
  • 알 수 없는 대상#CTRL 두 번째 줄이 위 세 가지 유효 값 중 하나가 아님.
  • 이름 누락#CTRL RULE 또는 #CTRL CHANNEL 에 이름이 없음.
  • ON / OFF 누락 — 토글 줄이 비어 있음.
  • 잘못된 토글 값 — 토글 줄이 인식되는 값이 아님.
  • 잘못된 범위#CTRL FORWARDINGSMS, CALL, NOTIFICATION / NOTIFY, ALL 외의 값이 옴.
  • "X" 라는 규칙 / 채널이 없음 — 이름이 어떤 규칙 또는 채널과도 일치하지 않음.
  • "X" 라는 규칙 / 채널이 둘 이상 있음 — 이름이 중복되어 있으니 앱에서 먼저 하나의 이름을 변경하세요.

알아두면 좋은 점

  • 허용 목록에 없는 번호에서 보낸 명령은 조용히 무시됩니다.
  • 허용 목록은 발신자 전화번호를 정확히 일치 비교합니다. 통신사가 전달하는 형식 그대로(앞에 + 가 붙은 국제 형식이 가장 신뢰할 수 있음) 등록하세요.
  • 명령 형태의 SMS는 인식되어 소비되므로 전달 기록에 "전달됨"으로 표시되지 않습니다.
  • 일부 응답 경로(예: SMS 회신)는 다른 모든 SMS와 마찬가지로 통신사의 SMS 사용량을 차감합니다.

명령이 예상대로 동작하지 않는 경우 기술 지원 페이지를 참고하세요.