Estoy tratando de hacer un número de corrector en imessage. Todos sabemos que no hay tal api, así que estoy tratando de utilizar las herramientas a la mano. El principal tuvo en el pasado con los temas en este sitio sobre este tema.
Hice un bucle en el que se inserta un número en una cadena, y por el color de la cantidad (azul - registrado, rojo - desaparecidos), el uso de la utilidad estándar Digital de Colores Medidor determina el color del número. Entonces, dependiendo del color, se añade una variable con un número de la inicial del archivo txt a la nueva, o se inicia la secuencia de comandos desde el principio. Al menos debería ser.
Pero algo va mal. Comprueba el color, inserta números, todo está muy bien, pero al parecer el malo de la condición, al parecer, el mal tipos de datos. Inserta números diferentes en la dispersión. Algunos de inserción, algunas no, independientemente de la condición inicial. ¿Cuál podría ser la razón? ¿Dónde está el error? Y es posible hacerlo de modo que después de un cierto número de verificados los números, él mismo se eliminan los cuadros de diálogo abiertos con estos números?
repeat with n in client
activate application "Messages"
repeat
tell application "System Events" to tell process "Messages"
key code 45 using command down
keystroke n
delay 1
key code 36
tell application "Digital Color Meter" to activate
tell application "System Events"
tell process "Digital Color Meter"
click menu item 1 of menu 1 of menu bar item 4 of menu bar 1
end tell
do shell script "/usr/bin/python -c \"import objc;bndl = objc.loadBundle('CoreGraphics', globals(), '/System/Library/Frameworks/ApplicationServices.framework');objc.loadBundleFunctions(bndl, globals(), [('CGWarpMouseCursorPosition', 'v{CGPoint=dd}')]);CGWarpMouseCursorPosition((" & 1002 & "," & 222 & "));\""
set rgbColors to words of (the clipboard)
end tell
if rgbColors is equal to {"77", "39", "38"} then
exit repeat
else
do shell script "echo " & quoted form of n & " >> /Users/oneone/Desktop/base2.txt"
end if
end tell
end repeat
end repeat