Group Management of Subscription Clients (#2644)

* add group user with the same subscription id to all inbounds

* code format compare

* add await for reset client traffic

* en language changed

* added client traffic syncer job

* handle exist email duplicate in sub group

* multi reset and delete request for clients group

* add client traffic syncer setting option

* vi translate file updated

* auto open qr-modal bug fixed
This commit is contained in:
Ali Rahimi
2025-01-21 03:01:54 +01:00
committed by GitHub
parent 66fe84181b
commit 6e9180a665
26 changed files with 818 additions and 71 deletions
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Add Client"
"groupAdd" = "Add subscription user"
"isGroupEdit" = "Group editing"
"isGroupEditDesc" = "All clients with the same subscription are edited"
"edit" = "Edit Client"
"submitAdd" = "Add Client"
"submitEdit" = "Save Changes"
@@ -287,6 +290,8 @@
"subSettings" = "Subscription"
"subEnable" = "Enable Subscription Service"
"subEnableDesc" = "Enables the subscription service."
"subSyncEnable" = "Enable Subscription Sync"
"subSyncEnableDesc" = "Traffic from clients with the same subscription will be synchronized every 10 seconds."
"subListen" = "Listen IP"
"subListenDesc" = "The IP address for the subscription service. (leave blank to listen on all IPs)"
"subPort" = "Listen Port"
+3
View File
@@ -190,6 +190,7 @@
[pages.client]
"add" = "Agregar Cliente"
"groupAdd" = "Agregar usuario de suscripción"
"edit" = "Editar Cliente"
"submitAdd" = "Agregar Cliente"
"submitEdit" = "Guardar Cambios"
@@ -287,6 +288,8 @@
"subSettings" = "Suscripción"
"subEnable" = "Habilitar Servicio"
"subEnableDesc" = "Función de suscripción con configuración separada."
"subSyncEnable" = "Habilitar sincronización de suscripciones"
"subSyncEnableDesc" = "El tráfico de los clientes con la misma suscripción se sincronizará cada 10 segundos."
"subListen" = "Listening IP"
"subListenDesc" = "Dejar en blanco por defecto para monitorear todas las IPs."
"subPort" = "Puerto de Suscripción"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "کاربر جدید"
"groupAdd" = "افزودن کاربر سابسکریپشن"
"isGroupEdit" = "ویرایش گروهی"
"isGroupEditDesc" = "همه کاربران با سابسکریپشن یکسان ویرایش می شوند"
"edit" = "ویرایش کاربر"
"submitAdd" = "اضافه کردن"
"submitEdit" = "ذخیره تغییرات"
@@ -287,6 +290,8 @@
"subSettings" = "سابسکریپشن"
"subEnable" = "فعال‌سازی سرویس سابسکریپشن"
"subEnableDesc" = "سرویس سابسکریپشن‌ را فعال‌می‌کند"
"subSyncEnable" = "فعال‌سازی همگام سازی سابسکریپشن"
"subSyncEnableDesc" = "ترافیک کلاینت هایی که سابسکریپشن یکسان دارند هر ۱۰ ثانیه همگام می‌شوند."
"subListen" = "آدرس آی‌پی"
"subListenDesc" = "آدرس آی‌پی برای سرویس سابسکریپشن. برای گوش دادن به‌تمام آی‌پی‌ها خالی‌بگذارید"
"subPort" = "پورت"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Tambah Klien"
"groupAdd" = "Tambahkan pengguna langganan"
"isGroupEdit" = "Pengeditan grup"
"isGroupEditDesc" = "Semua klien dengan langganan yang sama akan diedit"
"edit" = "Edit Klien"
"submitAdd" = "Tambah Klien"
"submitEdit" = "Simpan Perubahan"
@@ -287,6 +290,8 @@
"subSettings" = "Langganan"
"subEnable" = "Aktifkan Layanan Langganan"
"subEnableDesc" = "Mengaktifkan layanan langganan."
"subSyncEnable" = "Aktifkan Sinkronisasi Langganan"
"subSyncEnableDesc" = "Lalu lintas dari klien dengan langganan yang sama akan disinkronkan setiap 10 detik."
"subListen" = "IP Pendengar"
"subListenDesc" = "Alamat IP untuk layanan langganan. (biarkan kosong untuk mendengarkan semua IP)"
"subPort" = "Port Pendengar"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "クライアント追加"
"groupAdd" = "サブスクリプション ユーザーの追加"
"isGroupEdit" = "グループの編集"
"isGroupEditDesc" = "同じサブスクリプションを持つすべてのクライアントが編集されます"
"edit" = "クライアント編集"
"submitAdd" = "クライアント追加"
"submitEdit" = "変更を保存"
@@ -287,6 +290,8 @@
"subSettings" = "サブスクリプション設定"
"subEnable" = "サブスクリプションサービスを有効にする"
"subEnableDesc" = "サブスクリプションサービス機能を有効にする"
"subSyncEnable" = "サブスクリプション同期を有効にする"
"subSyncEnableDesc" = "同じサブスクリプションを持つクライアントからのトラフィックは 10 秒ごとに同期されます。"
"subListen" = "監視IP"
"subListenDesc" = "サブスクリプションサービスが監視するIPアドレス(空白にするとすべてのIPを監視)"
"subPort" = "監視ポート"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Adicionar Cliente"
"groupAdd" = "Adicionar usuário de assinatura"
"isGroupEdit" = "Edição de grupo"
"isGroupEditDesc" = "Todos os clientes com a mesma assinatura são editados"
"edit" = "Editar Cliente"
"submitAdd" = "Adicionar Cliente"
"submitEdit" = "Salvar Alterações"
@@ -287,6 +290,8 @@
"subSettings" = "Assinatura"
"subEnable" = "Ativar Serviço de Assinatura"
"subEnableDesc" = "Ativa o serviço de assinatura."
"subSyncEnable" = "Habilitar sincronização de assinatura"
"subSyncEnableDesc" = "O tráfego de clientes com a mesma assinatura será sincronizado a cada 10 segundos."
"subListen" = "IP de Escuta"
"subListenDesc" = "O endereço IP para o serviço de assinatura. (deixe em branco para escutar em todos os IPs)"
"subPort" = "Porta de Escuta"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Добавить пользователя"
"groupAdd" = "Добавить пользователя подписки"
"isGroupEdit" = "Групповое редактирование"
"isGroupEditDesc" = "Все клиенты с одинаковой подпиской редактируются"
"edit" = "Редактировать пользователя"
"submitAdd" = "Добавить пользователя"
"submitEdit" = "Сохранить изменения"
@@ -287,6 +290,8 @@
"subSettings" = "Подписка"
"subEnable" = "Включить службу"
"subEnableDesc" = "Функция подписки с отдельной конфигурацией"
"subSyncEnable" = "Включить синхронизацию подписки"
"subSyncEnableDesc" = "Трафик от клиентов с одинаковой подпиской будет синхронизироваться каждые 10 секунд."
"subListen" = "Прослушивание IP"
"subListenDesc" = "Оставьте пустым по умолчанию, чтобы отслеживать все IP-адреса"
"subPort" = "Порт подписки"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Müşteri Ekle"
"groupAdd" = "Abonelik kullanıcısı ekle"
"isGroupEdit" = "Grup düzenleme"
"isGroupEditDesc" = "Aynı aboneliğe sahip tüm istemciler düzenlendi"
"edit" = "Müşteriyi Düzenle"
"submitAdd" = "Müşteri Ekle"
"submitEdit" = "Değişiklikleri Kaydet"
@@ -287,6 +290,8 @@
"subSettings" = "Abonelik"
"subEnable" = "Abonelik Hizmetini Etkinleştir"
"subEnableDesc" = "Abonelik hizmetini etkinleştirir."
"subSyncEnable" = "Abonelik Senkronizasyonunu Etkinleştir"
"subSyncEnableDesc" = "Aynı aboneliğe sahip istemcilerden gelen trafik her 10 saniyede bir senkronize edilecektir."
"subListen" = "Dinleme IP"
"subListenDesc" = "Abonelik hizmeti için IP adresi. (tüm IP'leri dinlemek için boş bırakın)"
"subPort" = "Dinleme Portu"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Додати клієнта"
"groupAdd" = "Додати підписаного користувача"
"isGroupEdit" = "Редагування групи"
"isGroupEditDesc" = "Всі клієнти з однаковою підпискою редагуються"
"edit" = "Редагувати клієнта"
"submitAdd" = "Додати клієнта"
"submitEdit" = "Зберегти зміни"
@@ -287,6 +290,8 @@
"subSettings" = "Підписка"
"subEnable" = "Увімкнути службу підписки"
"subEnableDesc" = "Вмикає службу підписки."
"subSyncEnable" = "Увімкнути синхронізацію підписки"
"subSyncEnableDesc" = "Трафік від клієнтів з однаковою підпискою буде синхронізовано кожні 10 секунд."
"subListen" = "Слухати IP"
"subListenDesc" = "IP-адреса для служби підписки. (залиште порожнім, щоб слухати всі IP-адреси)"
"subPort" = "Слухати порт"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "Thêm người dùng"
"groupAdd" = "Thêm người dùng đăng ký"
"isGroupEdit" = "Chỉnh sửa nhóm"
"isGroupEditDesc" = "Tất cả người dùng có cùng đăng ký đều có thể được chỉnh sửa"
"edit" = "Chỉnh sửa người dùng"
"submitAdd" = "Thêm"
"submitEdit" = "Lưu thay đổi"
@@ -287,6 +290,8 @@
"subSettings" = "Gói đăng ký"
"subEnable" = "Bật dịch vụ"
"subEnableDesc" = "Tính năng gói đăng ký với cấu hình riêng"
"subSyncEnable" = "Bật đồng bộ đăng ký"
"subSyncEnableDesc" = "Lưu lượng truy cập từ các máy khách có cùng đăng ký sẽ được đồng bộ sau mỗi 10 giây."
"subListen" = "Listening IP"
"subListenDesc" = "Mặc định để trống để nghe tất cả các IP"
"subPort" = "Cổng gói đăng ký"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "添加客户端"
"groupAdd" = "添加订阅用户"
"isGroupEdit" = "群组编辑"
"isGroupEditDesc" = "所有具有相同订阅的客户端均被编辑"
"edit" = "编辑客户端"
"submitAdd" = "添加客户端"
"submitEdit" = "保存修改"
@@ -287,6 +290,8 @@
"subSettings" = "订阅设置"
"subEnable" = "启用订阅服务"
"subEnableDesc" = "启用订阅服务功能"
"subSyncEnable" = "启用订阅同步"
"subSyncEnableDesc" = "具有相同订阅的客户端的流量将每 10 秒同步一次。"
"subListen" = "监听 IP"
"subListenDesc" = "订阅服务监听的 IP 地址(留空表示监听所有 IP)"
"subPort" = "监听端口"
+5
View File
@@ -190,6 +190,9 @@
[pages.client]
"add" = "新增客戶端"
"groupAdd" = "新增訂閱使用者"
"isGroupEdit" = "群組編輯"
"isGroupEditDesc" = "所有具有相同訂閱的用戶端都被編輯"
"edit" = "編輯客戶端"
"submitAdd" = "新增客戶端"
"submitEdit" = "儲存修改"
@@ -287,6 +290,8 @@
"subSettings" = "訂閱設定"
"subEnable" = "啟用訂閱服務"
"subEnableDesc" = "啟用訂閱服務功能"
"subSyncEnable" = "啟用訂閱同步"
"subSyncEnableDesc" = "來自具有相同訂閱的客戶端的流量將每 10 秒同步一次。"
"subListen" = "監聽 IP"
"subListenDesc" = "訂閱服務監聽的 IP 地址(留空表示監聽所有 IP)"
"subPort" = "監聽埠"