Passer au contenu principal

Demander un contrôle humain à distance (LCC.assist.request_control)

Déclaration​

result, err, task = LCC.assist.request_control(options)

Paramètres​

  • options
    Type table, configuration de la demande d'assistance humaine. Les champs sont décrits dans Options communes et objets de retour. Cette fonction définit automatiquement type = "control".

Valeurs de retour​

  • result
    Type table ou nil ; en cas de succès, résultat envoyé par l'utilisateur. Un clic sur « Terminé » renvoie { kind = "device-control", completed = true } ; l'envoi d'un JSON valide via « Envoyer manuellement le résultat » renvoie la table Lua correspondante, et l'envoi d'un texte ordinaire renvoie { note = "文本内容" }.
  • err
    Type chaîne ou nil ; description de l'erreur en cas d'échec.
  • task
    Type table ou nil ; dernier état de la tâche.

Description​

À utiliser pour les curseurs, vérifications anti-robot, connexions, contrôles de sécurité, boîtes de dialogue d'autorisation et interactions complexes où le script ne doit pas continuer à deviner.
Après avoir résolu le problème en contrôlant l'appareil à distance, l'utilisateur clique sur « Terminé » ; le script reprend et réévalue l'écran.
Le champ text doit préciser clairement ce que l'utilisateur doit faire.

« Terminé » et « Envoyer manuellement le résultat » sont deux points d'entrée différents :

  • Cliquer sur « Terminé » convient lorsque le contrôle à distance est simplement terminé ; la valeur renvoyée est toujours { kind = "device-control", completed = true }.
  • Le bouton « Envoyer » de « Envoyer manuellement le résultat » convient pour renvoyer des informations complémentaires au script. Un JSON valide produit un résultat structuré ; un texte qui n'est pas du JSON produit { note = "..." } ; un contenu vide n'est pas envoyé.

Exemple​

local result, err = LCC.assist.request_control({
title = "人工处理验证",
text = "请远控设备完成验证后点击已完成",
timeout = 300,
})

if not result then
nLog("远控未完成", err)
end

Fournir directement la capture actuelle :

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