Ana içeriğe atla

Sql sorgusu ile sms atmak



Postgresql'de fonksiyonlardan yararlanarak nasıl sms atabiliriz onu anlatmış olacağım. Sms servisi olarak netgsm kullanmış olacağız. Arka planda kod karmaşıklığı yaratmaması için bu yöntemi seçtim. Performans olarak bir şey diyemeyeceğim. Sql sorgusu çalıştırarak sms gönderimi rahatlığı olduğu için sizlerle de paylaşmak istedim. Trigger ekleyerek daha farklı senaryolar eklenebilir. Böylece db'ye yazılan, update olan herhangi bir işlemde kullanıcı sms bilgilendirilebilir.

Kurulumlar

İlk önce PostgreSql için python3'ü kuralım. Benim kullandığım postgresql sürümü 12.

PostgreSql de sürümünüzü öğrenmek için

select version();

sudo apt-get install postgresql-plpython3-12

Daha sonra sunucumuza kurduğumuz python modüllerini sql tarafında aktif edelim.

CREATE EXTENSION plpython3u;


Fonksiyonumuzu oluşturuyoruz.

CREATE FUNCTION smssend (phone text,smstext text)
    RETURNS text
AS $$
    import requests
    usercode=''
    password=''
    msgheader=''
    phone2 = '90'+str(phone)
    smstext2 =smstext.replace("\n","\\n")
    smslist = f"<mp><msg><![CDATA[{smstext2}]]></msg><no>{phone2}</no></mp>\n"  
    url = "https://api.netgsm.com.tr/sms/send/xml"
    payload = f"\n<mainbody>\n<header>\n<company dil="\">Netgsm</company>\n<usercode>{usercode}</usercode>\n<password>{password}</password>\n<type>n:n</type>\n<msgheader>{msgheader}</msgheader>\n</header>\n<body>\n{smslist}</body>\n</mainbody>"
    headers = {
        'content-type': "application/xml"
    }
    response = requests.request("POST", url, data=payload.encode('UTF-8'), headers=headers)
    return response.text
$$ LANGUAGE plpython3u;

n:n oluşturmamdaki amaç herhangi bir kısıtın olmaması, ister sms i tek kişiye, istersek farklı farklı smsleri farklı numaralara da atabilmemiz mümkün. Şuan sadece tek sms gönderiyoruz. 



SONUÇ



Yorumlar

Bu blogdaki popüler yayınlar

WhatsApp Şaka Virüsü

Whatsapp Şaka virüsü ile internetten anlamayan arkadaşlarınıza link atarak eğlenebilirsiniz. Sosyal mühendisliğiniz ne kadar iyiyse inandırıcılıkta artar. Hem android hem ios kullanıcılarında çalışır. Baştan söyleyelim bu virüs değildir. Yine siz bilirsiniz. Bu aralar hacklenmedik sistem kalmadı :D CiftKlik.Net olarak sorumluluk kabul etmiyoruz. Whatsapp api'ları ile ekrana istediğimiz yazıyı yazarak sosyal mühendislik yapıyoruz.

Bütün yazılım dillerinde "Merhaba Dünya" kodları

1)  ASSEMBLY // Ekrana “Merhaba!” yazan örnek program kodu: mov ax,cs mov ds,ax mov ah,9 mov dx, offset Git int 21h xor ax,ax int 21h Git: db "Merhaba!",13,10,"$" 2)  ALGOL (ALGOrithmic Language) // ALGOL 68'e ait, örnek “Merhaba!” kodu: begin print(( "Merhaba!" , newline)) end

İnönü Üniversitesi Bilgisayar Mühendisliği

Mezun oldum İnönü Üniversitesi Bilgisayar Mühendisliğinden yeni mezun olmuş birisi olarak Mühendislik Fakültesi hakkında soru cevap olarak bölüm hakkında bilgi vermiş olacağım. Bilgisayarın bitinden, mimarisine, algoritmasından her şeyine bir fikir sahibi, bu fikirle kodlama yapabilecek seviyeye geldim. Gurbeti yaşadım. Evsiz barksız kalmanın yaşattığı hüznü anladım. Bir selamcık dost kavramını öğrendim. Farklı şehirlerden, farklı kültürden, farklı dilleri konuşan arkadaşlarım oldu.  Dost dediklerimden daha hatır bilen kişilere abilik yaptım, yol gösterecek abiler edindim. Yazılım dünyasından pek çevre yapamasam da güzel insanlar karşıma çıktı. Sınav saatine kadar dışarıda kaldığım zor günler yaşadım. Herkesin kaldığı sınavdan gözü kapalı geçtiğim ;) soru/cevap olmasına rağmen kaldığım sınavlar da oldu. Büyük şirketlerin açıklarını buldum, hala kapatılmadı.