Bu proje, Kastamonu Üniversitesi öğrencileri için geliştirilmiş kapsamlı bir botdur.
Sürekli farklı sitelere (UBYS, SKS, Akademik Takvim) girip kontrol etmek yerine; bu bot GitHub Actions üzerinde (günde 4 kez) otomatik çalışır ve sizi ilgilendiren her gelişmeyi Telegram üzerinden anlık olarak telefonunuza gönderir.
- 🔐 Güvenli Veri: Notlarınız GitHub Secret Gist üzerinde şifreli tutulur. Sizden başka kimse göremez.
- ⚡ Anlık Bildirim: Yeni not girildiğinde (Vize, Final, Büt, Ödev) ders adı ve notuyla birlikte bildirim atar.
- 🧠 Hedef Hesaplama: Vize notunuz açıklandığında, dersi geçmek (CC) veya derece yapmak (AA) için finalden kaç almanız gerektiğini hesaplar.
- 🎓 GANO Takibi: Transkriptinizde GANO veya YANO değiştiğinde haber verir.
- ⏳ Geri Sayım: Vize, Final, Kayıt Haftası gibi önemli tarihlere 45 gün kala geri sayım sayacı başlatır.
- 🛡️ Bölüm Filtresi: Tıp veya Veterinerlik gibi sizi ilgilendirmeyen fakültelerin tarihlerini otomatik filtreler, sadece sizi ilgilendirenleri gösterir.
- 🥘 Günün Menüsü: Her sabah o gün yemekhanede ne çıkacağını (Çorba, Ana Yemek, Tatlı vb.) size raporlar.
- 💤 Hafta Sonu Modu: Hafta sonları yemekhane kapalı olduğu için boş yere bildirim atmaz.
Bu projeyi kendi hesabınızda çalıştırmak için aşağıdaki adımları sırasıyla uygulayın.
Sağ üst köşedeki Fork butonuna tıklayarak projeyi kendi GitHub hesabınıza kopyalayın.
- gist.github.com adresine gidin.
- Dosya adı kısmına
notlar.jsonyazın. - İçerik kısmına sadece iki süslü parantez koyun:
{} - Yeşil butondan "Create secret gist" seçeneğini seçip oluşturun.
- Tarayıcı adres çubuğundaki linkin sonundaki karmaşık kodu kopyalayın. (Bu sizin
GIST_IDniz olacak).
- GitHub'da Settings -> Developer Settings -> Personal access tokens -> Tokens (classic) yolunu izleyin.
- "Generate new token (classic)" diyerek yeni bir token oluşturun.
- İsim verin (Örn: UBYS Bot) ve izinlerden (Scopes) sadece
gistkutucuğunu işaretleyin. - En altta oluşturulan kodu kopyalayın. (Bu sizin
GIST_TOKENınız olacak).
- Telegram'da @BotFather'ı bulun ve
/newbotkomutu ile yeni bir bot oluşturun. Size vereceği API Token'ı kaydedin. - Telegram'da @userinfobot'u açıp
/startdiyerek kendi Chat ID'nizi öğrenin.
Botun çalışması için şifrelerinizi projeye tanıtmalısınız. Repo sayfanızda Settings > Secrets and variables > Actions kısmına gidin ve New repository secret diyerek şu değişkenleri ekleyin:
| Secret Adı | Değer (Örnek) | Açıklama |
|---|---|---|
OGRENCI_NO |
242609006 |
UBYS Öğrenci numaranız |
SIFRE |
sifreniz123 |
UBYS giriş şifreniz |
BOT_TOKEN |
123456:ABC... |
Telegram BotFather'dan alınan token |
CHAT_ID |
987654321 |
Telegram kullanıcı ID'niz |
GIST_ID |
abc123xyz... |
2. adımda aldığınız Gist ID |
GIST_TOKEN |
ghp_12345... |
3. adımda aldığınız GitHub Token |
BOLUM_TIPI |
GENEL |
Normal bölümler için GENEL, Tıp için TIP, Veterinerlik için VET yazın. |
Her şeyi ayarladıktan sonra botu ilk kez manuel çalıştırın:
- Actions sekmesine gidin.
- Sol taraftaki UBYS Bot Daily Run workflow'unu seçin.
- Sağ taraftaki Run workflow butonuna basın.
🎉 Tebrikler! Artık botunuz kuruldu. Günde 4 kez (09:00, 13:00, 17:00, 21:00) otomatik çalışacaktır.
S: Şifrem güvende mi? C: Evet. GitHub Reponuz "Public" olsa bile, şifrelerinizi Secrets içine girdiğiniz için sizden başka kimse göremez.
S: Notlarım başkaları tarafından görülebilir mi? C: Hayır. Notlarınızın kaydedildiği Gist "Secret" (Gizli) olduğu için linki bilmeyen kimse erişemez.
S: Bot ne sıklıkla çalışıyor? C: Varsayılan olarak Türkiye saatiyle 09:00, 13:00, 17:00 ve 21:00 olmak üzere günde 4 kez çalışır.
Proje ile ilgili bir hata fark ederseniz veya özellik isteğiniz varsa lütfen bir Issue açın.
Bu proje tamamen eğitim amaçlı geliştirilmiştir ve sadece kişisel kullanım içindir.
Projenin, Kastamonu Üniversitesi Bilgi İşlem Daire Başkanlığı veya üniversitenin herhangi bir resmi birimi ile hiçbir resmi bağı, iş birliği veya ilişiği yoktur. Botun sağladığı verilerin (sınav tarihleri, notlar vb.) %100 doğruluğu garanti edilmez; resmi duyuruları takip etmek kullanıcının sorumluluğundadır.
Yazılımın kullanımından doğabilecek her türlü teknik ve yasal sorumluluk tamamen kullanıcıya aittir.
Made with ❤️ by Yusuf Sami Turan