精简版第四轮补裁(P4): 页面层摘除 + Xray更新端点下线 + 本机核心监管下线
页面层(用户真机截图发现前两轮漏裁): - 设置: 摘除 Telegram机器人/邮件菜单与页面, 及页内残留入口(通知页/外部流量/LDAP/2FA设置页) - Xray配置: 摘除负载均衡/DNS/高级配置菜单与页面; 基础配置(出站+路由)完好 - 总览: 摘除 Xray更新弹窗(VersionModal+GeodataSection)全部入口, 版本号改为静态展示 - 13个locale同步摘除461个已删功能专属翻译键(逐键核查前后端引用为零; i18n-dead-keys测试全绿) Xray更新后端(经调查确认仅服务本机bin/xray, 与agent下发/订阅无关): - 删除 getXrayVersion/installXray/updateGeofile 路由与handler(访问返回404) - 删除 ServerService 对应实现与校验和函数; 同步api-docs/monitor白名单/openapi 本机核心监管下线(设计: 主控永不运行本机xray, 入站全在agent): - XrayService.RestartXray 降级为no-op(一次性Warning说明日志); StopXray无进程时幂等返回 - web.go 摘除启动拉起本机核心/CheckXrayRunning看门狗(1s)/ApplyPendingRestart cron(30s)/XrayTrafficJob/CheckClientIpJob 注册 - ApplyPendingRestart 降级为消费即清, 其测试更新为新语义 - XrayMetricsService.Sample 短路: 不再每2s探本机/debug/vars, 状态优雅置为不可用 - 配置生成(纯JSON)/agent链路/订阅/入站CRUD未动; 状态读数优雅归零(stop/Unknown) 注: TestGetXrayConfig_EnabledClientsStillEmitted 在基线945b3a5同样失败(既有问题, 非本轮引入)
This commit is contained in:
@@ -67,16 +67,12 @@
|
||||
"success": "Başarılı",
|
||||
"lastOnline": "Son Çevrimiçi",
|
||||
"lastSubFetch": "Son abonelik çekme",
|
||||
"getVersion": "Sürümü Al",
|
||||
"install": "Yükle",
|
||||
"clients": "Kullanıcılar",
|
||||
"usage": "Kullanım",
|
||||
"twoFactorCode": "Kod",
|
||||
"remained": "Kalan",
|
||||
"security": "Güvenlik",
|
||||
"emptyDnsDesc": "Eklenmiş DNS sunucusu yok.",
|
||||
"emptyFakeDnsDesc": "Eklenmiş Fake DNS sunucusu yok.",
|
||||
"emptyBalancersDesc": "Eklenmiş dengeleyici yok.",
|
||||
"somethingWentWrong": "Bir hata oluştu",
|
||||
"subscription": {
|
||||
"title": "Abonelik Bilgisi",
|
||||
@@ -86,7 +82,6 @@
|
||||
"uploaded": "Yüklenen",
|
||||
"expiry": "Son Kullanma",
|
||||
"totalQuota": "Toplam Kota",
|
||||
"individualLinks": "Bireysel Bağlantılar",
|
||||
"active": "Aktif",
|
||||
"inactive": "Pasif",
|
||||
"unlimited": "Sınırsız",
|
||||
@@ -136,9 +131,6 @@
|
||||
"xrayStatus": "Xray",
|
||||
"stopXray": "Durdur",
|
||||
"restartXray": "Yeniden Başlat",
|
||||
"xraySwitch": "Sürüm",
|
||||
"xrayUpdates": "Xray Güncellemeleri",
|
||||
"xraySwitchClickDesk": "Dikkatli seçin, eski sürümler mevcut yapılandırmalarla uyumlu olmayabilir.",
|
||||
"updatePanel": "Paneli Güncelle",
|
||||
"panelUpdateDesc": "Bu işlem 3X-UI'yi en son sürüme güncelleyecek ve panel servisini yeniden başlatacaktır.",
|
||||
"currentPanelVersion": "Mevcut panel sürümü",
|
||||
@@ -200,9 +192,6 @@
|
||||
"download": "İndirme",
|
||||
"sent": "Gönderilen",
|
||||
"received": "Alınan",
|
||||
"xraySwitchVersionDialog": "Xray sürümünü gerçekten değiştirmek istiyor musunuz?",
|
||||
"xraySwitchVersionDialogDesc": "Bu işlem Xray sürümünü #version# olarak değiştirecektir.",
|
||||
"xraySwitchVersionPopover": "Xray başarıyla güncellendi",
|
||||
"panelUpdateDialog": "Gerçekten paneli güncellemek istiyor musunuz?",
|
||||
"panelUpdateDialogDesc": "Bu işlem 3X-UI'yi #version# sürümüne güncelleyecek ve panel servisini yeniden başlatacaktır.",
|
||||
"panelUpdateStartedPopover": "Panel güncellemesi başlatıldı",
|
||||
@@ -210,24 +199,6 @@
|
||||
"panelUpdateFailedDesc": "Güncelleme başarıyla tamamlanamadı. Sunucu günlüklerini kontrol edin veya komut satırından 'x-ui update' çalıştırın.",
|
||||
"panelUpdateUnknownTitle": "Güncellemenin tamamlandığı doğrulanamadı",
|
||||
"panelUpdateUnknownDesc": "Panel zamanında bir sonuç bildirmedi. Geçerli sürümü kontrol etmek için sayfayı yenileyin veya sunucu günlüklerini kontrol edin.",
|
||||
"geofileUpdateDialog": "Geofile'ı gerçekten güncellemek istiyor musunuz?",
|
||||
"geofileUpdateDialogDesc": "Bu işlem #filename# dosyasını güncelleyecektir.",
|
||||
"geofilesUpdateDialogDesc": "Bu, tüm dosyaları güncelleyecektir.",
|
||||
"geofilesUpdateAll": "Tümünü Güncelle",
|
||||
"geofileUpdatePopover": "Geofile başarıyla güncellendi",
|
||||
"geodataTitle": "Geodata Otomatik Güncelleme",
|
||||
"geodataHint": "Xray bu dosyaları zamanlamaya göre indirir ve yeniden başlatmadan canlı yükler. URL'ler HTTPS olmalıdır. Xray'in güncelleyebilmesi için her dosyanın bin klasöründe önceden mevcut olması gerekir.",
|
||||
"geodataCron": "Zamanlama (cron)",
|
||||
"geodataOutbound": "Outbound üzerinden indir (isteğe bağlı)",
|
||||
"geodataFile": "Dosya adı",
|
||||
"geodataAddFile": "Dosya ekle",
|
||||
"geodataSaveRestart": "Kaydet ve Xray'i Yeniden Başlat",
|
||||
"geodataConfirmTitle": "Geodata ayarları kaydedilsin mi?",
|
||||
"geodataConfirmContent": "Xray yapılandırma şablonu güncellenecek ve Xray yeniden başlatılacak.",
|
||||
"geodataInvalidUrl": "Her dosya için bir HTTPS URL gerekir.",
|
||||
"geodataInvalidFile": "Dosya adı yalnızca dosya adı olmalıdır, örn. geosite_custom.dat (yol içermemeli).",
|
||||
"geodataInvalidCron": "Cron 5 alandan oluşmalıdır, örn. 0 4 * * *",
|
||||
"geodataEmpty": "Yapılandırılmış dosya yok. Yönlendirme kurallarında dosyalar ext:geosite_custom.dat:category olarak kullanılır.",
|
||||
"dontRefresh": "Kurulum devam ediyor, lütfen bu sayfayı yenilemeyin",
|
||||
"logs": "Günlükler",
|
||||
"accessLogs": "Erişim Günlükleri",
|
||||
@@ -1082,7 +1053,6 @@
|
||||
"warnDefaultBasePath": "Varsayılan temel yol \"/\" yaygın olarak bilinmektedir — rastgele bir yol ile değiştirin.",
|
||||
"warnDefaultSubPath": "Varsayılan abonelik yolu \"/sub/\" yaygın olarak bilinmektedir — değiştirin.",
|
||||
"warnDefaultJsonPath": "Varsayılan JSON abonelik yolu \"/json/\" yaygın olarak bilinmektedir — değiştirin.",
|
||||
"TGBotSettings": "Telegram Botu",
|
||||
"panelListeningIP": "Dinleme IP",
|
||||
"panelListeningIPDesc": "Web paneli için IP adresi. (tüm IP'leri dinlemek için boş bırakın)",
|
||||
"panelListeningDomain": "Dinleme Alan Adı",
|
||||
@@ -1107,43 +1077,12 @@
|
||||
"currentPassword": "Mevcut Şifre",
|
||||
"newUsername": "Yeni Kullanıcı Adı",
|
||||
"newPassword": "Yeni Şifre",
|
||||
"telegramBotEnable": "Telegram Botunu Etkinleştir",
|
||||
"telegramBotEnableDesc": "Telegram botunu etkinleştirir.",
|
||||
"telegramToken": "Telegram Token",
|
||||
"telegramTokenDesc": "'{'@'}BotFather'dan alınan Telegram bot token.",
|
||||
"telegramProxy": "SOCKS Proxy",
|
||||
"telegramProxyDesc": "Telegram'a bağlanmak için SOCKS5 proxy'sini etkinleştirir. (ayarları kılavuzda belirtilen şekilde ayarlayın)",
|
||||
"telegramAPIServer": "Telegram API Sunucusu",
|
||||
"telegramAPIServerDesc": "Kullanılacak Telegram API sunucusu. Varsayılan sunucuyu kullanmak için boş bırakın.",
|
||||
"telegramChatId": "Yönetici Sohbet Kimliği",
|
||||
"telegramChatIdDesc": "Telegram Yönetici Sohbet Kimliği (Chat ID). Birden fazla ise virgülle ayırın. ({'@'}userinfobot'tan alabilirsiniz veya botta '/id' komutunu kullanabilirsiniz.)",
|
||||
"telegramNotifyTime": "Bildirim Zamanı",
|
||||
"telegramNotifyTimeDesc": "Telegram botunun periyodik raporları gönderme sıklığı. Hazır bir aralık seçin veya bir crontab ifadesi girmek için Özel'i seçin.",
|
||||
"notifyTime": {
|
||||
"every": "@every — bir aralıkla tekrarla",
|
||||
"hourly": "@hourly — her saat",
|
||||
"daily": "@daily — her gün 00:00'da",
|
||||
"weekly": "@weekly — her hafta",
|
||||
"monthly": "@monthly — her ay",
|
||||
"custom": "Özel (crontab)",
|
||||
"seconds": "Saniye",
|
||||
"minutes": "Dakika",
|
||||
"hours": "Saat",
|
||||
"interval": "Aralık",
|
||||
"unit": "Birim"
|
||||
},
|
||||
"tgNotifyBackup": "Veritabanı Yedeği",
|
||||
"tgNotifyBackupDesc": "Bir rapor ile birlikte veritabanı yedek dosyasını gönderir.",
|
||||
"tgNotifyLogin": "Giriş Bildirimi",
|
||||
"tgNotifyLoginDesc": "Birisi web panelinize giriş yapmaya çalıştığında kullanıcı adı, IP adresi ve zaman hakkında bildirim almanızı sağlar.",
|
||||
"sessionMaxAge": "Oturum Süresi",
|
||||
"sessionMaxAgeDesc": "Giriş yaptıktan sonra oturum süresi. (birim: dakika)",
|
||||
"expireTimeDiff": "Son Kullanma Tarihi Bildirimi",
|
||||
"expireTimeDiffDesc": "Bu eşik seviyesine ulaşıldığında son kullanma tarihi hakkında bildirim almanızı sağlar. (birim: gün)",
|
||||
"trafficDiff": "Trafik Sınırı Bildirimi",
|
||||
"trafficDiffDesc": "Bu eşik seviyesine ulaşıldığında trafik sınırı hakkında bildirim almanızı sağlar. (birim: GB)",
|
||||
"tgNotifyCpu": "CPU Yükü Bildirimi",
|
||||
"tgNotifyCpuDesc": "CPU yükü bu eşik seviyesini aşarsa bildirim almanızı sağlar. (birim: %)",
|
||||
"timeZone": "Saat Dilimi",
|
||||
"timeZoneDesc": "Planlanmış görevler bu saat dilimine göre çalışacaktır.",
|
||||
"subSettings": "Abonelik",
|
||||
@@ -1208,10 +1147,6 @@
|
||||
"subEncryptDesc": "Abonelik hizmetinin döndürülen içeriğini Base64 ile şifreler.",
|
||||
"subURI": "Ters Proxy URI",
|
||||
"subURIDesc": "Abonelik bağlantısı ve QR kodu için Dinleme Alan Adı/Dinleme Portu yerine kullanılan tam temel URL (scheme://alanadi[:port]/yol/). Abonelik bir ters proxy üzerinden veya yukarıdakilerden farklı bir alan adı/port üzerinden erişildiğinde bunu ayarlayın.",
|
||||
"externalTrafficInformEnable": "Harici Trafik Bilgisi",
|
||||
"externalTrafficInformEnableDesc": "Her trafik güncellemesinde harici API'yi bilgilendirir.",
|
||||
"externalTrafficInformURI": "Harici Trafik Bilgisi URI'si",
|
||||
"externalTrafficInformURIDesc": "Trafik güncellemeleri bu URI'ye gönderilir.",
|
||||
"restartXrayOnClientDisable": "Otomatik Devre Dışı Sonrası Xray'i Yeniden Başlat",
|
||||
"restartXrayOnClientDisableDesc": "Bir kullanıcı süre dolumu veya trafik limiti nedeniyle otomatik devre dışı bırakıldığında Xray'i yeniden başlatır.",
|
||||
"fragment": "Parçalama",
|
||||
@@ -1221,38 +1156,6 @@
|
||||
"noisesSett": "Noises Ayarları",
|
||||
"trustedProxyCidrs": "Güvenilir Proxy CIDR'leri",
|
||||
"trustedProxyCidrsDesc": "İletilen host, proto ve istemci IP başlıklarını ayarlamasına izin verilen IP'ler/CIDR'ler (virgülle ayrılmış).",
|
||||
"ldap": {
|
||||
"enable": "LDAP senkronizasyonunu etkinleştir",
|
||||
"host": "LDAP sunucusu",
|
||||
"port": "LDAP bağlantı noktası",
|
||||
"useTls": "TLS kullan (LDAPS)",
|
||||
"skipTlsVerify": "TLS sertifika doğrulamasını atla",
|
||||
"skipTlsVerifyDesc": "Güvenli değil — sunucu sertifika doğrulamasını devre dışı bırakır. Yalnızca dahili/güvenilmeyen CA'larla kullanın.",
|
||||
"bindDn": "DN'yi yazın",
|
||||
"passwordConfigured": "Yapılandırıldı; mevcut parolayı korumak için boş bırakın.",
|
||||
"passwordUnconfigured": "Yapılandırılmadı.",
|
||||
"passwordPlaceholder": "Yapılandırıldı — değiştirmek için yeni değer girin",
|
||||
"baseDn": "Temel DN",
|
||||
"userFilter": "Kullanıcı filtresi",
|
||||
"userAttr": "Kullanıcı özniteliği (username/email)",
|
||||
"vlessField": "VLESS flag özniteliği",
|
||||
"flagField": "Genel flag özniteliği (opsiyonel)",
|
||||
"flagFieldDesc": "Ayarlanırsa VLESS flag'ini geçersiz kılar — örn. shadowInactive.",
|
||||
"truthyValues": "Truthy değerler",
|
||||
"truthyValuesDesc": "Virgülle ayrılmış; varsayılan: true,1,yes,on",
|
||||
"invertFlag": "Flag'i tersine çevir",
|
||||
"invertFlagDesc": "Öznitelik «devre dışı» anlamına geldiğinde etkinleştirin (örn. shadowInactive).",
|
||||
"syncSchedule": "Senkronizasyon programı",
|
||||
"syncScheduleDesc": "cron benzeri dize, örn. @every 1m",
|
||||
"inboundTags": "Gelen bağlantı etiketleri",
|
||||
"inboundTagsDesc": "LDAP senkronizasyonunun istemci otomatik oluşturup/silebileceği gelen bağlantılar.",
|
||||
"noInbounds": "Gelen bağlantı bulunamadı. Önce Gelen Bağlantılar'nda bir tane oluşturun.",
|
||||
"autoCreate": "Kullanıcıları otomatik oluştur",
|
||||
"autoDelete": "Kullanıcıları otomatik sil",
|
||||
"defaultTotalGb": "Varsayılan toplam (GB)",
|
||||
"defaultExpiryDays": "Varsayılan son kullanma (gün)",
|
||||
"defaultIpLimit": "Varsayılan IP limiti"
|
||||
},
|
||||
"subFormats": {
|
||||
"finalMask": "Son Maske",
|
||||
"finalMaskDesc": "Xray finalmask TCP/UDP maskelerini ve QUIC parametrelerini oluşturulan her Xray JSON profiline ekler. Xray JSON aboneliklerini destekleyen bir istemci uygulaması ve güncel bir Xray çekirdeği gerektirir.",
|
||||
@@ -1276,31 +1179,15 @@
|
||||
"muxSett": "Mux Ayarları",
|
||||
"direct": "Doğrudan Bağlantı",
|
||||
"directDesc": "Belirli bir ülkenin alan adları veya IP aralıkları ile doğrudan bağlantı kurar.",
|
||||
"notifications": "Bildirimler",
|
||||
"certs": "Sertifikalar",
|
||||
"externalTraffic": "Harici Trafik",
|
||||
"dateAndTime": "Tarih ve Saat",
|
||||
"proxyAndServer": "Proxy ve Sunucu",
|
||||
"intervals": "Aralıklar",
|
||||
"information": "Bilgi",
|
||||
"profile": "Profil",
|
||||
"language": "Dil",
|
||||
"telegramBotLanguage": "Telegram Bot Dili",
|
||||
"security": {
|
||||
"admin": "Yönetici Kimlik Bilgileri",
|
||||
"twoFactor": "İki Adımlı Doğrulama",
|
||||
"twoFactorEnable": "2FA'yı Etkinleştir",
|
||||
"twoFactorEnableDesc": "Daha fazla güvenlik için ek bir doğrulama katmanı ekler.",
|
||||
"twoFactorModalSetTitle": "İki Adımlı Doğrulamayı Etkinleştir",
|
||||
"twoFactorModalDeleteTitle": "İki Adımlı Doğrulamayı Devre Dışı Bırak",
|
||||
"twoFactorModalSteps": "İki adımlı doğrulamayı ayarlamak için şu adımları izleyin:",
|
||||
"twoFactorModalFirstStep": "1. Bu QR kodunu doğrulama uygulamasında tarayın veya QR kodunun yanındaki metni kopyalayıp uygulamaya yapıştırın.",
|
||||
"twoFactorModalSecondStep": "2. Uygulamadaki kodu girin",
|
||||
"twoFactorModalRemoveStep": "İki adımlı doğrulamayı kaldırmak için uygulamadaki kodu girin.",
|
||||
"twoFactorModalChangeCredentialsTitle": "Kimlik Bilgilerini Değiştir",
|
||||
"twoFactorModalChangeCredentialsStep": "Yönetici kimlik bilgilerini değiştirmek için uygulamadaki kodu girin.",
|
||||
"twoFactorModalSetSuccess": "İki faktörlü kimlik doğrulama başarıyla kuruldu.",
|
||||
"twoFactorModalDeleteSuccess": "İki faktörlü kimlik doğrulama başarıyla silindi.",
|
||||
"twoFactorModalError": "Yanlış kod",
|
||||
"show": "Göster",
|
||||
"hide": "Gizle",
|
||||
@@ -1323,36 +1210,6 @@
|
||||
"getOutboundTrafficError": "Giden trafik alınırken hata oluştu.",
|
||||
"resetOutboundTrafficError": "Giden trafik sıfırlanırken hata oluştu."
|
||||
},
|
||||
"smtpSettings": "SMTP Ayarları",
|
||||
"smtpEnable": "E-posta Bildirimlerini Etkinleştir",
|
||||
"smtpEnableDesc": "SMTP üzerinden e-posta bildirimlerini etkinleştirin",
|
||||
"smtpHost": "SMTP Sunucusu",
|
||||
"smtpHostDesc": "SMTP sunucu ana bilgisayar adı (örn. smtp.gmail.com)",
|
||||
"smtpPort": "SMTP Bağlantı Noktası",
|
||||
"smtpPortDesc": "SMTP sunucu bağlantı noktası (varsayılan: 587)",
|
||||
"smtpUsername": "SMTP Kullanıcı Adı",
|
||||
"smtpUsernameDesc": "SMTP kimlik doğrulama kullanıcı adı",
|
||||
"smtpFrom": "Gönderen Adresi (From)",
|
||||
"smtpFromDesc": "E-postanın From başlığında kullanılan adres. Boş bırakılırsa kullanıcı adı kullanılır.",
|
||||
"smtpFromName": "Gönderen Adı (From)",
|
||||
"smtpFromNameDesc": "From başlığında adresten önce görünen isteğe bağlı ad.",
|
||||
"smtpPassword": "SMTP Parolası",
|
||||
"smtpPasswordDesc": "SMTP kimlik doğrulama parolası",
|
||||
"smtpTo": "Alıcılar",
|
||||
"smtpToDesc": "Virgülle ayrılmış alıcı e-posta adresleri",
|
||||
"emailSettings": "E-posta",
|
||||
"emailNotifications": "Bildirimler",
|
||||
"smtpEventBusNotify": "E-posta Olay Bildirimleri",
|
||||
"smtpEventBusNotifyDesc": "Hangi olayların e-posta bildirimi tetikleyeceğini seçin",
|
||||
"tgEventBusNotify": "Telegram Olay Bildirimleri",
|
||||
"tgEventBusNotifyDesc": "Hangi olayların Telegram bildirimi tetikleyeceğini seçin",
|
||||
"testSmtp": "Test E-postası Gönder",
|
||||
"testTgBot": "Test Mesajı Gönder",
|
||||
"eventGroupOutbound": "Giden Bağlantı",
|
||||
"eventGroupXray": "Xray Çekirdeği",
|
||||
"eventGroupSystem": "Sistem",
|
||||
"eventGroupSecurity": "Güvenlik",
|
||||
"eventGroupNode": "Düğümler",
|
||||
"eventOutboundDown": "Çevrimdışı",
|
||||
"eventOutboundUp": "Çevrimiçi",
|
||||
"eventXrayCrash": "Çökme",
|
||||
@@ -1360,36 +1217,7 @@
|
||||
"eventNodeUp": "Çevrimiçi",
|
||||
"eventCPUHigh": "Yüksek CPU (%)",
|
||||
"requestFailed": "İstek başarısız oldu",
|
||||
"smtpEncryption": "Şifreleme",
|
||||
"smtpEncryptionDesc": "SMTP bağlantı şifreleme yöntemi",
|
||||
"smtpEncryptionNone": "Yok (düz metin)",
|
||||
"smtpEncryptionStartTLS": "STARTTLS",
|
||||
"smtpEncryptionTLS": "TLS (örtük)",
|
||||
"smtpStageConnect": "Bağlantı",
|
||||
"smtpStageAuth": "Kimlik Doğrulama",
|
||||
"smtpStageSend": "Gönderim",
|
||||
"smtpTestSuccess": "Test e-postası başarıyla gönderildi",
|
||||
"smtpHostNotConfigured": "SMTP sunucusu yapılandırılmamış",
|
||||
"smtpNoRecipients": "Yapılandırılmış alıcı yok",
|
||||
"smtpFromNotConfigured": "SMTP gönderen adresi yapılandırılmamış",
|
||||
"eventLoginAttempt": "Oturum açma denemesi",
|
||||
"telegramTokenConfigured": "Yapılandırıldı; mevcut belirteci korumak için boş bırakın.",
|
||||
"telegramTokenPlaceholder": "Yapılandırıldı - değiştirmek için yeni bir belirteç girin",
|
||||
"smtpPasswordConfigured": "Yapılandırıldı; mevcut parolayı korumak için boş bırakın.",
|
||||
"smtpPasswordPlaceholder": "Yapılandırıldı - değiştirmek için yeni bir parola girin",
|
||||
"smtpNotInitialized": "SMTP başlatılmadı",
|
||||
"tgBotNotEnabled": "Telegram botu etkin değil",
|
||||
"tgTestFailed": "Telegram testi başarısız oldu",
|
||||
"tgTestSuccess": "Test mesajı Telegram'a gönderildi",
|
||||
"tgBotNotRunning": "Telegram botu çalışmıyor",
|
||||
"smtpErrorAuth": "Kimlik doğrulama başarısız — kullanıcı adını ve parolayı kontrol edin",
|
||||
"smtpErrorStarttls": "Sunucu STARTTLS gerektiriyor — şifreleme türünü değiştirin",
|
||||
"smtpErrorTls": "Sunucu TLS gerektiriyor — şifreleme türünü değiştirin",
|
||||
"smtpErrorRefused": "Bağlantı reddedildi — sunucuyu ve bağlantı noktasını kontrol edin",
|
||||
"smtpErrorTimeout": "Bağlantı zaman aşımına uğradı — sunucuya ulaşılamıyor",
|
||||
"smtpErrorRelay": "Sunucu bu adresten gönderimi reddediyor",
|
||||
"smtpErrorEof": "Bağlantı sunucu tarafından kapatıldı",
|
||||
"smtpErrorUnknown": "SMTP hatası: {{ .Error }}",
|
||||
"eventMemoryHigh": "Bellek kullanımı yüksek (%)",
|
||||
"remarkTemplate": "Açıklama Şablonu",
|
||||
"remarkTemplateDesc": "Ayarlandığında, her abonelik bağlantısının açıklama modelinin yerini alır — değişken belirteçleriyle kendi formatınızı yazın (eklemek için düğmeyi kullanın). Yukarıdaki modeli kullanmak için boş bırakın.",
|
||||
@@ -1475,8 +1303,6 @@
|
||||
"directdomains": "Doğrudan Alan Adları",
|
||||
"ipv4Routing": "IPv4 Yönlendirme",
|
||||
"ipv4RoutingDesc": "Bu seçenekler belirli bir varış yerine IPv4 üzerinden trafiği yönlendirir.",
|
||||
"Template": "Gelişmiş Xray Yapılandırma Şablonu",
|
||||
"TemplateDesc": "Nihai Xray yapılandırma dosyası bu şablona göre oluşturulacaktır.",
|
||||
"FreedomStrategy": "Freedom Protokol Stratejisi",
|
||||
"FreedomStrategyDesc": "Freedom Protokolünde ağın çıkış stratejisini ayarlayın.",
|
||||
"FreedomHappyEyeballs": "Özgürlük Dolu Gözler (IPv4/IPv6)",
|
||||
@@ -1500,11 +1326,6 @@
|
||||
"Balancers": "Dengeleyiciler",
|
||||
"balancerTagRequired": "Etiket zorunludur",
|
||||
"balancerSelectorRequired": "En az bir giden bağlantı seçin",
|
||||
"balancerLive": "Anlık Hedef",
|
||||
"balancerOverride": "Hedef Zorla",
|
||||
"balancerOverridePh": "Otomatik (strateji)",
|
||||
"balancerLiveRefresh": "Dengeleyici durumunu yenile",
|
||||
"balancerNotRunning": "Bu dengeleyici çalışan Xray'de etkin değil — değişikliklerinizi kaydedin veya önce Xray'i başlatın",
|
||||
"routeTester": "Rota Testi",
|
||||
"routeTesterDesc": "Çalışan Xray'e hangi giden bağlantının bir isteği işleyeceğini sorun. Gerçek trafik gönderilmez — karar doğrudan canlı yönlendirme motorundan gelir.",
|
||||
"routeTesterDest": "Alan adı veya IP",
|
||||
@@ -1516,7 +1337,6 @@
|
||||
"routeTesterViaBalancer": "dengeleyici aracılığıyla",
|
||||
"routeTesterDefaultOutbound": "Hiçbir yönlendirme kuralı eşleşmedi — trafik varsayılan (ilk) giden bağlantıya yönlendirilir.",
|
||||
"Routings": "Yönlendirme Kuralları",
|
||||
"completeTemplate": "Tümü",
|
||||
"logLevel": "Günlük Seviyesi",
|
||||
"logLevelDesc": "Hata günlükleri için kayıt seviyesi; hangi detayda bilginin kaydedileceğini belirler.",
|
||||
"accessLog": "Erişim Günlüğü",
|
||||
@@ -1544,7 +1364,6 @@
|
||||
"source": "Kaynak",
|
||||
"dest": "Hedef",
|
||||
"inbound": "Gelen Bağlantı",
|
||||
"balancer": "Dengeleyici",
|
||||
"useComma": "Virgülle ayrılmış öğeler"
|
||||
},
|
||||
"routing": {
|
||||
@@ -1725,32 +1544,7 @@
|
||||
"alreadyAdded": "Bu sunucu zaten çıkış listesinde. Anahtarı yenilemek için {reset} kullanın.",
|
||||
"provisionFailed": "PIA çıkışı oluşturulamadı. Yeniden deneyin."
|
||||
},
|
||||
"tabBalancerSettings": "Dengeleyici Ayarları",
|
||||
"tabObservatory": "Gözlemci",
|
||||
"observatory": {
|
||||
"autoManaged": "Gözlemciler dengeleyicilerinize göre otomatik yönetilir. Nasıl sınama yapacaklarını aşağıdan ayarlayın; izlenen çıkışlar dengeleyici seçicilerini izler.",
|
||||
"emptyHint": "Etkin bir bağlantı gözlemcisi yok. Least Ping veya Least Load dengeleyici — ya da fallback içeren Random / Round-robin dengeleyici — oluşturduğunuzda otomatik olarak bir tane eklenir; böylece gözlemci kullanan dengeleyiciler hedef seçmeden önce çıkış sağlığını kontrol edebilir.",
|
||||
"mixedLegacy": "Bu yapılandırmada hem Observatory hem de Burst Observatory var. Xray tek bir global gözlemci kullanır, bu nedenle bu eski karma durum desteklenmez; dengeleyiciler kaydedildiğinde tek bir gözlemciye normalleştirilir.",
|
||||
"subjectSelector": "İzlenen Çıkışlar",
|
||||
"subjectSelectorDesc": "Bu gözlemcinin sınadığı çıkış etiketleri. Dengeleyicilerinize göre otomatik yönetilir.",
|
||||
"probeURL": "Sınama URL'si",
|
||||
"probeURLDesc": "Her çıkışı ölçmek için istenen URL. HTTP 204 döndürmelidir.",
|
||||
"probeInterval": "Sınama Aralığı",
|
||||
"probeIntervalDesc": "Her çıkışın ne sıklıkta sınanacağı, örn. 30s, 1m, 2h45m.",
|
||||
"enableConcurrency": "Eşzamanlı Sınama",
|
||||
"enableConcurrencyDesc": "İzlenen tüm çıkışları tek tek yerine aynı anda sına. Daha hızlı ama ağda daha görünür.",
|
||||
"destination": "Sınama Hedefi",
|
||||
"destinationDesc": "Her çıkışı ölçmek için istenen URL. HTTP 204 döndürmelidir.",
|
||||
"connectivity": "Bağlantı Denetimi",
|
||||
"connectivityDesc": "İsteğe bağlı yerel ağ denetim URL'si; yalnızca hedef başarısız olduktan sonra denenir. Atlamak için boş bırakın.",
|
||||
"interval": "Sınama Aralığı",
|
||||
"intervalDesc": "Çıkış başına sınamalar arasındaki ortalama süre, örn. 1m. En az 10s.",
|
||||
"timeout": "Sınama Zaman Aşımı",
|
||||
"timeoutDesc": "Bir sınamanın başarısız sayılmadan önce ne kadar bekleneceği, örn. 5s.",
|
||||
"sampling": "Örnekleme Sayısı",
|
||||
"samplingDesc": "Her çıkışı puanlamak için tutulan son sınama sonucu sayısı.",
|
||||
"httpMethod": "HTTP Yöntemi",
|
||||
"httpMethodDesc": "Sınamalar için kullanılan HTTP yöntemi.",
|
||||
"deleteAlsoObservatory": "Bu, Observatory kullanan son dengeleyici, bu yüzden o da kaldırılacak.",
|
||||
"deleteAlsoBurst": "Bu, Burst Observatory kullanan son dengeleyici, bu yüzden o da kaldırılacak."
|
||||
},
|
||||
@@ -1762,25 +1556,7 @@
|
||||
},
|
||||
"balancer": {
|
||||
"balancerStrategy": "Strateji",
|
||||
"tag": "Etiket",
|
||||
"tagDuplicate": "Etiket başka bir dengeleyici tarafından kullanılıyor",
|
||||
"tagPlaceholder": "benzersiz dengeleyici etiketi",
|
||||
"selector": "Seçici",
|
||||
"fallback": "Yedek Çözüm",
|
||||
"cycleTooltip": "Döngü: {path} → ({start} adresine geri dön)",
|
||||
"expected": "Beklenen",
|
||||
"expectedPlaceholder": "optimal düğüm sayısı",
|
||||
"maxRtt": "Maks. RTT",
|
||||
"tolerance": "Tolerans",
|
||||
"baselines": "Temel Değerler",
|
||||
"costs": "Maliyetler",
|
||||
"costMatch": "Etiket deseni",
|
||||
"costValue": "Ağırlık",
|
||||
"costRegexp": "Düzenli ifade eşleşmesi",
|
||||
"balancerDeleteInUse": "Bu dengeleyici silinemez — şu dengeleyicilerin yedeği olarak kullanılmaktadır: {names}",
|
||||
"balancerFallbackCycle": "Bu dengeleyiciyi yedek olarak ayarlayamazsınız — döngüsel bağımlılık oluşturur.",
|
||||
"balancerFallbackInfo": "Trafik şu yoldan yönlendirilecektir: Dengeleyici → Loopback → Sunucu → Hedef dengeleyici → Bağlantı çıkışı. Bu, sunucu üzerinden ek bir atlama ekler ve hafif gecikmelere neden olabilir.",
|
||||
"fallbackBalancerHint": "Yedek olarak başka bir dengeleyici seçin",
|
||||
"reservedPrefix": " _bl_ ön eki dahili dengeleyici loopback nesneleri için ayrılmıştır"
|
||||
},
|
||||
"wireguard": {
|
||||
@@ -1883,55 +1659,8 @@
|
||||
"usage": "Kullanım",
|
||||
"addOutbound": "Giden Bağlantı Ekle"
|
||||
},
|
||||
"dns": {
|
||||
"enable": "DNS'yi Etkinleştir",
|
||||
"enableDesc": "Dahili DNS sunucusunu etkinleştirir.",
|
||||
"tag": "DNS Gelen Bağlantı Etiketi",
|
||||
"tagDesc": "Bu etiket, yönlendirme kurallarında gelen bağlantı etiketi olarak kullanılabilir.",
|
||||
"clientIp": "İstemci IP",
|
||||
"clientIpDesc": "DNS sorguları sırasında belirtilen IP konumunu sunucuya bildirmek için kullanılır.",
|
||||
"disableCache": "Önbelleği Devre Dışı Bırak",
|
||||
"disableCacheDesc": "DNS önbelleğini devre dışı bırakır.",
|
||||
"disableFallback": "Yedeklemeyi Devre Dışı Bırak",
|
||||
"disableFallbackDesc": "Yedek DNS sorgularını devre dışı bırakır.",
|
||||
"disableFallbackIfMatch": "Eşleşirse Yedeklemeyi Devre Dışı Bırak",
|
||||
"disableFallbackIfMatchDesc": "Alan adı listesi eşleştiğinde yedek DNS sorgularını devre dışı bırakır.",
|
||||
"enableParallelQuery": "Paralel Sorguyu Etkinleştir",
|
||||
"enableParallelQueryDesc": "Daha hızlı çözümleme için birden fazla sunucuya paralel DNS sorgularını etkinleştirir.",
|
||||
"strategy": "Sorgu Stratejisi",
|
||||
"strategyDesc": "Alan adlarını çözmek için genel strateji.",
|
||||
"add": "Sunucu Ekle",
|
||||
"edit": "Sunucuyu Düzenle",
|
||||
"domains": "Alan Adları",
|
||||
"expectIPs": "Beklenen IP'ler",
|
||||
"unexpectIPs": "Beklenmeyen IP'ler",
|
||||
"useSystemHosts": "Sistem Hosts'larını Kullan",
|
||||
"useSystemHostsDesc": "İşletim sisteminin hosts dosyasını kullanır.",
|
||||
"serveStale": "Süresi Dolmuş Sonuçları Sun",
|
||||
"serveStaleDesc": "Arka planda yenilenirken süresi dolmuş önbellek sonuçlarını döndürür.",
|
||||
"serveExpiredTTL": "Süresi Dolmuş TTL",
|
||||
"serveExpiredTTLDesc": "Süresi dolmuş önbellek girdilerinin geçerlilik süresi (saniye); 0 = asla",
|
||||
"timeoutMs": "Zaman Aşımı (ms)",
|
||||
"skipFallback": "Yedekleri Atla",
|
||||
"finalQuery": "Son Sorgu",
|
||||
"hosts": "Sunucular",
|
||||
"hostsAdd": "Host Ekle",
|
||||
"hostsEmpty": "Tanımlı Host yok.",
|
||||
"hostsDomain": "Alan adı (ör. domain:example.com)",
|
||||
"hostsValues": "IP veya alan adı — yazıp Enter'a basın",
|
||||
"usePreset": "Şablon Kullan",
|
||||
"dnsPresetTitle": "DNS Şablonları",
|
||||
"dnsPresetFamily": "Aile",
|
||||
"clearAll": "Tümünü Sil",
|
||||
"clearAllTitle": "Tüm DNS sunucularını sil?",
|
||||
"clearAllConfirm": "Bu işlem tüm DNS sunucularını listeden kaldırır. Geri alınamaz.",
|
||||
"dnsLeakWarning": "DNS; localhost, düz UDP/TCP, yerel mod DoH/DoQ, fallback sorguları veya EDNS client IP üzerinden sızabilir. Gizlilik önemliyse yönlendirilmiş DoH, hosts sabitlemeleri ve kapalı fallback kullanın."
|
||||
},
|
||||
"fakedns": {
|
||||
"add": "Sahte DNS Ekle",
|
||||
"ipPool": "IP Havuzu Alt Ağı",
|
||||
"poolSize": "Havuz Boyutu"
|
||||
},
|
||||
"dns": {},
|
||||
"fakedns": {},
|
||||
"defaultOutbound": "Varsayılan giden",
|
||||
"defaultOutboundDesc": "Yönlendirme kuralıyla eşleşmeyen trafik bu gideni kullanır (listedeki ilk giden)."
|
||||
},
|
||||
@@ -2055,198 +1784,7 @@
|
||||
}
|
||||
},
|
||||
"tgbot": {
|
||||
"keyboardClosed": "❌ Klavye kapatıldı!",
|
||||
"noResult": "❗ Sonuç yok!",
|
||||
"noQuery": "❌ Sorgu bulunamadı! Lütfen komutu tekrar kullanın!",
|
||||
"wentWrong": "❌ Bir şeyler yanlış gitti!",
|
||||
"noIpRecord": "❗ IP Kaydı Yok!",
|
||||
"noInbounds": "❗ Gelen bağlantı bulunamadı!",
|
||||
"unlimited": "♾ Sınırsız (Sıfırla)",
|
||||
"add": "Ekle",
|
||||
"month": "Ay",
|
||||
"months": "Aylar",
|
||||
"days": "Günler",
|
||||
"hours": "Saatler",
|
||||
"minutes": "Dakikalar",
|
||||
"unknown": "Bilinmeyen",
|
||||
"inbounds": "Gelen Bağlantılar",
|
||||
"clients": "Kullanıcılar",
|
||||
"offline": "🔴 Çevrimdışı",
|
||||
"online": "🟢 Çevrimiçi",
|
||||
"commands": {
|
||||
"unknown": "❗ Bilinmeyen komut.",
|
||||
"pleaseChoose": "👇 Lütfen seçin:\r\n",
|
||||
"help": "🤖 Bu bota hoş geldiniz! Web panelinden belirli verileri sunmak ve gerektiğinde değişiklik yapmanıza olanak tanımak için tasarlanmıştır.\r\n\r\n",
|
||||
"start": "👋 Merhaba <i>{{ .Firstname }}</i>.\r\n",
|
||||
"welcome": "🤖 <b>{{ .Hostname }}</b> yönetim botuna hoş geldiniz.\r\n",
|
||||
"status": "✅ Bot çalışıyor!",
|
||||
"usage": "❗ Lütfen aramak için bir metin sağlayın!",
|
||||
"getID": "🆔 Kimliğiniz: <code>{{ .ID }}</code>",
|
||||
"helpAdminCommands": "Xray Core'u yeniden başlatmak için:\r\n<code>/restart</code>\r\n\r\nBir kullanıcının istatistiklerini aramak için:\r\n<code>/usage [E-posta]</code>\r\n\r\nGelen bağlantılarnı aramak için (kullanıcı istatistikleri ile):\r\n<code>/inbound [Açıklama]</code>\r\n\r\nTelegram Sohbet Kimliği (Chat ID):\r\n<code>/id</code>",
|
||||
"helpClientCommands": "İstatistiklerinizi görmek için şu komutu kullanın:\r\n\r\n<code>/usage [E-posta]</code>\r\n\r\nTelegram Sohbet Kimliği:\r\n<code>/id</code>",
|
||||
"restartUsage": "<code>/restart</code>",
|
||||
"restartSuccess": "✅ İşlem başarılı!",
|
||||
"restartFailed": "❗ İşlem hatası.\r\n\r\n<code>Hata: {{ .Error }}</code>.",
|
||||
"xrayNotRunning": "❗ Xray Core çalışmıyor.",
|
||||
"startDesc": "Ana menüyü göster",
|
||||
"helpDesc": "Bot yardımı",
|
||||
"statusDesc": "Bot durumunu kontrol et",
|
||||
"idDesc": "Telegram Kimliğinizi gösterir",
|
||||
"usageDesc": "İstemci kullanımını göster: /usage e-posta",
|
||||
"inboundDesc": "Gelenleri ara: /inbound ad (yönetici)",
|
||||
"restartDesc": "Xray çekirdeğini yeniden başlat (yönetici)",
|
||||
"clearallDesc": "Tüm istemcilerin trafiğini sıfırla (yönetici)"
|
||||
},
|
||||
"messages": {
|
||||
"cpuThreshold": "CPU Yükü ({{ .Percent }}%), {{ .Threshold }}% eşiğini aşıyor",
|
||||
"selectUserFailed": "❌ Kullanıcı seçiminde hata!",
|
||||
"userSaved": "✅ Telegram Kullanıcısı kaydedildi.",
|
||||
"loginSuccess": "✅ Panele başarıyla giriş yapıldı.\r\n",
|
||||
"loginFailed": "❗️Panele giriş denemesi başarısız oldu.\r\n",
|
||||
"report": "🕰 Planlanmış Raporlar: {{ .RunTime }}\r\n",
|
||||
"datetime": "⏰ Tarih ve Saat: {{ .DateTime }}\r\n",
|
||||
"hostname": "💻 Sunucu: {{ .Hostname }}",
|
||||
"version": "🚀 3X-UI Sürümü: {{ .Version }}\r\n",
|
||||
"xrayVersion": "📡 Xray Sürümü: {{ .XrayVersion }}\r\n",
|
||||
"ipv6": "🌐 IPv6: {{ .IPv6 }}",
|
||||
"ipv4": "🌐 IPv4: {{ .IPv4 }}",
|
||||
"ip": "🌐 IP: {{ .IP }}",
|
||||
"ips": "🔢 IP'ler:\r\n{{ .IPs }}\r\n",
|
||||
"serverUpTime": "⏳ Çalışma Süresi: {{ .UpTime }} {{ .Unit }}\r\n",
|
||||
"serverLoad": "📈 Sistem Yükü: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n",
|
||||
"serverMemory": "📋 RAM: {{ .Current }}/{{ .Total }}",
|
||||
"tcpCount": "🔹 TCP: {{ .Count }}",
|
||||
"udpCount": "🔸 UDP: {{ .Count }}",
|
||||
"traffic": "🚦 Trafik: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n",
|
||||
"xrayStatus": "ℹ️ Durum: {{ .State }}\r\n",
|
||||
"username": "👤 Kullanıcı Adı: {{ .Username }}\r\n",
|
||||
"reason": "❗️ Sebep: {{ .Reason }}\r\n",
|
||||
"time": "⏰ Zaman: {{ .Time }}\r\n",
|
||||
"inbound": "📍 Gelen Bağlantı: {{ .Remark }}\r\n",
|
||||
"port": "🔌 Bağlantı Noktası: {{ .Port }}",
|
||||
"expire": "📅 Son Kullanma Tarihi: {{ .Time }}\r\n",
|
||||
"expireIn": "📅 Sona Erecek: {{ .Time }}\r\n",
|
||||
"active": "💡 Aktif: {{ .Enable }}\r\n",
|
||||
"enabled": "🚨 Etkin: {{ .Enable }}\r\n",
|
||||
"online": "🌐 Bağlantı durumu: {{ .Status }}\r\n",
|
||||
"lastOnline": "🔙 Son Çevrimiçi: {{ .Time }}\r\n",
|
||||
"email": "📧 E-posta: {{ .Email }}\r\n",
|
||||
"upload": "🔼 Yükleme: ↑{{ .Upload }}\r\n",
|
||||
"download": "🔽 İndirme: ↓{{ .Download }}\r\n",
|
||||
"total": "📊 Toplam: ↑↓{{ .UpDown }} / {{ .Total }}\r\n",
|
||||
"TGUser": "👤 Telegram Kullanıcısı: {{ .TelegramID }}\r\n",
|
||||
"exhaustedCount": "🚨 Limiti Dolan {{ .Type }} sayısı:\r\n",
|
||||
"onlinesCount": "🌐 Çevrimiçi Kullanıcılar: {{ .Count }}\r\n",
|
||||
"disabled": "🛑 Devre Dışı: {{ .Disabled }}\r\n",
|
||||
"depleteSoon": "🔜 Kotası Dolmak Üzere: {{ .Deplete }}\r\n\r\n",
|
||||
"backupTime": "🗄 Yedekleme Zamanı: {{ .Time }}\r\n",
|
||||
"refreshedOn": "\r\n📋🔄 Yenilendi: {{ .Time }}\r\n\r\n",
|
||||
"yes": "✅ Evet",
|
||||
"no": "❌ Hayır",
|
||||
"received_email": "📧📥 E-posta güncellendi.",
|
||||
"received_comment": "💬📥 Yorum güncellendi.",
|
||||
"email_prompt": "📧 Varsayılan E-posta: {{ .ClientEmail }}\n\nE-postanızı girin.",
|
||||
"comment_prompt": "💬 Varsayılan Yorum: {{ .ClientComment }}\n\nYorumunuzu girin.",
|
||||
"cancel": "❌ İşlem iptal edildi! \n\nİstediğiniz zaman /start ile yeniden başlayabilirsiniz. 🔄",
|
||||
"error_add_client": "⚠️ Hata:\n\n {{ .error }}",
|
||||
"using_default_value": "Tamam, varsayılan değeri kullanacağım. 😊",
|
||||
"incorrect_input": "Geçersiz değer girdiniz.\nİfadeler arasında boşluk olmamalıdır.\nDoğru örnek: aaaaaa\nYanlış örnek: aaa aaa 🚫",
|
||||
"AreYouSure": "Emin misiniz? 🤔",
|
||||
"SuccessResetTraffic": "📧 E-posta: {{ .ClientEmail }}\n🏁 Sonuç: ✅ Başarılı",
|
||||
"FailedResetTraffic": "📧 E-posta: {{ .ClientEmail }}\n🏁 Sonuç: ❌ Başarısız \n\n🛠️ Hata: [ {{ .ErrorMessage }} ]",
|
||||
"FinishProcess": "🔚 Tüm kullanıcılar için trafik sıfırlama işlemi tamamlandı.",
|
||||
"eventOutboundDown": "{{ .Tag }} giden bağlantısı ÇEVRİMDIŞI",
|
||||
"eventOutboundUp": "{{ .Tag }} giden bağlantısı ÇEVRİMİÇİ",
|
||||
"eventErrorDetail": "Hata: {{ .Error }}",
|
||||
"eventDelayDetail": "Gecikme: {{ .Delay }}ms",
|
||||
"eventXrayCrash": "Xray ÇÖKTÜ",
|
||||
"eventXrayCrashError": "Hata: {{ .Error }}",
|
||||
"eventNodeDown": "{{ .Name }} düğümü ÇEVRİMDIŞI",
|
||||
"eventNodeUp": "{{ .Name }} düğümü ÇEVRİMİÇİ",
|
||||
"eventLoginFallback": "{{ .Source }} adresinden oturum açma başarısız",
|
||||
"memoryThreshold": "Bellek kullanımı {{ .Percent }}% eşiği {{ .Threshold }}% aşıyor"
|
||||
},
|
||||
"buttons": {
|
||||
"closeKeyboard": "❌ Klavyeyi Kapat",
|
||||
"cancel": "❌ İptal",
|
||||
"cancelReset": "❌ Sıfırlamayı İptal Et",
|
||||
"cancelIpLimit": "❌ IP Limitini İptal Et",
|
||||
"confirmResetTraffic": "✅ Trafiği Sıfırlamayı Onayla?",
|
||||
"confirmClearIps": "✅ IP'leri Temizlemeyi Onayla?",
|
||||
"confirmRemoveTGUser": "✅ Telegram Kullanıcısını Kaldırmayı Onayla?",
|
||||
"confirmToggle": "✅ Kullanıcıyı Etkinleştirme/Devre Dışı Bırakmayı Onayla?",
|
||||
"dbBackup": "Veritabanı Yedeği Al",
|
||||
"serverUsage": "Sunucu Kullanımı",
|
||||
"getInbounds": "Gelen Bağlantılarnı Al",
|
||||
"depleteSoon": "Kotası Dolmak Üzere",
|
||||
"clientUsage": "Kullanıcı İstatistikleri",
|
||||
"onlines": "Çevrimiçi Kullanıcılar",
|
||||
"commands": "Komutlar",
|
||||
"refresh": "🔄 Yenile",
|
||||
"clearIPs": "❌ IP'leri Temizle",
|
||||
"removeTGUser": "❌ Telegram Kullanıcısını Kaldır",
|
||||
"selectTGUser": "👤 Telegram Kullanıcısını Seç",
|
||||
"selectOneTGUser": "👤 Bir Telegram Kullanıcısını Seçin:",
|
||||
"resetTraffic": "📈 Trafiği Sıfırla",
|
||||
"resetExpire": "📅 Son Kullanma Tarihini Değiştir",
|
||||
"ipLog": "🔢 IP Günlüğü",
|
||||
"ipLimit": "🔢 IP Limiti",
|
||||
"setTGUser": "👤 Telegram Kullanıcısını Ayarla",
|
||||
"toggle": "🔘 Etkinleştir / Devre Dışı Bırak",
|
||||
"custom": "🔢 Özel",
|
||||
"confirmNumber": "✅ Onayla: {{ .Num }}",
|
||||
"confirmNumberAdd": "✅ Ekleme onayı: {{ .Num }}",
|
||||
"limitTraffic": "🚧 Trafik Sınırı",
|
||||
"getBanLogs": "Yasak Günlüklerini Al",
|
||||
"allClients": "Tüm Kullanıcılar",
|
||||
"addClient": "Kullanıcı Ekle",
|
||||
"submitDisable": "Devre Dışı Olarak Gönder ☑️",
|
||||
"submitEnable": "Etkin Olarak Gönder ✅",
|
||||
"use_default": "🏷️ Varsayılanı Kullan",
|
||||
"change_email": "⚙️📧 E-posta",
|
||||
"change_comment": "⚙️💬 Yorum",
|
||||
"ResetAllTraffics": "Tüm Trafikleri Sıfırla",
|
||||
"SortedTrafficUsageReport": "Sıralı Trafik Kullanım Raporu"
|
||||
},
|
||||
"answers": {
|
||||
"successfulOperation": "✅ İşlem başarılı!",
|
||||
"errorOperation": "❗ İşlemde hata.",
|
||||
"getInboundsFailed": "❌ Gelen Bağlantılar alınamadı.",
|
||||
"getClientsFailed": "❌ Kullanıcılar alınamadı.",
|
||||
"canceled": "❌ {{ .Email }}: İşlem iptal edildi.",
|
||||
"clientRefreshSuccess": "✅ {{ .Email }}: Kullanıcı başarıyla yenilendi.",
|
||||
"IpRefreshSuccess": "✅ {{ .Email }}: IP'ler başarıyla yenilendi.",
|
||||
"TGIdRefreshSuccess": "✅ {{ .Email }}: Kullanıcının Telegram Kimliği başarıyla yenilendi.",
|
||||
"resetTrafficSuccess": "✅ {{ .Email }}: Trafik başarıyla sıfırlandı.",
|
||||
"setTrafficLimitSuccess": "✅ {{ .Email }}: Trafik limiti başarıyla kaydedildi.",
|
||||
"expireResetSuccess": "✅ {{ .Email }}: Son kullanma günleri başarıyla sıfırlandı.",
|
||||
"resetIpSuccess": "✅ {{ .Email }}: IP limiti {{ .Count }} başarıyla kaydedildi.",
|
||||
"clearIpSuccess": "✅ {{ .Email }}: IP'ler başarıyla temizlendi.",
|
||||
"getIpLog": "✅ {{ .Email }}: IP Günlüğü alındı.",
|
||||
"getUserInfo": "✅ {{ .Email }}: Telegram Kullanıcı Bilgisi alındı.",
|
||||
"removedTGUserSuccess": "✅ {{ .Email }}: Telegram Kullanıcısı başarıyla kaldırıldı.",
|
||||
"enableSuccess": "✅ {{ .Email }}: Başarıyla etkinleştirildi.",
|
||||
"disableSuccess": "✅ {{ .Email }}: Başarıyla devre dışı bırakıldı.",
|
||||
"askToAddUserId": "Yapılandırmanız bulunamadı!\r\nLütfen yöneticinizden Telegram Chat ID'nizi yapılandırmanıza eklemesini isteyin.\r\n\r\nSizin Chat ID'niz: <code>{{ .TgUserID }}</code>",
|
||||
"chooseClient": "Gelen Bağlantı {{ .Inbound }} için bir Kullanıcı Seçin",
|
||||
"chooseInbound": "Bir Gelen Bağlantı Seçin"
|
||||
}
|
||||
"noIpRecord": "❗ IP Kaydı Yok!"
|
||||
},
|
||||
"email": {
|
||||
"labelStatus": "Durum",
|
||||
"labelOutbound": "Giden Bağlantı",
|
||||
"labelNode": "Düğüm",
|
||||
"labelError": "Hata",
|
||||
"labelDelay": "Gecikme",
|
||||
"labelUsername": "Kullanıcı Adı",
|
||||
"labelIP": "IP",
|
||||
"labelReason": "Neden",
|
||||
"labelSource": "Kaynak",
|
||||
"statusCrashed": "ÇÖKTÜ",
|
||||
"statusHigh": "YÜKSEK",
|
||||
"statusSuccess": "BAŞARILI",
|
||||
"statusFailed": "BAŞARISIZ",
|
||||
"statusDown": "ÇEVRİMDIŞI",
|
||||
"statusUp": "ÇEVRİMİÇİ"
|
||||
}
|
||||
}
|
||||
"email": {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user