J'essaie d'automatiser la capture périodique d'une fenêtre flottante. Plus précisément, de la fenêtre flottante "Appel en cours" qui est utilisée par Skype lorsque la fenêtre principale est hors écran.
En cherchant sur Google, j'ai découvert que tout ce dont j'ai besoin est un identifiant de fenêtre à transmettre à screencapture :
screencapture -l<win_id> <output_file>
Le problème est que je n'ai pas trouvé le moyen d'obtenir l'identifiant de la fenêtre pour "Appel en cours". Voici ce que j'ai essayé jusqu'à présent :
$ osascript -e 'tell app "Skype" to id of first window whose floating is true'
20:61: execution error: Skype got an error: Can’t get window 1 whose floating = true. Invalid index. (-1719)
$ osascript -e 'tell app "Skype" to id of first window whose name is "Current Call"'
20:67: execution error: Skype got an error: Can’t get window 1 whose name = "Current Call". Invalid index. (-1719)
Quelqu'un sait-il comment obtenir l'identifiant de la fenêtre "Appel en cours" ?
Ou, alternativement, quelqu'un sait-il si je peux obtenir cette capture d'écran d'une autre manière ? (par exemple, exécuter screencapture
avec d'autres arguments, ou utiliser un autre outil pour capturer la capture d'écran)
Mise à jour
J'ai également essayé ce qui suit :
$ osascript -e 'tell app "Skype" to id of window 0'
-1
$ osascript -e 'tell app "Skype" to id of window 1'
-1
$ osascript -e 'tell app "Skype" to id of window 2'
84
$ osascript -e 'tell app "Skype" to id of window 3'
20:22: execution error: Skype got an error: Can’t get window 3. Invalid index. (-1719)
La fenêtre avec l'id 84 est la fenêtre principale de skype. Je suis donc un peu perplexe. Qu'est-ce que -1
est censé signifier ?