Habiendo duplicado su aplicación QuickTime Player y la llamó Reaction , entiendo que ha creado un applet de AppleScript y que ha colocado esta copia de Reaction.app dentro de la carpeta Resources
del applet de AppleScript.
Debido a que es un duplicado de QuickTime Player (que es compatible con secuencias de comandos), Reaction también es compatible con secuencias de comandos, y también puede ejecutarse desde el AppleScript del applet (ubicado en Resources/scripts/main.scpt
).
Tu main.scpt
debería verse así:
set A to path to resource "Reaction.app"
set home to POSIX path of (path to home folder)
set fp to home & "/Movies/Reaction Recording.mov"
set f to a reference to POSIX file fp
using terms from application "QuickTime Player"
tell the application named A
activate
tell the (new movie recording)
start
delay 10
pause
save in f
stop
close
end tell
end tell
end using terms from
application "QuickTime Player"
puede cambiar por su propia cuenta a application "Reaction"
, lo que está completamente bien.
Este script crea una grabación de ~ 10 segundos, menos un par de segundos para dar cuenta de la inicialización del script y demás. Cambie delay 10
a cualquier valor que represente un tiempo de grabación razonable en segundos.
Para enviarlo como un archivo adjunto usando Correo :
set msgSubject to "My Reaction Recording"
set msgBody to "Hi. Please see the attached recording. \n"
set msgFrom to "[email protected]"
set msgTo to "[email protected]"
tell application "Mail"
activate
tell (make new outgoing message ¬
with properties {visible:true ¬
, subject:msgSubject ¬
, content:msgBody ¬
, sender:msgFrom})
make new to recipient ¬
at end of to recipients ¬
with properties {address:msgTo}
tell its content to make new attachment ¬
at after the last paragraph ¬
with properties {file name:f as alias}
delay 2
-- send
end tell
end tell
El script superior y el script inferior pueden unirse para formar un solo script continuo. Es posible que necesite un retraso entre las dos partes, pero no necesité una en mi sistema.
Sin embargo, el retraso dentro del bloque Correo es importante si desea enviar el correo electrónico (también debe descomentar el comando send
eliminando el --
; durante la prueba, le permitirá obtener una vista previa del correo electrónico y enviarlo manualmente).