İlker Fıçıcılar ilkerf@geocities.com Temmuz 2000 https://ilkerf.tripod.com/teknik/ Gelen epostaları cep telefonundan öğrenmek. Spam, reklam, propaganda mektuplarını engellemek. Cep telefonuyla WAP olmadan borsa, sinema, sözlük, vs. bilgileri. Ve hatta cep telefonunuzdan evdeki bilgisayarın ve cihazların denetimi... Bu yazıda UNIX üzerinde sendmail ve procmail kullanarak istenmeyen (spam, junk, reklam, mail-bomb) e-postaların nasıl engelleneceği anlatılıyor. Kullanılan yazılıma yapılan ufak bir ek ile de cep telefonundan istenen bilgilere ulaşım sağlanıyor. Örneğin WAP desteği olmadan da borsa ve sinema bilgilerine erişmek, bilgisayarı kontrol etmek gibi. UNIX sistemlerinde mektup trafiğini yönetmek için kullanılan programlardan sendmail'in aliases desteğini mektup işlemcisi procmail ve formail ile kullanarak çeşitli uygulamalar geliştirilebilir. Örneğin mektupları gönderene veya içeriğine göre ayrı ayrı mektup kutularına koyabilir, engelleyebilir bir başka adrese yönlendirebilir, ya da mektup içeriğini işleyip, yorumlayıp otomatik bir yanıt verdirebilirsiniz. Önce basit bir alias kullanımı. UNIX'te kendi kullanıcı dizininizde ($HOME) .forward dosyasını oluşturup içine bir eposta adresi girerseniz, sizin o unix hesabınıza gelen mektuplar koşulsuz olarak girdiğiniz yeni e-posta adresine yönlendirilir. Örneğin normalde kullandığım UNIX makinadaki e-posta adresim ilker@gk.ods.org olsun. Eğer echo ilkerf@geocities.com > $HOME/.forward dersem, artık ilker@gk.ods.org adresine atılan bütün epostalar ilkerf@geocities.com adresine gönderilir. Sendmail .forward dosyasını bu tür yönlenme ve komut işleme amaçlı olarak mektup geldiğinde kontrol eder. Şimdi, procmail ile epostalarımızı işleyeceksek .forward dosyasına aşağıdaki tek satırı girmeliyiz: "|IFS=' ' && exec /usr/bin/procmail -f- || exit 75 #ilker" Bu satırda, procmailin bulunduğu dizine ve #ilker yerine kendi kullanıcı adınızın kullanılmasına dikkat edilmeli. procmail'in bulunduğu yeri "which procmail" diyerek ve kullanıcı adınızı da "whoami" adlı komutla öğrenebilirsiniz. Ayrıca o satırdaki bütün noktalama işaretlerini, tırnakları aynen girmelisiniz. Tek tırnaklar da ters yöne bakıyor. Artık size bir mektup geldiğinde sendmail programı .forward dosyasını okuyacak ve gelen mektubu procmail programına gönderip "al bunu ne yaparsan yap" diyecek. Procmail ise ne yapması gerektiğini öğrenmek için ana dizininizdeki ".procmailrc" dosyasını okuyup işleyecektir. Bu noktada daha ayrıntılı ek bilgi için "man sendmail", "man mailaddr", "man forward", "man procmailrc", ve "man procmailex" diyerek ilgili komutların kılavuz dosyalarını okuyabilirsiniz. .procmailrc dosyası "recipe" denen komut gruplarından oluşuyor. Bu recipe'ler belli koşullara göre ne yapılması gerektiğini belirliyor. Her recipe ":0" ile başlıyor, "0" dan sonra bir ":" varsa o recipe için bir lockfile oluşturuluyor, "*" varsa koşul değerlendiriliyor ve sonuç olumluysa sıradaki satır işleniyor. Birden çok koşul varsa hepsinin doğru olması durumunda son satır işleniyor. Eğer son satır "!" ile başlıyorsa gelen mektup, koşul geçekleşmişse, "! "'den sonra gelen adrese gönderiliyor. Eğer "|" ile başlıyorsa da mektup "| "dan sonraki komuta gönderiliyor. Bunlar yoksa son satırdaki mektup kutusuna koyuluyor gelen eposta. Mektup kutularının bulunduğu dizini belirtmek için "MAILDIR" değişkenini kullanıyoruz. Basit bir örnek .procmailrc dosyası oluşturursak: VERBOSE=off MAILDIR=/home/ilker/Mail :0: * ^FROM.*root@gk.ods.org ! berker@gk.ods.org :0 E ! root@gk.ods.org Bu dosyada, durum raporu istemediğimizi "VERBOSE=off", oluşturulacaksa mektup kutularının "/home/ilker/Mail" dizinine konulacağını, ve mektup root'tan geldiyse bu mektubun berker'e yönlendirilmesini, diğer mektupların ise root'a yönlendirilmesi gerektiğini söylüyoruz. Buradaki ":0 E" satırındaki "E" harfi o recipe'nin önceki recipe gerçekleşmediği zaman değerlendirileceğini söylüyor. Bu şekilde if-then-else yapısını kurmak mümkün. "*" dan sonrakilerde ise: "^" ile satırın başının "FROM" olması gerektiğini ".*" ile ise aradaki harflerin önemsiz olduğunu, ve "root@gk.ods.org" ile de satırda bir yerde bunun geçmesi gerektiğini belirtiyoruz. Bir başka örnek ile de istemediğimiz birinden gelen mektubu silelim: VERBOSE=off :0: * ^From.*net-pa@netpa.de /dev/null :0 E ! ilkerf@geocities.com Yukarıdaki kısa örnek .procmailrc dosyası "net-pa@netpa.de" adresinden gelen mektupları silip, diğerlerini ilkerf@geocities.com adresine gönderiyor. Burada quios.com'dan alınan adresin bir özelliği var. Quios'daki q-mail servisi gelen mektupların kimden geldiği bilgisini ve konusunu cep telefonunuza yönlendiriyor. http://www.quios.com/ adresinden üye olup bu servisi kullanmak mümkün. Böylece size gelen mektuplardan cep telefonunuz yoluyla da haberdar olabiliyorsunuz. Eğer birden çok adresten gelen mektupları engellemek istiyorsak yukarıdaki gibi her adres için bir recipe yazıp bunları alt alta koymalıyız. Ama bunu birçok adres için elle yapmak can sıkıcı olur, hem bizim bilgisayarımız var, bu angaryayı ona yüklemeninse sakıncası yok. İsteğimize göre bir .procmailrc dosyasını oluşturtmak için kısa bir UNIX shell scripti yazalım. Bu script kısaca .procmailrc dosyasının değişmeyen kısımlarını ve engellenecek adresler listesinin bulunduğu dosyayı kullanarak oluşturduğu recipe'leri birleştirsin. "----" cizgileri arasındaki satırları kesip "epostaket" isimli bir dosyaya kaydedip "chmod 755 epostaket" diyerek, istediğimiz script'i oluşturabilirsiniz: ------------------aşağıdan itibaren kesin----------------- #!/bin/sh # # epostaket # # e-posta'lari adres ve icerige gore engellemek icin # .forward ve .procmailrc dosyalari olusturumu. # # Ilker Ficicilar # ilker@quios.com # ilkerf@boltblue.com # Temmuz 2000 # # cat <forward "|IFS=' ' && exec /usr/bin/procmail -f- || exit 75 #ilker" EOF1 cat < procmailrc # procmail islem dosyasi # epostaket tarafindan otomatik olarak olusturulmustur. # # epostaket programi icin: https://ilkerf.tripod.com/teknik/ # # Ayrintili durum bilgisi VERBOSE=off # Kullanilacaksa mektup kutularinin dizini ( pine icin mail elm icin Mail # ve netscape icin nsmail dizini) MAILDIR=$HOME/Mail ## log ve rc dosyalari icin dizin adI #PMDIR=$HOME/.procmail #LOGFILE=$PMDIR/log EOF2 echo ":0:" >> procmailrc cat bloke | while read qw do echo "* ^From.*"$qw echo "/dev/null" echo echo ":0 E" done >> procmailrc echo "! ilkerf@geocities.com" >> procmailrc echo >> procmailrc ----------------yukarısı epostaket dosyasına ait---------------- Bu shell scripti çalışabilmek için içinde eposta adresleri olan ve bulunulan dizinde duran "bloke" isimli dosyaya gereksinim duyuyor. Ayrıca programın sonundaki eposta adresini de sizin yönlenme yapılacak adresinizle değiştirmelisiniz. Birkaç spamcının adresinin bulunduğu örnek bloke dosyası şöyle: ------------aşağısı bloke adlı dosyaya konacak---------- admin@anashop.com ali_tokmen@hotmail.com callback@turk.net dtk@hosting4us.com ftaa@hosting4us.com grassroots@hosting4us.com grassroots@turkishforum.com iletisim@cekirdeksanat.com koksal@turkishforum.com mel@melsoft.com.tr net-pa@netpa.de promima@turk.net sibel@hosting4us.com ttimes@hosting4us.com ttimes@turkishtimes.com -----------yukarısı bloke dosyasına ait--------------- Bu dosyayı mektup almak istemediğimiz kişilerin eposta adresleri ile doldurup epostaket scriptini çalıştırdığımızda, bulunduğumuz dizinde "procmailrc" adında bir dosya oluşturulur. Bunu kullanmak için ana dizininize ".procmailrc" adıyla kaydetmelisiniz: cp procmailrc $HOME/.procmailrc Oluşturulan bu dosyanın recipe kısmı aşağıdaki gibi görünüyor: :0: * ^From.*admin@anashop.com /dev/null :0 E * ^From.*ali_tokmen@hotmail.com /dev/null :0 E ! ilkerf@geocities.com Birkaç deneme yaparak .forward ve .procmailrc ile oluşturduğunuz sistemin çalışıp çalışmadığını sınamakta fayda var. Kendinize bir mektup atarak veya kendi adresinizi de bloke ederek bunu deneyebilirsiniz. Son olarak bu procmailrc dosyasıyla biraz oynayıp cep telefonumuzla bilgi elde etmeye çalışalım. Amacımız, procmail ile işlenebilecek bir mektup atmak ve sistemin quios'taki adresimize Subject: kısmında istediğimiz bilgiler bulunan bir mektup yollamasını sağlamak. http://www.quios.com/ 'a üye olduğumuzda yeni bir eposta adresimiz oluyor, ve bu adrese gönderilen her mektubun From: ve Subject: kısımları cep telefonumuza da gönderiliyor. Cep telefonundan SMS ile eposta da atabildiğimize göre, SMS ile bilgi sorgulaması yapabiliriz. Telsim'de eposta göndermek için "adres(konu) mesaj" şeklinde (tırnaklar yok) bir SMS hazırlayıp 7557'ye gönderiyoruz. Turkcell için de eposta göndermenin yolu var, ama bendeki yöntem artık işlemiyor, işleyen bir numara bulup deneyebilirsiniz. Ben şimdilik borsa, ve döviz bilgileriyle birkaç sinemada oynayan filmleri bu yolla öğreniyorum. Örneğin finans bilgileri için tek yaptığım: ilker@gk.ods.org(k-piyasa) diye bir SMS hazırlayıp, bunu 7557'ye yollamak. .procmailrc tarafından işlenecek komutu konu (Subject:) kısmında gönderiyorum, dolayısıyla mektubun (SMSnin) mesaj kısmı boş. Ne yapacağımızı belirlediğimize göre, artık .procmailrc için bir recipe hazırlayabiliriz. Bu recipe Subject: kısmında "k-piyasa" yazan bir mektup geldiyse, bu bir yanıt mektubu veya sendmail daemonundan gönderilmediyse, ayrıca sonsuz döngüyü engellemek için, kendi hesabımızdan da gönderilmediyse, "piyasa" adlı scripti çalıştıracak. Gerekli bilgileri bulup, ayıklayıp, Subject: kısmında göndermek ise bu "piyasa" adlı scriptin işi olsun. Şimdi kısaca kullanacağımız recipe'i görelim: :0 E * !^From filker * !^Subject:.*Re: * !^FROM_DAEMON * ^Subject:.*k-piyasa | /users1/filker/bin/piyasa Burada dört koşul birden sağlandığında tam yeri ile belirtilen "piyasa" adlı script çalıştırılıyor. Siz "piyasa" scriptini nereye koyduysanız tam yeri ile belirtmelisiniz. "* !" 'taki "!" işareti ise koşulu tersine çevirmek için mantıksal "değil" işleci olarak kullanılıyor. Bu recipe yukarıdaki örneklerdeki en son recipe'den bir önceki recipe olmalıdır. Yani artık .procmailrc dosyasının son kısmı şunun gibi görünüyor: :0 E * ^From.*mel@melsoft.com.tr /dev/null :0 E * ^From.*net-pa@netpa.de /dev/null :0 E * !^From filker * !^Subject:.*Re: * !^FROM_DAEMON * ^Subject:.*k-piyasa | /users1/filker/bin/piyasa :0 E ! ilkerf@geocities.com Sıra geldi "piyasa" adlı scripte. Şu "portal" adı verilen www sayfalarının çoğunda finans bilgilerini bulmak olası. Ben e-kolay'ınkini kullandım. http://www.e-kolay.net:5214/finans/haberler/son_dakika.asp adresinde biryerlerde alt alta borsa, dolar, mark ve altının son durumu yazıyor. Bu sayfayı "lynx" programını kullanarak düz yazı biçiminde okuyabiliriz. lynx'i "lynx -dump adres > dosya.txt" şeklinde kullanıyoruz. Ve o adresteki sayfa text biçimine çevrilip istediğimiz bir dosyaya kaydediliyor. Yalnız, lynx'in değişik sürümleri arasındaki farklar yüzünden ve o adresteki sayfanın değişmesinden ötürü aşağıdaki piyasa scripti doğru çalışmayabilir. "pattern matching" kısmını böyle bir durumda yeniden düzenlemelisiniz. Evet, bendeki lynx e-kolayın finans sayfasındaki ilgili bölümü şöyle gösteriyor: Iç Piyasalar [77][LINK] [78]IMKB 14.039 -61 [INLINE] [79][LINK] [80]DEM 299.300 -2.200 [INLINE] [81][LINK] [82]USD 639.900 3.800 [INLINE] [83][LINK] [84]GLD 5.712.000 19.000 [INLINE] Bizi ilgilendiren yalnızca ortadaki kısımlar, ama önce bu kısmı sayfanın geri kalanından düzgün bir biçimde ayırıp almamız gerek. Bunu "grep" adlı düz yazı işleme/arama programıyla yapıyoruz: adr="http://www.e-kolay.net:5214/finans/haberler/son_dakika.asp" lynx -dump $adr > /tmp/sil1 cat /tmp/sil1 | grep -e "]IMKB " -e "]DEM " -e "]USD" Başka IMKB, DEM ve USD sözcükleri ile karışmasın diye baştaki köşeli parantez ve sondaki boşluk ile birlikte arama yaptık. grep ile eğer birden çok sözcüğü arıyacaksak her birinden önce "-e" koymalıyız. Bu komutun ayrıntılı kullanımını görmek için "grep --help" veya "man grep" yazabilirsiniz. Seçtiğimiz satırlardaki gerekli kısımları kesmek içinse "cut" komutunu kullanıyoruz. "cut" komutuna "-d" ile hangi karakteri ayırma karakteri olarak kullanacağını, ve "-f" ile de hangi parçaları istediğimizi söylüyoruz. Gene ayrıntılı bilgi "man cut" ile elde edilebilir. Ayırma karakteri olarak "]" kullanırsak satırların başındaki gereksiz kısımdan kurtuluruz: grep -e "]IMKB " -e "]DEM " -e "]USD" /tmp/sil1 | cut -f4 -d] Evet şimdi seçtiğimiz kısmı ayıklayan bu komutlar şöyle bir sonuç verdi: IMKB 14.039 -61 [INLINE DEM 299.300 -2.200 [INLINE USD 639.900 3.800 [INLINE Bunlardan da yalnızca ilk iki kısmı istiyoruz, öyleyse: grep -e "]IMKB " -e "]DEM " -e "]USD" /tmp/sil1 |cut -f4 -d] |cut -f1-2 -d\ Sondaki "-d\ " 'den sonra bir boşluk var, boşluğa göre ayırıyoruz: IMKB 14.039 DEM 299.300 USD 639.900 Tamam. O karman çorman sayfadan istediğimiz kısmı elde ettik. Geriye bu üç satırı yan yana dizip, bir e-posta'nın Subject: kısmına koyup göndermek kaldı. Tüm bunları yapan "piyasa" adlı script şöyle: -------------aşağısı piyasa scripti------------------- #!/bin/sh # # piyasa shell scripti, finans bilgilerini alıp epostayla gönderir # no_proxy="*" lynx -dump http://www.e-kolay.net:5214/finans/haberler/son_dakika.asp > /tmp/sil grep -e "]IMKB " -e ]DEM -e]USD /tmp/sil | cut -f4 -d] | cut -f1-2 -d\ |while read qw do read we read er echo | mail -s "$qw $we $er" ilkerf@geocities.com 2> /dev/null done rm /tmp/sil -------------yukarısı piyasa scriptine ait-------------- Bu scripti kullanabilmek için eposta adresini quios'tan aldığınız kendi eposta adresinizle değiştirmelisiniz. Ayrıca bu scripti mantıklı bir yere, örneğin $HOME/bin diye bir dizine, koyup "chmod u=rwx,go=rx piyasa" ile çalıştırılabilir hale de getirmelisiniz. Bu script'in bulunduğu yer tam dizin adıyla beraber .procmailrc dosyasında ilgili yerde de belirtilmeli. Hepsini yerleştirip hemen bir deneme yaparsak: Telsim'den 7557'ye gönderilen mesaj: ilker@gk.ods.org(k-piyasa) Quios'tan 1-2 dk. sonra telefona gelen mesaj: From: ilker@gk.ods.org Subject: IMKB 14.039/DEM 299.300/USD 639.900 Seyrek de olsa bazen quios'tan mesajlar çok geç gelebiliyor. Daha iyi bir servis bulunabilirse o da kullanılabilir. Bildiğim kadarıyla turk.net'in de eposta - sms geçidi servisi var. Abone olanlar onu da deneyebilir. Bu servisi daha da geliştirebiliriz. Sinemalarda gösterilen filmleri sorabilir, sözlük sorgulayabilir, hava durumunu öğrenebilir, telefon defterimizden tel. no aratabilir, maç sonuçlarını alabilir, eve telefon gelip gelmediğini, hangi saatlerde arandığımızı öğrenebiliriz. Bunun kullanımı için evdeki bilgisayarımızın 24 saat internette olmasına gerek yok. Crontab'dan belli saatlerde internete girmesini ve mesajlarla ilgilenmesini sağlayabiliriz. Hatta yukarıdaki yöntemlerle bir daha hangi saatte internete bağlanmasını ve ne kadar süreyle hatta kalmasını da ayarlamak mümkün. Bir miktar elektronik bilginiz varsa daha da uçuk fikirleri deneyebilirsiniz. Evde kaç kişi olduğunu, ışıkların açık olup olmadığını, (ütünün prizde unutulup unutulmadığını :) ), ev sıcaklığını cep telefonunuza sorabilir, gene telefonunuzdan klimayı ya da ısıtıcıyı çalıştırabilir, sunucu bilgisayarınızın bakımını yapabilirsiniz vs. vs. vs. Basit bir cep telefonuyla çeşitli denetimleri yapmak için gerekli yazılım aracını oluşturduğumuza göre nerede nasıl kullanacağımız bize bağlı. Bu yazıyı, İzmirdeki birkaç sinemada oynayan filmleri sorgulamada kullanılan scriptlerle ve bunları kullanan .procmailrc dosyasını üreten epostaket scriptinin son biçimiyle bitiriyorum: .procmailrc dosyasına bir iki ek ile İzmir'deki İzmir, Sema, ve Şan sinemalarının programlarını öğrenelim. Gerekli bilgileri http://sinema.isbank.net.tr/izmir/ www sayfasından alıyoruz. Programlar haftada bir Cumaları değiştiği için de her gelen sorguda www sayfasını bir daha yüklemeyeceğiz, yalnızca cumaları önbellekte tuttuğumuz sinema bilgilerini siliyoruz (Cumaları program biraz daha yavaş gelecek ama olsun). Sorguları Subject: kısmında k-sin-sema, k-sin-san, ve k-sin-izmir komutlarıyla yapalım. Daha kısa komutlar da seçebilirsiniz, ama herhangi bir mektupta yanlışlıkla o komutun geçmemesini garanti etmelisiniz. Sema sineması için kullanacağımız recipe şu: :0 E * !^From filker * !^Subject:.*Re: * !^FROM_DAEMON * ^Subject:.*k-sin-sema | /users1/filker/bin/sinesema sinesema isimli script de gidip sema sinemasına ait bilgileri getirip postalıyacak. Benzer şekilde diğer scriptlerin de adlar sineizmir ve sinesan. Hemen scriptleri yorumsuz olarak aşağıya alalım, kullanmadan önce scriptlerdeki bütün eposta adreslerini kendi quios.com adreslerinizle değiştirmeyi unutmamalısınız, yoksa yaptığınız denemelerin çalışıp çalışmadığını siz değil ben görmüş olurum: -----------sineizmir adlı script------------ #!/bin/sh no_proxy="*" dt=`date` set $dt if [ "$1" == "Fri" ]; then rm /tmp/sinus1 fi if [ ! -f /tmp/sinus1 ]; then lynx -dump http://sinema.isbank.net.tr/izmir/izmir.html > /tmp/sinus1 fi cat /tmp/sinus1 | grep -1 \.jpg | grep -v -e \.jpg -e Salon -e "--" | \ cut -f2 -d\( | cut -f1 -d\) | while read qw do read we read er echo | mail -s "Izmir: $qw/$we/$er" ilkerf@geocities.com 2> /dev/null done ---------sineizmir scripti sonu------------------- ------aşağısı sinesan scripti---------------- #!/bin/sh no_proxy="*" dt=`date` set $dt if [ "$1" == "Fri" ]; then rm /tmp/sinus2 fi if [ ! -f /tmp/sinus2 ]; then lynx -dump http://sinema.isbank.net.tr/izmir/san.html > /tmp/sinus2 fi cat /tmp/sinus2 | grep -1 \.jpg | grep -v -e \.jpg -e Salon -e "--" | \ cut -f2 -d\( | cut -f1 -d\) | while read qw do read we read er read rt echo | mail -s "San: $qw/$we/$er/$rt" ilkerf@geocities.com 2> /dev/null done -----------sinesan scripti sonu--------------- ---------aşağısı sinesema scripti----------------- #!/bin/sh no_proxy="*" dt=`date` set $dt if [ "$1" == "Fri" ]; then rm /tmp/sinus3 fi if [ ! -f /tmp/sinus3 ]; then lynx -dump http://sinema.isbank.net.tr/izmir/sema.html > /tmp/sinus3 fi cat /tmp/sinus3 | grep -1 \.jpg | grep -v -e \.jpg -e Salon -e "--" \ | cut -f2 -d\( | cut -f1 -d\) | while read qw do read we read er read rt echo | mail -s "Sema: $qw/$we/$er/$rt" ilkerf@geocities.com 2> /dev/null done ----------------sinesema scripti sonu------------------ Bu scriptlerin de doğru çalışması için sizdeki "lynx" sürümünün çıktısıyla uyumlu olmalı. Örneğin kimi lynx'ler için yukarıdaki "-e \.jpg" kısmını "-e INLINE" ile değiştirmelisiniz. Örneğin lynx'in "2.8rel.2" sürümü aşağıdaki gibi bir text getiriyor: Gösterimdeki Filmler 28 Days (28 Gün) [INLINE] Salon: 1 Seanslar: 12:15 / 14:30 / 16:45 / 19:00 / 21:15 ... Biz de INLINE'ın 1 altı ve 1 üstü dahil olmak üzere üç satırı seçip (cat /tmp/sinus2 | grep -1 INLINE ). Sonra "INLINE" ve "Salon:" içeren satırları çıkarıyoruz (grep -v -e INLINE -e Salon -e "--" ). Sonuçta yalnızca film adı kalıyor. Onun da parantez içindeki Türkçe adını ayıklayıp, diğerleriyle birlikte Subject: kısmına yerleştirip gönderiyoruz. Hepsi bu. Şimdi de "epostaket" scriptinin son biçimini yazalım: -----------------epostaket scripti son sürüm------------------ #!/bin/sh # # epostaket # # e-posta'lari adres ve icerige gore engellemek icin # .forward ve .procmailrc dosyalari olusturumu. # # Ilker Ficicilar # ilker@quios.com # ilkerf@boltblue.com # Temmuz 2000 # # cat < forward "|IFS=' ' && exec /usr/bin/procmail -f- || exit 75 #ilker" EOF1 cat < procmailrc # procmail islem dosyasi # epostaket tarafindan otomatik olarak olusturulmustur. # # epostaket programi icin: https://ilkerf.tripod.com/teknik/ # # Ayrintili durum bilgisi VERBOSE=off # Kullanilacaksa mektup kutularinin dizini ( pine icin mail elm icin Mail # ve netscape icin nsmail dizini) #MAILDIR=$HOME/Mail ## log ve rc dosyalari icin dizin adI #PMDIR=$HOME/.procmail #LOGFILE=$PMDIR/log EOF2 echo ":0:" >> procmailrc cat bloke | while read qw do echo "* ^From.*"$qw echo "/dev/null" echo echo ":0 E" done >> procmailrc echo "* !^From filker" >> procmailrc echo "* !^Subject:.*Re:" >> procmailrc echo "* !^FROM_DAEMON" >> procmailrc echo "* ^Subject:.*k-piyasa" >> procmailrc echo "| /users1/filker/bin/piyasa" >> procmailrc echo >> procmailrc echo ":0 E" >> procmailrc echo "* !^From filker" >> procmailrc echo "* !^Subject:.*Re:" >> procmailrc echo "* !^FROM_DAEMON" >> procmailrc echo "* ^Subject:.*k-sin-izmir" >> procmailrc echo "| /users1/filker/bin/sineizmir" >> procmailrc echo >> procmailrc echo ":0 E" >> procmailrc echo "* !^From filker" >> procmailrc echo "* !^Subject:.*Re:" >> procmailrc echo "* !^FROM_DAEMON" >> procmailrc echo "* ^Subject:.*k-sin-san" >> procmailrc echo "| /users1/filker/bin/sinesan" >> procmailrc echo >> procmailrc echo ":0 E" >> procmailrc echo "* !^From filker" >> procmailrc echo "* !^Subject:.*Re:" >> procmailrc echo "* !^FROM_DAEMON" >> procmailrc echo "* ^Subject:.*k-sin-sema" >> procmailrc echo "| /users1/filker/bin/sinesema" >> procmailrc echo >> procmailrc echo ":0 E" >> procmailrc echo "! ilkerf@geocities.com" >> procmailrc echo >> procmailrc #autoreply icin: #| (formail -r ; cat dosyaadi) | $SENDMAIL -oi -t ----------epostaket script dosyasının sonu----------- Bu scripti kendi istekleriniz doğrultunuzda, kendi epostanızı kullanarak, ve önceden hazırladığınız "bloke" dosyasıyla aynı dizindeyken çalıştırdığınızda "procmailrc" adlı bir dosya oluşturulacak. Bu dosyayı inceleyip son kontrolleri yaptıktan sonra, cp procmailrc ~/.procmailrc diyerek ana dizininizde yeni ".procmailrc" dosyanızı koyarak. Sistemi çalışır hale getirebilirsiniz. Tekrar, "$HOME/.forward" dosyasının da doğru olduğundan emin olun. Örnek ".forward" dosyası da noktasız "forward" adıyla bulunduğunuz dizinde oluşturulmuş olacak. İçindeki "#ilker" kısmını "#kullanıcı_adınız" şeklinde değiştirmelisiniz. Verilen örneklerle cep telefonumuzdan kullanabileceğimiz dört komutumuz oldu: k-piyasa k-sin-izmir k-sin-san k-sin-sema Bu komutları, eposta@adresimiz(komut) biçiminde bir SMS ile gönderiyoruz. Normal bir eposta hesabından da bu epostayı göndererek cep telefonumuza gerekli bilgileri göndertebiliriz. Ama asıl amaç bunu cep telefonundan yapmak. Bu telsim'den kolayca yapılabiliyor. Turkcell'den eposta atabilmek içinse +393334774753'e EMA eposta@adresimiz .konu.mesaj biçiminde bir SMS gönderiyoruz. http://www.excell.to/ 'nun verdiği bu servis Telsim'den de çalışıyor. Üye olunca adreslere kısaltma atayabilmek olası. Böylece komutları EMA kısaltma .k-piyasa. şeklinde gönderebiliyoruz. Adresin kısaltması tek harf de olabiliyor. Buradaki script dosyalarını ve örnekleri https://ilkerf.tripod.com/teknik/ adresinde bulmanız mümkün. Gerekli yazı, dosya ve scriptler ise bir paket halinde https://ilkerf.tripod.com/teknik/elmekyonlen.tar.gz URLsinde. Paketi çektikten sonra, tar -xzvf elmekyonlen.tar.gz diyerek açabilirsiniz. Bu eposta - cep telefonu geçidi kurulu durumda, kullanıyorum ve gayet güzel çalışıyor. Umarım anlattıklarımda bir sorun çıkmaz, deneyeceklere şimdiden kolay gelsin. İlker Fıçıcılar - Temmuz 2000 ---
Ana sayfaya dönmek icin buraya tıklayın
Önceki sayfa için de buraya tıklayın
https://ilkerf.tripod.com/teknik/ sayfası için buraya tıklayın
İlker FIÇICILAR
ilkerf@geocities.com