Mail & AppleScript & Automator ile e-postaları otomatik olarak yanıtlama


3

Bilgisayarımda kayıtlı onlarca konferans görüşme numarası var. Bu numaralar, 40027683 gibi, başka hiçbir karakter olmayan numaralardır. Bu numaralar bir txt dosyasına kaydedilir. görüntü tanımını buraya girin

Kullanıcılarımdan bazıları müşterileri ile konferans araması yapmaya çalışırken bir numaraya ihtiyaç duyabilir. Bu yüzden, kullanıcılar e-posta yoluyla bir konferans araması numarası istediğinde, bir numarayla yanıtlayacağım.

Çağrı numaraları için gerekli olan postaları otomatik olarak cevaplamanın bir yolu var mı? Mail, AppleScript ve Automator'ı denemek istiyorum.

Yeni bir e-posta alındığında Mail'in AppleScript çalıştırmasını istiyorum (konu veya mesaj içeriği "concall" anahtar kelimesini içerir), işte bir örnek:

görüntü tanımını buraya girin

Yazdığım AppleScript, txt dosyasındaki ilk numarayı çağırmak için çalıştırılacak. Başka bir mesaj bir dahaki sefere ulaştığında, Mail, txt dosyasının ikinci sayısını çağırmak için AppleScript'i çalıştırır. Bunu gerçekleştirmenin bir yolu var mı?

Herhangi bir öneri çok takdir edilecektir.


Sorunuza şu ana kadar sahip olduğunuz AppleScript'i ekleyebilir misiniz? Kullanılmış kodları farklı bir dosyaya koyabilirsiniz. Yani başka bir posta aldığınızda. Sadece ilk kodu tekrar alırsınız.
LH16

Üzgünüm, netleştirmedim. Artık hiçbir kodum yok. Çünkü txt dosyasındaki sayıları nasıl çağırdığımı ya da betiğin içindeki sayının nasıl çağrılacağını bilmiyorum. Bunu yapmak istediğim şey şudur: Yeni bir e-posta geldiğinde (konu ya da içerikle birlikte: concall), Mail, txt dosyasının ilk satırını çağırmak için AppleScript'i çalıştırır. Sonra başka bir posta geldi, Mail, txt dosyasının ikinci satırını çağırmak için AppleScript'i çalıştıracak.
Vincent,

Yanıtlar:


0

Böyle yapabilirsiniz:

property the_numbers : {10000, 20000, 30000}
using terms from application "Mail"
    on perform mail action with messages theMessages for rule theRule
        repeat with i from 1 to count of theMessages
            tell application "Mail"
                set the_sender to sender of item i of theMessages
                set the_subject to subject of item i of theMessages
                set the_counter to item 1 of the_numbers
                -- make the outgoing message (the reply)
                set the_reply to make new outgoing message with properties ¬
                    {subject:"Re: " & the_subject, content:"Use this number-- " & the_counter}
                tell the_reply
                    make new to recipient at end of to recipients with properties {address:the_sender}
                end tell
                send the_reply
            end tell
            -- this is the step that deletes item 1 from the list 
            set the_numbers to items 2 thru -1 of the_numbers
        end repeat
    end perform mail action with messages
end using terms from

Bu işe yarar, ancak numara listenizi bir AppleScript listesine almak için küçük bir çalışma yapmanız gerekir. 10000, 20000, 30000'ün yerini alacak şekilde üste virgüllerle ayırarak yerleştirirsiniz.

Sayıların listesine "the_numbers" diyorum. Bunu bir özellik olarak adlandırmakla ,_numbers öğesinin değerini run-run olarak kaydederiz. Senaryoyu benim kurduğum kuraldaki "Adsız 3" ün yerine olduğu gibi kullanacak olsaydın, senaryo ilk defa dendiğinde {10000, 20000, 30000} ile çalışacak. Bir dahaki sefere çalıştığında, liste {20000, 30000} olacaktır. Bir dahaki sefere çalıştığında, {30000} olacaktır. Ayrıca sonraki tüm işlemler için {30000} olacaktır. Çok uzun bir numara listeniz olduğunu ve bitmeyeceğinizi umuyorum.

Daha iyi bir senaryo, sayılar listesinin sonuncusundan aşağı olduğunu bilmenizi sağlar.


Çok teşekkürler Christian. Senaryonun benim için çalışıyor. Sana nasıl teşekkür edeceğimi bilemiyorum. Sana bir düzine bira almak istiyorum. Senaryonuz için 10 dolar ödeyebilir miyim? Lütfen parayı sana nasıl transfer edeyim.
Vincent,

Hoşgeldiniz. Sana yardım ettiğimi bilmek çok tatmin edici ve tamamen yeterli. Hakkımda daha fazla bilgi için profilimi kontrol edebilirsiniz.
Christian Boyce
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.