{"id":24738918,"url":"https://github.com/ibidi/schengen-visa-bot","last_synced_at":"2025-03-22T18:43:57.584Z","repository":{"id":274711965,"uuid":"922300346","full_name":"ibidi/schengen-visa-bot","owner":"ibidi","description":"Schengen Visa Bot, Schengen vizesi için randevu alım sürecini otomatikleştiren bir Telegram botudur. Kullanıcıların vize randevusu almak için gerekli adımları kolaylaştırmak amacıyla geliştirilmiştir. Bot, belirli tarih ve saatler için randevu alabilme imkanı sunar.","archived":false,"fork":false,"pushed_at":"2025-03-16T20:26:58.000Z","size":16089,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-16T21:29:23.507Z","etag":null,"topics":["schengen","schengen-border","schengen-border-control","telegram-bot","visa"],"latest_commit_sha":null,"homepage":"https://ibidi.tr","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ibidi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-25T20:49:13.000Z","updated_at":"2025-03-16T20:25:33.000Z","dependencies_parsed_at":"2025-03-16T21:37:13.134Z","dependency_job_id":null,"html_url":"https://github.com/ibidi/schengen-visa-bot","commit_stats":null,"previous_names":["ibidi/schengen-visa-bot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibidi%2Fschengen-visa-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibidi%2Fschengen-visa-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibidi%2Fschengen-visa-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibidi%2Fschengen-visa-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ibidi","download_url":"https://codeload.github.com/ibidi/schengen-visa-bot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245007062,"owners_count":20546138,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["schengen","schengen-border","schengen-border-control","telegram-bot","visa"],"created_at":"2025-01-27T22:56:07.907Z","updated_at":"2025-03-22T18:43:57.576Z","avatar_url":"https://github.com/ibidi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌍 Schengen Vize Randevu Kontrol Botu\n\nBu bot, Schengen vizesi için randevu kontrolü yapmanızı sağlayan bir Python uygulamasıdır. Bot, belirtilen ülke ve şehir için düzenli aralıklarla randevu kontrolü yapar ve uygun randevu bulunduğunda Telegram ve web arayüzü üzerinden bildirim gönderir.\n\n## 🚀 Özellikler\n\n- 17 farklı Schengen ülkesi için randevu kontrolü\n- 8 farklı Türkiye şehrinden randevu arama\n- Çoklu bildirim sistemi:\n  - 🔔 Web arayüzünde anlık bildirimler\n  - 🎵 Sesli bildirimler\n  - 🖥️ Masaüstü bildirimleri\n  - 📱 Telegram bildirimleri\n- Bildirim geçmişi ve yönetimi\n- Özelleştirilebilir bildirim ayarları\n- Gerçek zamanlı durum güncellemeleri\n- Kullanıcı dostu web arayüzü\n- Terminal veya Telegram bot modu seçeneği\n- WebSocket ile anlık iletişim\n- Otomatik log kaydı ve takibi\n\n## 📋 Gereksinimler\n\n- Python 3.8 - 3.11 arası bir sürüm (3.13 desteklenmemektedir)\n- Telegram Bot Token\n- Telegram Chat ID\n- Modern bir web tarayıcısı (Chrome, Firefox, Safari, Edge)\n\n## 🛠️ Kurulum\n\n1. Python'un desteklenen bir sürümünü yükleyin (3.8 - 3.11 arası):\n   - Windows: [Python İndirme Sayfası](https://www.python.org/downloads/)\n   - macOS: `brew install python@3.11`\n   - Linux: `sudo apt-get install python3.11`\n\n2. Repoyu klonlayın:\n```bash\ngit clone https://github.com/ibidi/schengen-visa-bot.git\ncd schengen-visa-bot\n```\n\n3. Sanal ortam oluşturun ve aktifleştirin:\n```bash\n# Windows için:\npython -m venv venv\nvenv\\Scripts\\activate\n\n# macOS/Linux için:\npython3 -m venv venv\nsource venv/bin/activate\n```\n\n4. Gerekli paketleri yükleyin:\n```bash\npip install -r requirements.txt\n```\n\n5. `.env` dosyasını düzenleyin:\n```bash\n# Telegram Bot Ayarları\nTELEGRAM_BOT_TOKEN=your_bot_token_here\nTELEGRAM_CHAT_ID=your_chat_id_here\n\n# VFS Global Giriş Bilgileri (İsteğe bağlı)\nVFS_EMAIL=your_vfs_email@example.com\nVFS_PASSWORD=your_vfs_password\n\n# Flask Güvenlik Anahtarı\nFLASK_SECRET_KEY=generate_a_secure_random_key_here\n```\n\n6. Güvenli bir Flask Secret Key oluşturun:\n```bash\n# Python konsolunda:\npython -c 'import secrets; print(secrets.token_hex(32))'\n```\nÇıktıyı kopyalayıp `.env` dosyasındaki `FLASK_SECRET_KEY` değeri olarak kullanın.\n\n7. Veritabanını oluşturun:\n```bash\npython create_db.py\n```\nBu komut:\n- Yeni bir SQLite veritabanı oluşturur\n- Gerekli tabloları oluşturur\n- Varsayılan admin kullanıcısını oluşturur:\n  - Kullanıcı adı: `admin`\n  - Şifre: `admin123`\n\n## 🎮 Kullanım\n\nBot iki farklı modda çalıştırılabilir:\n\n### 1. Web Arayüzü Modu\nBu mod, web tarayıcısı üzerinden kontrol edilebilen bir arayüz sunar.\n```bash\npython web_app.py\n```\nTarayıcınızda `http://localhost:5000` adresine gidin.\n\n### 2. Telegram Bot Modu\nBu mod, Telegram üzerinden komutlarla kontrol edilebilen bir bot başlatır.\n```bash\npython bot.py\n```\n\n### 3. Terminal Modu\nBu mod, terminal üzerinden kontrol edilebilen bir arayüz sunar.\n```bash\npython bot.py --terminal\n```\n\n## 🔔 Bildirim Sistemi\n\nBot şu bildirim kanallarını destekler:\n\n1. **Web Bildirimleri**: Web arayüzünde anlık pop-up bildirimler\n2. **Sesli Bildirimler**: Randevu bulunduğunda sesli uyarı\n3. **Masaüstü Bildirimleri**: Tarayıcı üzerinden masaüstü bildirimleri\n4. **Telegram Bildirimleri**: Telegram üzerinden mesaj bildirimleri\n\nBildirim ayarlarını `/notification_settings` sayfasından özelleştirebilirsiniz.\n\n## 📱 Telegram Bot Komutları\n\n- `/start` - Yeni randevu kontrolü başlat\n- `/stop` - Aktif kontrolleri durdur\n- `/status` - Mevcut kontrol durumunu göster\n- `/help` - Komut listesini göster\n\n## 📱 Telegram Bot Kurulumu\n\n1. Telegram'da [@BotFather](https://t.me/botfather) ile yeni bir bot oluşturun\n2. Bot token'ını alın ve `.env` dosyasına kaydedin\n3. [@userinfobot](https://t.me/userinfobot)'u kullanarak Chat ID'nizi alın\n4. Chat ID'yi `.env` dosyasına kaydedin\n\n## ⚠️ Notlar\n\n- Bot, randevu bulduğunda size tüm bildirim kanalları üzerinden haber verecektir\n- Masaüstü bildirimleri için tarayıcı izinlerini vermeniz gerekir\n- Kontrol sıklığını çok düşük tutmamaya özen gösterin\n- Program çalışırken Ctrl+C ile durdurabilirsiniz\n\n## 🔍 Desteklenen Ülkeler\n\n### 🇪🇺 Schengen Ülkeleri\n- Fransa\n- Hollanda\n- İrlanda\n- Malta\n- İsveç\n- Çekya\n- Hırvatistan\n- Bulgaristan\n- Finlandiya\n- Slovenya\n- Danimarka\n- Norveç\n- Estonya\n- Litvanya\n- Lüksemburg\n- Ukrayna\n- Letonya\n\n### 🌏 VFS Global Ülkeleri\n- İngiltere\n- Kanada\n- Avustralya\n- Yeni Zelanda\n- Güney Afrika\n\n### 🌍 Diğer Ülkeler\n- İtalya\n- Almanya\n\n## 📄 Lisans\n\nBu proje MIT lisansı altında lisanslanmıştır.\n\n## 💾 Veritabanı Yönetimi\n\n### Veritabanını Sıfırlama\nVeritabanını tamamen sıfırlamak için:\n```bash\n# Önce uygulamayı durdurun\nrm instance/visa_bot.db  # veya del instance/visa_bot.db (Windows)\npython create_db.py\n```\n\n### Veritabanı Yedekleme\n```bash\n# SQLite veritabanını yedekleme\ncp instance/visa_bot.db instance/visa_bot.db.backup\n```\n\n### Veritabanı Konumu\n- SQLite veritabanı dosyası: `instance/visa_bot.db`\n- Tüm veriler (bildirimler, loglar, kullanıcı ayarları) bu dosyada saklanır\n\n### Veritabanı Tabloları\n1. `user`: Kullanıcı bilgileri ve ayarları\n2. `notification`: Bildirim geçmişi\n3. `appointment_log`: Randevu kontrol logları\n\n### Admin Hesabını Sıfırlama\nŞifrenizi unuttuysanız:\n1. Veritabanını silin: `rm instance/visa_bot.db`\n2. Yeniden oluşturun: `python create_db.py`\n3. Varsayılan bilgilerle giriş yapın:\n   - Kullanıcı adı: `admin`\n   - Şifre: `admin123` \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibidi%2Fschengen-visa-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fibidi%2Fschengen-visa-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibidi%2Fschengen-visa-bot/lists"}