Como na sua pergunta, você não incluiu nenhum código, mensagem (ns) de erro ou até mesmo como estava implementando sua solução, apresentarei o seguinte como um exemplo de como eu poderia automatizar a tarefa em questão. Note que enquanto eu olhei para o ligação na sua pergunta, no entanto, já que era para Outlook e você marcou a pergunta com mail.app , Vou ignorar o que estava ligado e prosseguir do zero.
Neste cenário de exemplo, criei uma estrutura de pastas hierárquica em ~ / Fotos , por exemplo. ~ / Fotos / Clientes / Nome / Fotos enviadas por email , e esta é a pasta para a qual eu arrastarei as fotos de destino, que tem a convenção de nomenclatura, por exemplo, name@client.com_2847.jpg ea pasta na qual o Ação de Pasta do Automator fluxo de trabalho será anexado a.
Em Automator :
- Arquivo & gt; Novo
- Selecione, Ação de Pasta e clique no Escolher botão.
- No A ação de pasta recebe arquivos e pastas adicionados ao Choose Folder caixa de listagem , selecione: De outros...
- Navegue até a pasta de destino, a que a ação deve ser aplicada, selecione-a e clique no Escolher botão.
- Adicione um Executar o AppleScript açao para o recém-criado Ação de Pasta fluxo de trabalho .
- Destaque o padrão AppleScript código e exclua.
- Copie e cole o AppleScript código, mostrado abaixo, no Executar o AppleScript açao .
- Salve o Ação de Pasta como, por exemplo: Fotos de e-mail para nomear @ cliente
- Isso será salvo como, por exemplo:
~ / Biblioteca / Fluxos de trabalho / Aplicativos / Ações de pasta / Fotos de e-mail para name@client.workflow
Agora, quando você arrasta fotos com a convenção de nomenclatura, por exemplo, name@client.com_2847.jpg para a pasta de destino, por exemplo ~ / Fotos / Clientes / Nome / Fotos enviadas por email , um e-mail para cada foto será criado e o arquivo de destino será anexado. Inicialmente, o e-mail não será enviado automaticamente até que você descomente, remova o --
na frente do -- send theMessage
linha de código e salve as alterações. Inicialmente, isso é comentado para que você possa testar com um arquivo e obter sua configuração de assunto e mensagem para atender às suas necessidades. Eu usaria um arquivo que tenha seu endereço de e-mail para fins de teste, fazendo um no início e vários ao mesmo tempo.
A mensagem de email sujeito e conteúdo são inicialmente definidos como "Retratos" e Foto anexada. "respectivamente, como espaços reservados. Além disso, há outra linha de comentários código , -- delay 2
, acima de -- send theMessage
linha de código que você pode precisar / desejar implementar se adicionar um grande número de arquivos ao mesmo tempo à pasta de destino que possui a Ação de Pasta anexada, pois o envio rápido pode causar problemas. Note que o valor do delay
comando pode ser necessário ajustá-lo conforme apropriado para acomodar as condições e você terá que fazer alguns testes para ver o que funciona para você. Embora tenha feito alguns testes, usei um arquivo muito pequeno (3 KB) que eu repliquei e nomei sequencialmente para fins de teste. Eu suponho que suas fotos serão muito maiores em tamanho.
AppleScript código :
property theMessageSubject : "Portraits"
property theMessageContent : "Photo attached."
on GetTheRecipientNameFrom(theFilename)
-- # Get the filename portion of the alias passed to the Folder Action.
set AppleScript's text item delimiters to ":"
set theFilename to last item of text items of theFilename
set AppleScript's text item delimiters to ""
-- # Make sure the filename contains both an '_' and "@".
-- # This doesn't guarantee a properly formed email address,
-- # however it does attempt to validate what was passed as one.
if theFilename contains "_" and theFilename contains "@" then
set AppleScript's text item delimiters to "_"
set theFilename to first item of text items of theFilename
set AppleScript's text item delimiters to ""
return theFilename
else
return ""
end if
end GetTheRecipientNameFrom
on run {input, parameters}
set fileCount to (count of items of input)
set i to 1
repeat fileCount times
set theMessageAttachment to item i of input
set theRecipient to GetTheRecipientNameFrom(theMessageAttachment as string)
if theRecipient is not equal to "" then
tell application "Mail"
activate
set theMessage to make new outgoing message with properties {visible:true, subject:theMessageSubject, content:theMessageContent & linefeed & linefeed}
tell theMessage
make new to recipient at end of to recipients with properties {address:theRecipient}
end tell
tell content of theMessage
make new attachment with properties {file name:theMessageAttachment} at after last paragraph
end tell
set i to i + 1
-- delay 2
-- send theMessage
end tell
else
set i to i + 1
end if
end repeat
end run
Observe que, conforme codificado, se um arquivo cair na pasta de destino, a pasta à qual a Ação de pasta está anexada não está de acordo com a convenção de nomenclatura de, name@client.com_2847.jpg , então nenhum email para esse arquivo deve ser criado, a menos que a parte do nome do arquivo que precede o sublinhado contenha o símbolo @ e quaisquer outros caracteres. Em outras palavras, o único erro ao verificar o código, como é, tentativas de validação é que o nome do arquivo contém um endereço de e-mail válido apenas no local se tiver um sublinhado e um símbolo @, então assume que o nome do arquivo está em ex. name@client.com_2847.jpg . Uma verificação mais rigorosa de erros pode ser codificada, mas deixarei isso para você se o que for apresentado não for adequado.
Além disso, outras formas de verificação geral de erros podem ser implementadas, ou seja, garantir que o arquivo foi realmente anexado antes do envio, etc., no entanto, esta resposta deve ser um exemplo simples, não necessariamente uma solução totalmente codificada. O ônus está em você para garantir que você implemente a verificação de erros apropriada, conforme as condições garantam.
Como você pode ser capaz de dizer pelas imagens abaixo, eu escrevi e testei isso em um ambiente pré OS X 10.9, OS X 10.8.6 para ser específico e eu tenho "Ativar acesso para dispositivos de assistência" verificada em Acessibilidade preferências. No OS X 10.9 e posterior, incluindo a versão mais recente do macOS, Sierra, talvez seja necessário adicionar Enviar e ou Automator para Preferências do Sistema & gt; Segurança & amp; Privacidade & gt; Privacidade & gt; Acessibilidade para que o Ação de Pasta trabalhar. Não estou em condições de testar nessas versões no momento, mas se não funcionar para você, adicione esses aplicativos de acordo.