AppleScript para obtener el contenido del archivo en Apple Mail

0

Estoy intentando hacer un bot de respuesta automática. El bot responderá de manera diferente (y realizará diferentes acciones) en función del mensaje recibido. En lugar de enviar un correo electrónico al bot, enviaré un mensaje de texto al bot (con un iPhone). Mi proveedor (Verizon) recibe el mensaje y lo envía como un archivo adjunto , en un archivo llamado text_0.txt , como texto simple.

Lamentablemente, no sé cómo obtener AppleScript para obtener el contenido del archivo.

Entonces, mi pregunta es la siguiente, ¿cómo puedo hacer que AppleScript (escribiendo este código de script que no es de Apple para que sea más fácil de entender) haga esto?

if (email contains type["file"]) {

if (email.file[0].name() === "text_0.txt") {

contents = email.file[0].content;

// Do stuff

} else {
// Do some other stuff
}

} else {
content = email.content;
}
    
pregunta JBis 25.07.2018 - 19:54

1 respuesta

1

Estoy un poco confundido en cuanto a exactamente lo que estás tratando de lograr. Esta no es una solución exacta para su pregunta, pero tal vez el siguiente código lo ayude a ubicarse en el camino correcto.

La primera parte de este código siguiente con los comandos "Correo" llevará el mensaje seleccionado actualmente en Mail.app y guardará todos los archivos adjuntos de ese mensaje en su escritorio.

La segunda parte de este código siguiente, con los comandos "Finder", leerá el contenido de cualquier archivo .txt en la lista de archivos almacenados en savedFileList y guardará esa información en la variable theContent

set saveFilePath to POSIX path of (path to desktop)
set savedFileList to {}

tell application "Mail"
    set theCount to every mail attachment of item 1 of (get selection)
    repeat with i from 1 to count of theCount
        try -- handles if "downloaded of (get mail attachment id theID of item 1 of (get selection))" is false
            set thisItem to item i of theCount
            set theID to id of thisItem
            set theFile to mail attachment id theID of item 1 of (get selection)
            set isDownloaded to downloaded of (get mail attachment id theID of item 1 of (get selection))
            set theName to name of theFile
            save theFile in POSIX file (saveFilePath & theName)
            set end of savedFileList to (saveFilePath & theName) as POSIX file as alias
        end try
    end repeat
end tell

set nameExtensions to {"txt"}

tell application "Finder"
    repeat with j from 1 to count of savedFileList
        set thisItem2 to item j of savedFileList
        if name extension of thisItem2 is in nameExtensions then
            set theContent to read thisItem2
        end if
    end repeat
end tell

En este punto, debería poder enviar los archivos reales o el contenido de los archivos txt que recibió del mensaje seleccionado actualmente en "Mail.app". (Como toda la información se ha almacenado en diferentes variables en el código ... Para que elija y actúe)

    
respondido por el wch1zpink 26.07.2018 - 03:42

Lea otras preguntas en las etiquetas