Bu proje, bir Telegram botu oluşturmak için geliştirilmiştir. Bot, belirli aralıklarla kelime quizleri gönderir ve basit bir HTTP sunucusu çalıştırır.
Bu talimatlar, yerel makinenizde projeyi çalıştırmak için gereken adımları sağlar.
- Java 17
- Maven
-
Projeyi klonlayın:
git clone <repository-url> cd <repository-directory>
-
Gerekli bağımlılıkları yükleyin:
mvn clean install
-
config.propertiesdosyasını düzenleyin ve bot token ve kullanıcı adını girin:bot.token = <YOUR_BOT_TOKEN> bot.username = <YOUR_BOT_USERNAME> bot.chatId = <CHANNEL_CHAT_ID>
Projeyi çalıştırmak için aşağıdaki komutu kullanın:
mvn exec:java -Dexec.mainClass="org.example.Main"pom.xmldosyasında, Java 17 kullanımı ve gerekli bağımlılıklar tanımlanmıştır.- Botun ayarları için bir
config.propertiesdosyası gereklidir. Bu dosyada bot token, kullanıcı adı ve kanalın chat ID'si gibi bilgiler bulunur. (Örnek bir dosya yoksa, yukarıdaki formatta manuel olarak resources klasörünün altına ekleyin) words.jsondosyasında, "word"-"definition" keyleri bulunur. (Dilerseniz mevcut bir JSON dosyasını kullanabilir ya da kendi kelime listenizi manuel olarak ekleyebilirsiniz.) (Bu dosyayı da "resources/data" klasörünün altında oluşturabilirsiniz.)
├── src
│ ├── main
│ │ ├── java
│ │ └── resources
│ │ ├── config.properties
│ │ └── data
│ │ └── words.json
[
{
"word": "algorithm",
"definition": "algoritma"
},
{
"word": "apple",
"definition": "elma"
}
]
- Kelime Quizleri: Bot, belirli aralıklarla(5 dakika) kelime quizleri gönderir.
- HTTP Sunucusu: Basit bir HTTP sunucusu çalıştırır ve botun çalıştığını doğrular.
Cannot parse null string
- Eğer projeyi Heroku üzerinde çalıştırıyorsanız, ortam değişkenlerinden
PORTdeğerini alın.
Ancak, projeyi lokal ortamda çalıştırırkenapplication.propertiesya daconfig.propertiesdosyasına şu satırı ekleyebilirsiniz:
server.port=8080 - Projeyi forklayın.
- Yeni bir branch oluşturun (
git checkout -b feature/AmazingFeature). - Değişikliklerinizi işleyin (
git commit -m 'Add some AmazingFeature'). - Branch'e push yapın (
git push origin feature/AmazingFeature). - Bir Pull Request açın.
Proje hakkında sorularınız veya önerileriniz için lütfen Muhammet Kaya adresine e-posta gönderin.