FoneClaw Discord 연결 안 됨: 봇 DM, 대기열과 결과 전달 확인
FoneClaw의 Discord 연결이 안 될 때 봇 토큰, 계정 연결, 대기열과 Android 작업 상태를 나누어 확인하세요. 저장된 결과 전달을 복구하고 중복 실행을 피하는 방법을 안내합니다.
- FoneClaw의 Discord 연결은 텍스트 봇 DM 경로입니다. 연결, 요청 접수, 대기열, Android 실행과 결과 전달 중 어디에서 멈췄는지 먼저 구분하세요.
- 봇의 Message Content Intent를 켜고 토큰을 저장한 뒤 10분 안에 원하는 Discord 계정으로 DM을 보내 연결합니다. 처음 메시지를 보낸 계정이 연결되며 서버 채널은 요청 경로가 아닙니다.
- /status는 실행·대기 수를 확인하는 명령입니다. 휴대폰의 실제 권한·승인 상태와 저장 결과를 따로 확인하고, /stop이 완료한 작업을 되돌린다고 생각하지 마세요.
- /retry는 저장된 결과의 전달을 다시 요청하며 휴대폰 작업을 재실행하지 않습니다. 답장이 없더라도 일정이나 할 일이 이미 저장됐는지 확인한 뒤 새 요청을 판단하세요.
연결·요청 접수·실행·결과 전달 중 어디서 멈췄는지
FoneClaw Discord 연결이 안 되면 같은 작업을 다시 보내기 전에 휴대폰의 작업 상태와 결과부터 확인하세요. 저희 FoneClaw의 Discord 연결은 봇과의 텍스트 개인 메시지로 요청을 받는 경로입니다. Discord 음성 통화, 마이크나 Bluetooth 문제를 해결하는 설정과는 다릅니다. 답장이 없다는 현상만으로 연결과 Android 실행이 모두 실패했다고 판단하지 마세요.
확인할 단계는 봇 연결, 올바른 계정의 DM 접수, 대기열, Android 작업과 결과 전달입니다. 봇이 토큰을 거부한 경우와 요청이 대기 중인 경우는 조치가 다릅니다. 작업은 끝났지만 Discord로 결과가 전달되지 않은 경우에는 새 작업을 실행하는 것이 아니라 저장된 결과의 전달을 복구해야 합니다.
| 보이는 증상 | 먼저 볼 단계 | 다음 확인 |
|---|---|---|
| 토큰·연결 오류 | 봇 연결 | 토큰, Message Content Intent, 네트워크 |
| 인사를 보냈지만 연결 안 됨 | 계정 연결 | 10분 제한, 봇 DM, 첫 메시지 계정 |
| 요청을 보냈지만 진행 없음 | 접수·대기열 | /status와 휴대폰 작업 상태 |
| 폰에서 승인을 기다림 | 실행 조건 | 실제 승인 정책과 Android 권한 |
| 항목은 저장됐지만 답장 없음 | 결과 전달 | 저장 결과와 /retry 가능 여부 |
원래 보낸 요청과 시각을 남겨 두고 현재 단계의 오류 문구를 확인하세요. 같은 내용을 여러 번 보내면 나중에 어느 요청이 저장 결과를 만들었는지 구분하기 어렵습니다. 특히 일정이나 할 일 생성 요청은 결과가 없다고 확신하기 전까지 재전송하지 않습니다.
오류를 확인할 때는 마지막으로 성공한 단계도 적어 두세요. 토큰 저장은 됐지만 계정 연결이 안 된 것인지, 계정 연결 뒤 상태 응답까지 받았는지가 다음 확인을 바꿉니다. 이미 확인한 설정을 처음부터 모두 다시 만드는 대신 그다음 막힌 단계부터 살펴보세요.
연결 상태가 정상이라는 것과 실행 권한이 있다는 것도 별개입니다. Discord는 요청을 들어오게 하는 경로이며 Android 작업에는 해당 기기의 도구와 권한이 적용됩니다. 지원되는 작업 범위는 FoneClaw 기능 안내에서 확인하고, 막힌 단계에 필요한 조건만 점검하세요.
봇 토큰과 Message Content Intent 확인하기
먼저 사용하는 봇이 설정한 봇과 같은지 확인합니다. Discord 공식 봇 안내는 Developer Portal의 봇 생성, 토큰과 OAuth2 설치를 설명합니다. FoneClaw 연결에서는 다음 순서로 준비하며 일반 사용자 계정의 비밀번호를 봇 토큰처럼 입력하지 않습니다.
- Discord Developer Portal에서 사용할 봇을 만듭니다.
- 해당 봇의 Message Content Intent를 켭니다.
- OAuth2 설치 경로로 봇을 서버에 설치합니다.
- 그 봇의 토큰을 복사합니다.
- FoneClaw의 Discord 연결 설정에 토큰을 붙여 넣고 저장합니다.
- 연결 안내에 따라 올바른 Discord 계정에서 봇 DM을 엽니다.
Discord Gateway와 인텐트 안내에서 Message Content는 별도로 설정하는 권한 있는 인텐트로 설명됩니다. FoneClaw 설정도 이 항목을 요구합니다. 봇을 서버에 설치했다는 것만으로 해당 인텐트가 켜졌다고 판단하지 마세요. 반대로 이를 켠다고 FoneClaw가 서버 채널 메시지를 받는 경로로 바뀌는 것은 아닙니다.
‘토큰이 유효하지 않음’에 해당하는 오류는 Discord가 입력한 토큰을 받아들이지 않았다는 뜻입니다. 다른 봇의 토큰을 사용했는지, 현재 사용할 값이 맞는지 확인하세요. Message Content Intent 오류라면 해당 봇에서 인텐트를 켠 뒤 연결 설정의 재시도를 진행합니다. 설정의 연결 재시도와 DM의 /retry는 서로 다른 조작입니다.
연결을 사용할 수 없다는 안내가 나오면 네트워크, 봇 토큰과 인텐트를 각각 점검합니다. 한 번에 여러 설정을 바꾸지 말고 오류와 관련된 항목부터 확인하세요. 이 안내만으로 Android의 모든 권한을 열거나 서버 관리자 권한을 추가할 이유는 없습니다. 필요한 OAuth2 권한을 임의로 늘려 해결하려 하지 않습니다.
토큰은 공개 진단 자료가 아닙니다. 도움을 요청할 때도 메시지 본문, 화면 캡처나 로그에 원문을 넣지 마세요. 포털과 FoneClaw 설정을 비교해야 한다면 자신의 화면에서만 확인합니다. 토큰이 노출됐다면 공식 포털에서 교체하고 FoneClaw에 사용할 값을 갱신하세요. 단순한 대기열 문제 때문에 토큰을 반복 교체할 필요는 없습니다.
여러 봇을 만들었다면 이름과 아이콘이 비슷해도 같은 봇이라고 단정하지 않습니다. 토큰을 저장한 봇과 지금 DM을 연 봇을 대조하세요. 설정이 맞는지 확인한 뒤 다음 단계인 계정 연결로 넘어갑니다. 봇을 새로 만들기 전에 기존 연결과 진행 중인 작업 상태도 남겨 두면 원인을 좁히기 쉽습니다.
10분 안에 원하는 계정으로 봇 DM 연결하기
토큰을 저장한 뒤에는 10분 안에 봇에게 개인 메시지로 hello를 보내 계정을 연결합니다. 처음 메시지를 보내는 Discord 계정이 연결 대상이 됩니다. 여러 계정을 사용한다면 메시지를 보내기 전에 현재 로그인한 계정을 확인하세요. 가족이나 동료에게 먼저 인사를 보내 달라고 부탁하는 방식은 피합니다.
서버에 봇을 설치하는 단계와 개인 메시지를 보내는 단계는 다릅니다. 설치한 봇의 프로필에서 개인 대화를 열어 보내야 합니다. 서버 채널에 인사를 적은 것을 DM 연결 완료로 보지 마세요. 지원되는 요청 경로는 직접 메시지이며, 서버에 봇이 보인다는 사실은 자신의 계정 연결이 끝났다는 근거가 아닙니다.
- FoneClaw에서 연결 시작 상태와 봇을 확인합니다.
- Discord의 로그인 계정을 확인합니다.
- 해당 봇의 개인 대화를 엽니다.
- 제한 시간 안에
hello를 한 번 보냅니다. - Discord의 응답과 FoneClaw의 계정 연결 상태를 확인합니다.
연결 시간이 만료됐다는 안내가 나오면 FoneClaw에서 계정 연결을 다시 시작합니다. 이미 만료된 상태에서 DM 인사만 계속 반복해도 새 연결 절차가 시작되는 것은 아닙니다. 새로 시작한 뒤 올바른 계정과 대화를 다시 확인하고 제한 시간 안에 메시지를 보내세요.
다른 대화에 보냈거나 원치 않는 계정이 먼저 사용됐다면 현재 연결 대상을 확인한 뒤 FoneClaw에서 연결 절차를 다시 진행하세요. 여러 계정에서 동시에 인사를 보내 어느 쪽이 선택되는지 시험하지 않습니다. 완료 기준은 원하는 봇이 있다는 것이 아니라 사용할 Discord 계정과 직접 메시지 경로가 맞게 연결된 상태입니다.
이 단계의 10분 제한은 첫 계정 연결에 관한 것입니다. 이후 개별 요청의 만료 안내와 같은 의미로 묶지 마세요. 연결이 끝난 뒤에는 접수와 실행 상태를 확인해야 합니다. 계정 연결이 됐다고 해당 휴대폰의 모든 작업 권한까지 부여된 것은 아닙니다.
대기열과 휴대폰 승인 상태를 따로 읽기
연결 뒤 반응이 늦다면 먼저 봇 DM에서 /status를 사용하세요. 이 명령은 실행 중인 요청 수와 대기 중인 요청 수를 보여 줍니다. 메시지가 들어온 것, 대기열에 있는 것과 Android 작업이 끝난 것은 서로 다른 상태입니다. 숫자가 보인다고 모든 요청이 성공했다는 뜻은 아닙니다.
대기열이 가득 찼다는 응답은 기다리거나 현재·대기 요청을 멈출지 판단할 상황입니다. 같은 요청을 더 보내 대기열을 늘리지 마세요. 대기열이 중지 처리 중이라는 응답이면 처리가 끝난 뒤 다시 확인합니다. 언제 끝날지 근거 없이 시간을 정하거나 네트워크 연결 문제로 단정하지 않습니다.
실행·대기 수만으로 특정 요청의 최종 결과를 확인할 수는 없습니다. 여러 요청이 있었다면 원래 메시지와 휴대폰의 작업 상태를 대조하세요. 숫자가 줄었다는 사실을 일정 생성 성공으로 해석하지 않습니다. 작업 결과와 실제 저장 항목이 최종 확인에 필요한 근거입니다.
/stop은 현재 요청과 대기 요청을 중지하지만 이미 완료된 작업을 취소하지 않습니다. 멈추기 전에 어느 요청이 필요한지 확인하고, 중지 뒤에는 휴대폰의 현재 상태를 봅니다. 생성된 항목이 있다면 지울지 수정할지를 별도로 결정해야 합니다.
실행 중이거나 승인을 기다리는 것처럼 보이면 휴대폰의 FoneClaw를 확인하세요. 모델은 요청을 해석하고 계획하며 지원 도구가 Android에서 행동합니다. 활성화된 도구, 실제 Android 권한, 전역 승인 모드와 도구별 정책이 실행을 결정합니다. Discord 연결 토큰이나 인텐트는 이 권한을 대신하지 않습니다.
승인 안내에서는 작업 내용과 대상을 검토합니다. 일정이라면 계정·캘린더·날짜·시각을 확인하고 필요한 알림 정보도 정하세요. 승인 대기 상태를 저장 완료로 바꾸어 기록하지 않습니다. 모든 작업이 항상 승인 질문을 한다고 가정하지 말고 실제 적용된 정책과 결과를 확인하세요.
Android 권한이 부족하면 요청에 필요한 항목만 검토합니다. 설정을 전부 초기화하거나 배터리 제한을 모두 해제하는 것을 공통 해결책으로 삼지 마세요. 모델 연결에 문제가 있는 경우에도 도구 권한 문제와 나누어 확인합니다. 온라인 모델은 제공한 요청 맥락을 처리할 수 있으므로 진단을 위해 불필요한 개인 정보를 더 보내지 않습니다.
작업이 완료됐는지는 목적지에서 확인합니다. 개인 To-do라면 저장 문장과 날짜 여부, 캘린더라면 실제 항목과 시간을 대조하세요. Discord 답장은 이 확인을 돕는 결과 전달 경로입니다. 휴대폰 실행 단계가 막혔다면 휴대폰 AI 에이전트 실패 디버깅과 복구: 권한, 도구 단계, 재시도 실전 런북에서 더 자세한 진단을 이어갈 수 있습니다.
새 작업보다 저장된 결과 전달부터 복구하기
/retry는 저장된 결과를 전달 대기열에 넣는 명령이며 휴대폰 작업을 다시 실행하는 명령이 아닙니다. 일정 생성은 끝났는데 Discord 답장이 도착하지 않았다면 이 차이가 중요합니다. 결과 전달을 복구할 때 원래 일정 생성 문장을 다시 보내면 새 일정이 추가될 수 있습니다.
예를 들어 확정한 날짜와 시각에 ‘회의 준비’ 일정을 만들도록 요청했고 휴대폰 캘린더에는 항목이 있는데 DM 결과만 없다고 가정합니다. 먼저 대상 계정과 캘린더, 제목, 시작·종료 시각을 확인하세요. 이 경우 적어도 해당 항목이 저장됐다는 근거가 있으므로 곧바로 같은 생성 작업을 새로 요청하지 않습니다.
- 원래 요청과 보낸 시각을 확인합니다.
- 휴대폰에서 작업 상태와 저장 결과를 확인합니다.
- 완료한 행동과 실패한 결과 전달을 구분합니다.
- 연결된 봇 DM에서
/retry로 저장 결과 전달을 요청합니다. - 전달 상태와 받은 결과를 확인하고 추가 생성이 필요한지 별도로 판단합니다.
복구 가능한 실패 전달이 없다는 응답은 전달할 저장된 실패 결과가 없다는 뜻입니다. 휴대폰 작업이 실행되지 않았다는 증거는 아닙니다. 전달 대상이 없다는 상태와 생성 결과가 없다는 상태를 구분하세요. 먼저 휴대폰에서 실제 항목을 확인하고 다음 행동을 정합니다.
요청 만료나 연결 변경 안내가 있다면 연결 대상과 휴대폰 결과를 함께 살펴야 합니다. 첫 계정 연결의 제한 시간이 지났다는 안내와도 구분하세요. 새로운 연결에서 이전 요청이 어떻게 처리됐는지 확실하지 않다면 새 요청을 보내기 전에 기존 상태를 확인합니다. 저장된 결과가 없으면 확인된 사실과 미확인 부분을 남깁니다.
항목이 없고 실행도 완료되지 않았음을 확인한 뒤에만 새 요청을 검토하세요. 부분 결과가 있으면 이미 끝난 단계를 제외하고 남은 작업을 명확히 정합니다. 같은 제목의 일정이나 할 일이 여러 개라면 각각의 내용을 대조하고 잘못된 항목을 직접 정리합니다. 삭제나 수정도 대상이 확인된 별도 작업입니다.
개인 할 일을 확인할 때 날짜 없는 항목도 찾아보세요. 날짜를 지정하지 않은 요청은 미정 항목으로 남을 수 있으므로 오늘 날짜의 목록만 보고 저장 실패라고 결론 내리지 않습니다. 캘린더라면 요청한 계정과 목적지를 다시 확인해 다른 위치에 저장된 결과를 놓치지 마세요.
FoneClaw 보안 안내의 작업 권한과 중단 경계를 함께 확인하세요. /stop으로 요청을 멈춰도 생성된 일정, 저장한 할 일이나 이미 완료한 외부 행동이 자동으로 되돌아가지는 않습니다. 결과 전달을 중지하거나 복구하는 것과 실제 행동의 변경을 같은 것으로 보지 않습니다.
안전하게 멈추고 남은 작업을 나누는 방법은 안드로이드 AI 에이전트 중지: 휴대폰 작업과 클라우드 작업 나눠 멈추기에서 이어집니다. 복구의 완료 기준은 답장을 다시 받았는지뿐 아니라 이미 실행된 결과와 앞으로 진행할 범위가 분명해졌는지입니다.
작은 확인 한 번과 비밀값 없는 진단 기록 남기기
설정을 고친 뒤에는 결과가 남는 작업을 바로 반복하기보다 작은 확인부터 진행하세요. 다음은 사용자가 수행할 수 있는 제안된 절차이며 특정 기기에서 시험한 결과가 아닙니다. 먼저 올바른 DM에서 /status로 상태 응답을 확인하고, 필요하면 외부 행동 없는 짧은 문안 요청 하나를 사용합니다.
예를 들어 ‘할 일에 적을 우유 구매 문안만 제안해 줘. 저장하거나 보내지 마’라고 범위를 정할 수 있습니다. 이 확인의 목표는 요청 접수와 결과 전달이며 To-do 생성이 아닙니다. 문안이 돌아오면 연결 경로를 확인한 것으로 기록하고, 실제 저장 시험이 필요하다면 별도 요청으로 진행하세요.
진단 기록에는 발생 시각, 원래 요청의 범위, 오류 문구와 확인한 단계를 남깁니다. 계정 연결 만료인지, 대기열 중지 중인지, 휴대폰 승인 대기인지, 저장 결과 전달 실패인지 나누세요. /status의 실행·대기 수와 휴대폰에서 확인한 항목도 관련될 때만 적습니다.
- 봇·계정 연결: 원하는 봇 DM과 로그인 계정인지.
- 설정 오류: 토큰 거부 또는 인텐트 안내의 정확한 문구.
- 접수·대기열: 상태 응답과 요청을 보낸 시각.
- Android 실행: 권한·승인 대기와 실제 대상 결과.
- 전달 복구:
/retry응답과 받은 결과 여부. - 중단 후 상태: 이미 완료한 행동과 남은 확인.
화면을 공유하기 전에는 봇 토큰, 계정 비밀값, 사적인 DM과 캘린더 정보를 가리세요. 오류만 보여 주는 데 전체 대화나 연락처가 필요하지는 않습니다. 도움을 받았더라도 토큰을 공개한 상태라면 비밀값 교체를 별도로 처리해야 합니다. 진단 자료가 잘 정리됐다는 사실이 노출된 자격 증명을 안전하게 만드는 것은 아닙니다.
Discord 통화의 마이크나 Bluetooth가 문제라면 이 봇 연결 절차 대신 Discord 모바일 마이크 테스트: Android 음성 감지와 Bluetooth 문제 해결을 확인하세요. Telegram 연결을 선택하려는 경우에는 Discord 설정을 복사하지 말고 FoneClaw Telegram 봇 연결: BotFather로 개인 봇 설정하기의 별도 절차를 따릅니다.
마지막으로 연결 확인, Android 실행 확인과 결과 전달 확인을 각각 마쳤는지 보세요. 하나만 확인됐다면 나머지는 미확인으로 남깁니다. 이 구분을 유지하면 답장이 없다는 이유로 같은 작업을 여러 번 실행하거나 필요 없는 권한을 추가하는 일을 줄일 수 있습니다.