Skip to content Skip to sidebar Skip to footer

LLReminder – Canlı Ders Otomasyon Yazılımı

Proje IDVersiyonDurumLisansDiğer Platformlar
860050v01.0A

1. Proje Hakkında

Bu Proje Arşivlenmiştir.

Bu proje 2020-2021 yılları arasında tamamlanmış olup 2024 yılında bu web sitesine arşivlenmiş halde eklenmiştir. Arşivlenmiş projelerde yer alan bilgiler geçerliğini yitirmiş olabilir. Bundan ötürü arşivlenmiş projeler ile çalışırken, projelerde yer alan yönergelerin güncelliğini mutlaka kontrol ediniz.

LLReminder, Zoom üzerinden gerçekleştirilen derslere otomatik olarak katılmanızı sağlayacak bir otomasyon programıdır. Haftanın 7 günü, 24 saat boyunca sınırsız sayıda ders eklenebilir ve bu derslerin otomatikleştirilmesi sağlanabilir. Zoom otomasyon işlemi için hem ID ve PASS hem de URL ekleyebilmek mümkündür.

LLReminder, COVID-19 kısıtlamalarının olduğu ve eğitimin tamamen uzaktan eğitime çevrildiği zamanlarda, canlı derslere katılımın kolaylaştırılması ihtiyacından ortaya çıkmıştı. Programın temel amacı, o dönem online dersler için en çok tercih edilen Zoom programında daha önceden belirlenmiş ders programına göre otomatik olarak ilgili ders oturumunu otomatik açmaktı.

Programı, çok da iyi bir tercih yapmayarak AutoIt ile yazmıştım. AutoIt hakkında hiçbir fikrim yoktu ve tamamen bu programı yaparak kullanmayı öğrenmiştim.

LLReminder çok başarılı bir program değildi kesinlikle fakat işini oldukça iyi bir şekilde yerine getiriyordu. Ders eklemek, ders programını ayarlamak nispeten zahmetliydi fakat ihtiyacınız olan her şeyi yerine getirebiliyordunuz. Makine ID esaslı lisanslı bir abonelik sistemi mevcuttu. İyi bir şekilde dokümante edebilmek için oldukça zaman ayırmıştım. Program için oluşturduğum, llreminder.online adresli; programın indirme sayfalarını, dökümantasyonunu, yardım sayfalarını ve online destek sistemini içeren bir web sitesi de mevcuttu.

Program için herhangi bir tanıtım hiç yapılmadı ve bundan ötürü oldukça küçük bir kitleye erişti. COVID-19 etkilerinin de artık tamamen azalmasıyla, önce kaynak kodlarını açık bir hale getirip github’da yayınladım, ardından da projeye ilişkin web sitesini, e-posta hesaplarını ve online destek sistemini kapattım.

Programın kullanım kılavuzunu, web sitesinin ekran görüntüsünü, program arayüzünden bazı ekran görüntülerini bu sayfanın “2. Çalışma” kısmından inceleyebilirsiniz. Programın ve kaynak kodun Github üzerinden de paylaştığım detaylı açıklaması:

LLReminder Öğrenci ve Öğretmen olmak üzere iki farklı versiyondan oluşur ve derslerin daha kolay işlenebilmesi için Zoom programının otomatize edilmesini sağlar. Programın öğrenci versiyonunun ilk kararlı sürümü tamamlanmış ve yayınlanmıştır. Öğretmen versiyonunun ise şuanlık tamamlanması planlanmamaktadır.

Program Özellikleri (Öğrenci Versiyonu)

  • Haftanın 7 günü, 24 saat boyunca sınırsız sayıda ders eklenebilir.
  • Dersler Zoom ID ve PASS şeklinde veya Davet URL’si olarak eklenebilir.
  • Ders programı kolaylıkla ayarlanabilir ve sonradan değiştirilebilir.
  • Dersinizin saati geldiği zaman arkaplanda çalışan program bir bildirim gösterir. Bu bildirim ile derse katılmak isteyip istemediğiniz sorulur. Katılmak istemeniz durumunda derse otomatik bir şekilde giriş yapılır. Katılmak istemezseniz ise bir sonraki dersin gelmesi beklenir.
  • Otomasyon işlemi şu şekilde işlemektedir; eğer kullanıcı Zoom ID ve Pass bilgisi ile derse girilmesini istediyse LLReminder zoom.us/j/ adresini açar. Bu adres Zoom programına yönlendirir ve dersin şifresini sorar. LLReminder bu şifre giriş ekranının açıldığını tespit ettiği zaman şifreyi yazar ve derse otomatik bir şekilde giriş yapmış olur. Eğer kullanıcı ID ve PASS yerine direkt olarak URL girmiş ise o zaman program sadece URL’ye giriş yapar.
  • LLReminder ile sadece derslere değil, Zoom üzerinden gerçekleşen her türlü meeting’e katılmak mümkündür. Hem bireysel hem de konferans şeklinde gerçekleşen etkinliklere katılım test edilmiştir.
  • Bu temel özelliklerin yanı sıra LLReminder programına bazı ek özellikler eklenmiştir. Üst menüde bulunan Ayarlar>Dosya Bakımı kısmından bütün dersleri silmek veya bütün ders programını silmek mümkündür. Ayarlar>Yazılım Ayarları kısmından programın bilgisayar başlangıcında çalıştırılması sağlanabilir. Ayarlar>Güncelleme Kontrolü kısmından yeni bir güncelleme olup olmadığı kontrol edilebilir. Aynı şekilde bu güncelleme kontrolü işlemi haftanın üç günü boyunca arkaplanda da kontrol edilmektedir. Ek olarak program lisans sistemine sahiptir. Program başta ticari olarak geliştirildiğinden dolayı lisans sistemi kullanılmıştır.

Programın Kurulumu

Programı kurmak için bu repo’nun Relases kısmından veya LLReminder web sitseinden ulaşabileceğiniz “LLReminder Setup.exe” dosyasını kullanabilirsiniz. Bu dosya LLReminder’ı sunucudan indirerek bilgisayarınızdaki mevcut kullanıcının Belgelerim klasörüne kuracak, masaüstü kısayolu oluşturacak ve deneme lisansı oluşturacaktır. Programın belgeler klasörüne kurulacak şekilde yapmamızın sebebi False Detection durumunu önlemek. Antivirüs yazılımları Autoit ile yazılmış programları genelde zararlı yazılım olarak görmekte. LLReminder programı şuana kadar çok defa False Detection durumuna maruz kaldı, bunların büyük bir kısmını antivirüs yazılım şirketlerinden yeni bir analiz talep ederek çözebildik ancak yine de programın false detection olarak tespit edilme ihtimalini azaltabilmek adına LLReminder programının belgeler klasörüne kurulmasını sağladık. Eğer programı silmek isterseniz Setup.exe dosyasını tekrardan açmanız yeterli olacaktır. Eğer program zaten yüklüyse kurulum sihirbazı programı kaldırmanızı sağlayacaktır.

Programın kurulumuyla ilgili daha fazla bilgiye LLReminder Web Sitesi Destek Sayfası’nda bulunan makalelerden ulaşabilirsiniz.

Kaynak Kodunu Kullanma

LLReminder’ı ilk olarak ticari olarak geliştirmemize rağmen programlama bilgimizin programın geleceği için yeterli olmayacağını bildiğimizden dolayı açık kaynak hale çevirdik. Böylece programın kaynak kodunu kendi amaçlarınıza göre değiştirerek programı GNU General Public License v3.0 kapsamında istediğiniz şekilde kullanabilirsiniz. Program Autoit programlama dili ile yazıldı ve programı yapmaya kalkışmadan önce bu programlama dili ile ilgili pek bir bilgim yoktu. Bundan dolayı kaynak kodu içerisinde mantık hataları veya eksikler olabilir, bilginize. Her türlü katkılarınıza açığız.

Gereksinimler

  • Autoit (SciTE Script Editor ve KODA Form Designer kullanılacak.)

Ayrıca bu repo’da bulunan “Kaynak Kodları” klasörü ve “Program/v1.0” klasörü gerekmektedir.

Programı Anlama

Programın kaynak kodunu kullanabilmek için ilk olarak programın çalışma şeklini anlamanız gerekmektedir. LLReminder’ın program dosyaları bu repo’nun “Program/v1.0” klasöründe gözüktüğü gibidir. Programı anlamak için bu klasörü inceleyelim;

Bu klasörde bulunan “LLReminder Setup.exe” dosyası programın tek bir exe dosyası ile kurulabilmesi için oluşturulmuştur. Bu exe dosyası çalıştırıldığı zaman ilk olarak programın zaten yüklü olup olmadığını kontrol eder. Eğer program zaten yüklü ise kullanıcıya programı kaldırmak veya güncellemek olmak üzere iki seçenek sunar. Eğer program yüklü değil ise programı yükler. Programın yüklenmesi şu şekilde gerçekleşir; İlk olarak sunucudan LLReminder’ın zip olarak sıkıştırılmış bir hali indirilir, bu zip dosyası bilgisayarın Belgeler klasörüne dışa aktarılır, eğer program ilk defa yükleniyorsa deneme lisansı başlatılır ve son olarak programın sürümü kayıt defterine yazılır.

LLReminder klasörünün içine bakacak olursak;

  • LLReminder.exe ders ekleme, ders programını düzenleme ve programı başlatma gibi çeşitli özelliklerin bulunduğu ana programdır. Bu program otomasyon işlemini gerçekleştirmez. Bu program ders ekleme, ders programını düzenleme ve otomasyon işlemini başlatmayı sağlar. Otomasyon işlemi bu program üzerinden başlatıldıktan sonra bu program kapatılabilir. Dersler ve ders programı .ini dosyası olarak /core/veriler klasörünün içine oluşturulur.

LLReminder klasörünün içindeki core klasörünün içindeki dosyalara ve klasörlere bakacak olursak;

  • LLReminderDersHatirlatici.exe dosyası programın arka planda çalışan ve otomasyon fonksiyonununu gerçekleştiren dosyadır. LLReminder.exe programından programı çalıştır butonuna basıldığı zaman bu dosya çalıştırılır. Bu dosya arkaplanda çalıştığı sürece ders otomasyonu işlemi gerçekleşir.
  • LLReminderHizliBaslangicRehberi.pdf dosyası LLReminder programının kullanımını ve özelliklerini anlatan bir kullanım kılavuzu ve hızlı başlangıç rehberidir.
  • LisansSozlesmesi.txt dosyası programın lisans sözleşmesini barındırır. Bu dosya LLReminder.exe programındaki Program Hakkında sayfasında gözükür.
  • “font” klasörü programda kullanılan Trenda yazı tipini barındırır.
  • “gorseller” klasörü programda kullanılan görselleri barındırır.
  • “veriler” klasörü LLReminder.exe programında oluşturulan derslerin ve ders programının tutulduğu klasördür. Aynı zaman LLReminderDersHatirlatici.exe programı açıldığı zaman ilk olarak buradaki veriyi okur, daha sonra otomasyon işlemine geçer.

Programın dosya sistemi bu şekilde. Tabiki de en iyisi bu değil, iyileştirmeler yapmak mümkün.

Kaynak Kodunu Düzenleme

Programın kaynak kodunu istediğiniz şekilde lisans kapsamında düzenleyebilirsiniz. Bunun için dikkat etmeniz gereken birkaç nokta bulunmaktadır.

Programın kaynak kodları bu repo’nun “Kaynak Kodları” klasöründe bulunmaktadır. Bu klasörün içinde programın kendi kaynak kodları ve programa include edilen birkaç kaynak kodu bulunmaktadır. Ayrıca bunlara ek olarak KODA Form Designer kodları da eklenmiştir. Eğer görsel arayüzde değişiklik yaparsanız bunu kaynak koda yansıtmanız gerektiğini unutmayın.

Programın kaynak kodlarını düzenlemek için şunları yapmanız gerekir; İlk olarak Includes klasöründe bulunan “Startup.au3”, “license.au3” ve “Includes” klasörünü “Program Kaynak Kodları” klasörünün içine atın. Daha sonra “Program/v1.0” klasöründe bulunan core klasörünü içindeki LLReminderDersHatirlatici.exe hariç olmak üzere Program Kaynak Kodları klasörünün içine atın.

Böylece programın kaynak kodlarını düzenleyebilirsiniz. LLReminder (Ana Program).au3 => LLReminder.exe dosyasının kaynak kodudur. LLReminder (Arkaplanda Çalışan Program).au3 => LLReminderDersHatirlatici.exe dosyasının kaynak kodudur. LLReminder Kurulum Sihirbazı.au3 => LLReminderSetup.exe dosyasının kaynak kodudur.

Not: LLReminder Kurulum Sihirbazını derlerken tasarımda bulunan resmin programın içine gömülebilmesi için “/Görsel Arayüz Dosyaları/Kurulum Sihirbazı Arayüz Dosyaları” klasörü içinde bulunan foto.jpg dosyasınn “LLReminder Kurulum Sihirbazı.au3” dosyası ile aynı dizin içinde bulunması gerekmektedir.

Bu noktalara dikkat ederek programın kaynak kodunu istediğiniz şekilde düzenleyebilirsiniz. Bir sorun yaşamanız durumunda Issue oluşturabilirsiniz. Programı düzenleyip yayınlamanız durumunda bu repo’ya bir bağlantı vermeniz bizi sevindirir.

2. Çalışma

2.1 Hızlı Başlangıç Rehberi ve Kullanım Kılavuzu

2.2 Web Sitesi Ekran Görüntüleri

2.3 Program Arayüzü

3. Değerlendirme

Geriye dönüp baktığımda en ilginç hisler barındırdığım projelerimden biri bu sanırım. Evet, AutoIt çok zor bir program değil, öğrenmesi de oldukça basit. Kesinlikle eski bir dil ancak buna rağmen forum sayfasından ihtiyaç duyduğumda birçok insana ulaşabilmiştim.

Aslında bu projeyi ilk olarak python ile yapmaya kalkışmıştım. Arayüzü olmayacaktı ve tamamen arkaplanda çalışacaktı. Sonrasında tesadüfen AutoIt’e denk gelip oradan devam etme kararı almıştım. Sürecin işleyişi oldukça eğiticiydi. Art arda sürekli sorunlarla karşılaştığımı, çok basit şeyler için inanılmaz saatler harcadığımı hatırlıyorum.

Programın çalışma sisteminde kullandığım yol hala biraz komik ve ilginç geliyor bana. Herhangi bir veritabanı olmasın diye her şeyi bir dosyaya dizi olarak yazıp, oradan çağırmayı tercih etmiştim. Aslında arayüzü bu şekilde biraz zorlaştıran da bu olmuştu. Veri eklemek-silmek için yapabileceğim işlemlerin sayısı kısıtlıydı.

Programın neredeyse tüm antivirüsler tarafından false positive olarak algılanması çok canımı sıkmıştı o zamanlar. Aralıksız, ne kadar antivirüs firması varsa ya formlarını dolduruyor ya da mail atıyordum. Genelde yardımcı oluyorlardı ancak programda ufacık bir değişiklik yapıp tekrar derlediğim zaman tekrar aynı mailleri atmam gerekiyordu. AutoIt kullandığım için baya canımın sıkıldığını hatırlıyorum sırf bu nedenden ötürü. Yine de ilginç bir deneyim olmuş benim için. Programın installer dosyasını bile AutoIt’den yapmıştım. Dosyaları uzak sunucudan indirip, zip dosyasından çıkartıp bilgisayarın belgeler (biliyorum, ilginç bir seçim) klasörüne kurup diğer gerekli kurulum işlemlerini yapıyordu.

Tüm bunlara rağmen bu programın tutarlı bir şekilde çalışması çok büyük bir ödül olmuştu gerçekten. Aradan 4 yıl geçti neredeyse ve hala bu programın o zaman işimi ne kadar kolaylaştırdığını düşündüğümde yüzüme ufak bir gülümse geliyor.

Çok acemi bir çalışma olsa da en azından benim için faydalı bir program olmuştu. Acaba tanıtımı için biraz özen gösterilseydi, daha geniş bir kitle için fayda sağlar mıydı hala merak ediyorum.

4. Proje Dosyaları

Github üzerinden ulaşabilirsiniz.

5. Sürüm Geçmişi

  • v01.0: Proje yayınlandı.

6. Uyarılar

LİSANS UYARISI!

Bu proje GPLv3 dijital lisansı ile lisanslanmıştır.
Detaylar için tıklayın.

GÜVENLİK UYARISI!

Bu proje sayfasında üçüncü web sitelerine giden web bağlantıları, üçüncü web sitelerinden gömülü içerikler ve sunucu üzerinde barındırılmakta olan dosyalar bulunmaktadır. Bu sayfa veya bu sayfa üzerinden yönlendirilmiş olduğunuz herhangi bir sayfadan indirmiş olduğunuz dosyaların kullanımı sizin sorumluluğunuzdadır.

Leave a comment