Synthèse des problèmes d’envoi/réception de fichiers

Les fonctions d’envoi de fichiers et d’images fonctionnent normalement ; les problèmes d’envoi rencontrés en pratique proviennent tous de problèmes de chemin de fichier ;
La fonction de réception de fichiers et d’images fonctionne normalement en discussion de groupe, y compris sendWithResponse("get_group_file_url", { group_id: groupId, file_id: seg.data?.file_id, busid: seg.data?.busid }); ; en discussion privée, cela ne fonctionne pas : à ce moment-là il n’y a que le nom du fichier et l’id du fichier, pas d’URL de fichier ;
Solution :
Appeler sendWithResponse("get_file", { file_id: seg.data.file_id }); et définir seg.data.url ;
Défaut principal :
Le téléchargement de fichiers de napcat est enregistré dans .config/QQ/NapCat/temp, et /NapCat/temp ne permet pas de modification ; dans un environnement docker, il faut obligatoirement monter .config/QQ. Si openclaw est aussi déployé via docker, il faut également monter .config/QQ ; dans ce cas, on rencontrera très probablement une invalidation de chemin. Les échecs lors de l’envoi de fichiers et d’images ont la même cause.
Difficulté :
Lors de l’envoi de fichiers, on peut créer un répertoire partagé pour que napcat le monte, mais lors de la réception de fichiers napcat forcera le téléchargement vers /NapCat/temp ; sans modifier le côté NapCat, la solution la plus simple est au contraire d’aligner directement sur un répertoire partagé sur la machine hôte et d’utiliser directement le chemin d’origine :
napcat:shared-data:/root/.config/QQ/NapCat/temp ;
openclaw:shared-data:/root/.config/QQ/NapCat/temp ;