Expandir o envio de email com o AppleScript -- ail.app campo com applescript campo com gmail campo com csv camp apple Relacionado O problema

Expand Sending Email with Applescript


0
vote

problema

português

Eu li com interesse o artigo sobre o envio de um email com base na análise por meio de um arquivo CSV para pegar o nome e endereço de e-mail. Isso parece que a maior parte do que preciso para realizar meu objetivo com a exceção de que gostaria que o script fosse executado uma vez por dia e enviei o email um dia antes de uma data armazenada no arquivo CSV. Isso é para lembrar alguém que eles precisam realizar uma determinada tarefa no dia seguinte. Os e-mails serão enviados usando o Apple Mail como o MTA através da minha conta do Gmail.

O CSV conterá o seguinte:

firstname, sobrenome, data de ação

O script precisaria pegar o primeiro nome e a data do arquivo CSV. Eu codifiquei o texto de e-mail no script como mostrado no exemplo anterior.

pseudocódigo:

    .
  1. script funciona logo após a meia-noite todos os dias analisando o CSV para determinar quem deve receber o email em que data.
  2. para os nomes selecionados, criar e enviar um email no dia anterior antes da ação necessária.
  3. como um bônus, o script pode reenviar o lembrete na data de vencimento, bem como quaisquer novos lembretes para o dia seguinte.

Eu suponho que eu poderia subtrair manualmente um dia no meu CSV para facilitar a codificação.

Eu estou apenas começando com o AppleScript, e não sei como modificar o script existente para realizar este objetivo.

english

I read with interest the article regarding sending an email based upon parsing through a csv file to pick up the name and email address. This looks like most of what I need to accomplish my objective with the exception that I would like for the script to run once daily and send the email one day before a date stored in the csv file. This is to remind someone that they need to perform a a certain task the next day. Emails will be sent using Apple Mail as the MTA through my gmail account.

The csv will contain the following:

firstname, lastname, action date

The script would need to pick up the first name and date from the csv file. I have coded the email text into the script as shown in the previous example.

Pseudocode:

  1. Script runs just after midnight every day parsing the csv to determine who should receive the email on what date.
  2. For the selected names, create and send an email the day prior to the required action.
  3. As a bonus, the script could resend the reminder on the due date as well as any new reminders for the following day.

I suppose I could manually subtract one day in my csv to make the coding easier.

I am just getting started with Applescript, and do not know how to modify the existing script to accomplish this objective.

           
 
 

Lista de respostas

1
 
vote

Tente algo assim:

  set csv to "name@example.com,7/14 name2@example.com,7/15" --set csv to read "/Users/username/Documents/file.csv" as «class utf8»  set text item delimiters to "," set y to year of (current date) repeat with l in paragraphs of csv     set d to (date (text item 2 of l & "/" & y))     if date string of (current date) is date string of (d - 1 * days) then         tell application "Mail"             tell (make new outgoing message)                 set subject to "subject"                 set content to "content"                 make new to recipient at end of to recipients with properties {address:text item 1 of l}                 send             end tell         end tell     end if end repeat    

Você pode executar o script todos os dias após a meia-noite (se o computador estiver acordado) executando EDITOR=nano crontab -e e adicionando uma linha como 1 0 * * * osascript ~/Scripts/some script.scpt .

Os formatos de data reconhecidos dependem das configurações selecionadas nas preferências do sistema. Eu não sei como obter um endereço de e-mail para um primeiro nome e sobrenome.

 

Try something like this:

set csv to "name@example.com,7/14 name2@example.com,7/15" --set csv to read "/Users/username/Documents/file.csv" as xc2xabclass utf8xc2xbb  set text item delimiters to "," set y to year of (current date) repeat with l in paragraphs of csv     set d to (date (text item 2 of l & "/" & y))     if date string of (current date) is date string of (d - 1 * days) then         tell application "Mail"             tell (make new outgoing message)                 set subject to "subject"                 set content to "content"                 make new to recipient at end of to recipients with properties {address:text item 1 of l}                 send             end tell         end tell     end if end repeat 

You can run the script every day after midnight (if the computer is awake) by running EDITOR=nano crontab -e and adding a line like 1 0 * * * osascript ~/Scripts/some\ script.scpt.

The recognized date formats depend on the settings selected in System Preferences. I don't know how to get an email address for a first name and last name.

 
 
 
 

Perguntas relacionadas

3  Como fazer o Safari sempre baixar arquivos CSV em vez de abri-los na página? [duplicado]  ( How make safari always download csv files instead of opening them in page ) 
. Esta pergunta já tem uma resposta aqui : ajuste fino "Abrir arquivos seguros após o download" ...

4  Salve o arquivo do Excel como arquivo de valores delimitados por tubos  ( Save excel file as pipe delimited values file ) 
Eu sei que você pode salvar uma planilha do Excel como um arquivo CSV e que isso colocará aspas ao redor de qualquer campainha que tenham vírgulas nelas. Eu t...

2  Maneira mais eficaz de fazer backup de contatos do iPhone para simples .csv - formato  ( Most effective way to backup contacts from iphone to plain csv format ) 
Eu recebi um iPhone 5 corrompido com o iote mais recente 10.2 Antes de começar do zero, gostaria de fazer backup de todos os meus contatos e notas. Eu pre...

27  Mesclando vários arquivos CSV sem mesclar o cabeçalho  ( Merging multiple csv files without merging the header ) 
Eu preciso mesclar vários arquivos .csv (usando o comando cat ), mas sem copiar o cabeçalho para cada arquivo. Qual é a melhor maneira de realizar essa tar...

13  Como importar graciosamente arquivos CSV em números.app v3?  ( How to gracefully import csv files into numbers app v3 ) 
Eu tenho um processo, que trabalhou fielmente por anos em Números '09, pelo que baixar meus dados da conta bancária no formato CSV, arraste os dados diretamen...

1  Aplicativo de calendário com importação CSV  ( Calendar app with csv import ) 
No momento em que estou tentando mudar do Outlook para Apple Mail / Cal.App e gostaria de saber se alguém aqui encontrou uma maneira de encontrar eventos de c...

2  Impedir que o Safari transformando arquivos CSV baixados para arquivos de números  ( Prevent safari from transforming downloaded csv files to numbers files ) 
Em um computador que tenha números instalados, o download de um arquivo CSV será automaticamente convertido em uma planilha de números e não será mais um CSV ...

1  Existe um aplicativo de coleta de dados que exporta CSV para Dropbox?  ( Is there a data collection app that exports csv to dropbox ) 
Estou tendo alguns problemas sérios encontrando um programa de coleta de dados (planilhas?) Para uso com minha conta do Dropbox. O aplicativo deve ser capaz d...

0  Expandir o envio de email com o AppleScript  ( Expand sending email with applescript ) 
Eu li com interesse o artigo sobre o envio de um email com base na análise por meio de um arquivo CSV para pegar o nome e endereço de e-mail. Isso parece que ...

6  Abra o arquivo CSV com separador diferente  ( Open csv file with different separator ) 
Atualmente estou usando o aplicativo de números padrão para abrir meu CSVs. Meu caso de uso atual envolve um arquivo que eu tinha que usar um tipo diferente d...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.