import pywhatkit as kit
import pandas as pd
import time
import os
import ctypes

ANADIZIN = r"C:\Whatsapp"
EXCEL_DOSYASI = os.path.join(ANADIZIN, "numaralar.xlsx")
FOTO_YOLU = os.path.join(ANADIZIN, "görsel", "görsel.png")

def mesaj_kutusu(metin):
    ctypes.windll.user32.MessageBoxW(0, metin, "Rana Bilgisayar Otomasyon", 0)

def baslat():
    try:
        if not os.path.exists(EXCEL_DOSYASI):
            mesaj_kutusu("HATA: Excel dosyası bulunamadı!")
            return

        df = pd.read_excel(EXCEL_DOSYASI)
        mesaj_kutusu("Otomatik gönderim başlıyor. Tamama bastıktan sonra lütfen bilgisayarda işlem yapmayın. Tarayıcı sekmeleri açılıp kapanacaktır. Son mesajı atana kadar işlem yapmayınız.")
        
        for numara in df['Telefon']:
            numara_str = str(numara).strip()
            if not numara_str.startswith('+'):
                numara_str = '+90' + numara_str if not numara_str.startswith('90') else '+' + numara_str

            # --- OTOMATİK GÖNDERİM AYARLARI ---
            # wait_time=45: Sayfanın yüklenmesi için bekleme süresi
            # tab_close=True: Gönderdikten sonra sekmeyi otomatik kapatır
            # close_time=10: Sekmeyi kapatmadan önce 10 saniye bekler (garanti olsun diye)
            kit.sendwhats_image(
                receiver=numara_str, 
                img_path=FOTO_YOLU, 
                caption="Güncel kampanyalarımızdan haberdar olmak için sosyal medya hesaplarımızı takip etmeyi unutmayın.", 
                wait_time=45, 
                tab_close=True, 
                close_time=10
            )
            
            # WhatsApp'ın spam olarak algılamaması için her gönderim arası mola
            time.sleep(10) 

    except Exception as e:
        with open(os.path.join(ANADIZIN, "OTOMASYON_HATA.txt"), "a") as f:
            f.write(f"{time.ctime()}: {str(e)}\n")
        mesaj_kutusu(f"Sistem Durdu: {str(e)}")

if __name__ == "__main__":
    baslat()