수동 원격 제어 요청 (LCC.assist.request_control)
선언
result, err, task = LCC.assist.request_control(options)
매개변수
- options
테이블형. 수동 지원 요청 설정입니다. 필드는 공통 매개변수와 반환 객체를 참조하세요. 이 함수는type = "control"을 자동으로 설정합니다.
반환 값
- result
테이블 또는nil. 성공 시 사용자가 제출한 결과를 반환합니다. “완료”를 클릭하면{ kind = "device-control", completed = true }를 반환합니다. “결과 수동 제출”을 펼쳐 유효한 JSON을 제출하면 해당 JSON에 대응하는 Lua 테이블을 반환하고, 일반 텍스트를 제출하면{ note = "텍스트 내용" }을 반환합니다. - err
문자열 또는nil. 실패 시 오류 설명을 반환합니다. - task
테이블 또는nil. 마지막 작업 상태입니다.
설명
슬라이더, 사람 여부 확인, 로그인, 보안 검증, 권한 팝업, 복잡한 상호작용처럼 스크립트가 더 이상 추측해서는 안 되는 상황에 사용합니다.
사용자가 장치를 원격 제어해 문제를 해결한 뒤 “완료”를 클릭하면 스크립트가 계속 실행되어 화면을 다시 판단합니다.
text에는 사용자가 무엇을 완료해야 하는지 명확하게 작성해야 합니다.
“완료”와 “결과 수동 제출”은 서로 다른 두 진입점입니다.
- “완료” 클릭: 원격 제어 작업이 끝났다는 사실만 나타낼 때 적합하며, 항상
{ kind = "device-control", completed = true }를 반환합니다. - “결과 수동 제출”의 “제출” 클릭: 추가 정보를 스크립트에 반환할 때 적합합니다. 유효한 JSON은 구조화된 결과로 반환되고, JSON이 아닌 텍스트는
{ note = "..." }로 반환되며, 빈 내용은 제출되지 않습니다.
예시
local result, err = LCC.assist.request_control({
title = "수동 검증 처리",
text = "장치를 원격 제어해 검증을 완료한 뒤 완료를 클릭해 주세요",
timeout = 300,
})
if not result then
nLog("원격 제어 미완료", err)
end
현재 스크린샷을 직접 전달하는 예시:
local img = screen.image()
local result, err = LCC.assist.request_control({
title = "수동 처리 필요",
text = "원격 제어로 현재 검증을 완료한 뒤 완료를 클릭해 주세요",
screenshotImage = img,
screenshotImageQuality = 0.6,
timeout = 300,
})
if img.destroy then
img:destroy()
end