3252a8
21f9ed803d
fix(webapp): clarify expiring subscription countdown
2026-06-02 14:33:28 +03:00
3252a8
4d7577f4ec
fix: harden Remnawave panel timeouts
2026-06-02 12:29:43 +03:00
3252a8
56796d9f22
feat(admin): add never-subscribed broadcast target with audience counts
...
Add a broadcast audience for users who registered but never had any subscription or trial (no Subscription rows at all), backed by a new get_user_ids_without_any_subscription DAL helper and a 'never' target in the webapp broadcast route.
Add GET /api/admin/broadcast/audience-counts so the audience dropdown shows the recipient count next to each option, with graceful fallback when counts are unavailable.
2026-06-01 23:37:59 +03:00
3252a8
7d3178bd48
feat: improve admin user filters
2026-06-01 18:04:08 +03:00
3252a8
dcdddeb1c5
feat: add sortable admin user columns
2026-06-01 15:53:03 +03:00
3252a8
6a40d0c9ce
feat: add expired subscription broadcast target
2026-06-01 15:05:10 +03:00
3252a8
a0ea2261f4
feat: anonymous opt-out install telemetry beacon
...
Add a once-a-day anonymous heartbeat (PostHog) so maintainers can see
active installs and version/OS breakdowns. Self-hosted friendly: opt out
via TELEMETRY_ENABLED in .env or the Admin -> System toggle (applied
without a restart), or by clearing the endpoint/key.
- Share version resolution in bot/utils/app_version.py so the admin
sidebar and the beacon report the same build version
- TelemetryWorker sends an opaque install id plus coarse facts only
(version, OS/arch, python, locale, enabled providers, user-count
range); never tokens, domains or user data
- Register the worker in main_worker.py behind a Redis single-flight lock
- Expose TELEMETRY_* settings and an Admin -> System manifest toggle
- Document the payload and opt-out in docs/configuration/telemetry.md
- Cover bucketing, payload shape and anonymity with tests
2026-06-01 14:14:02 +03:00
3252a8
5bb1400917
chore: improve tariff admin layout
2026-06-01 11:55:41 +03:00
3252a8
c2344824dc
feat: show referral relationships in admin user cards
2026-06-01 00:36:05 +03:00
3252a8
1578a9da36
fix: align traffic top-up flows and unlimited overrides
2026-05-31 23:05:29 +03:00
3252a8
eda5d3e633
fix: localize support email templates
2026-05-31 14:41:26 +03:00
3252a8
74da8ab98e
chore: compact admin subscription stats cards
2026-05-31 00:26:42 +03:00
3252a8
93353db511
feat: split subscription stats by access type
2026-05-31 00:08:31 +03:00
3252a8
c1e2fe2c95
chore: improve admin logs user cards
2026-05-30 22:15:33 +03:00
3252a8
acc222da41
feat: prompt users to start Telegram bot for notifications
2026-05-30 21:15:17 +03:00
3252a8
c3e55bc853
feature: sync user email notifications
2026-05-30 11:46:07 +03:00
3252a8
09be82aad5
fix: improve subscription email renewal flow
2026-05-30 00:23:53 +03:00
3252a8
49781af921
feat: surface remnawave panel webhook settings
2026-05-29 23:55:12 +03:00
3252a8
7fe8e676cd
feat: group referral bonus display by tariff
2026-05-29 22:55:01 +03:00
3252a8
6803c7801f
fix: configure referral bonuses per tariff period
2026-05-29 22:30:31 +03:00
3252a8
19f0f27a3b
feat: mirror subscription lifecycle notifications
2026-05-29 18:08:28 +03:00
3252a8
d299a3c524
feature: Add local subscription notification worker
2026-05-28 22:48:48 +03:00
3252a8
b566a34725
fix: mark depleted traffic on webapp home
2026-05-28 13:09:55 +03:00
3252a8
30c5d9ae11
fix: refine home tariff actions
2026-05-28 10:06:10 +03:00
3252a8
f153ca5bf4
fix: complete english localization refresh
2026-05-28 00:55:22 +03:00
3252a8
3aede8fe95
feat: add backups feature
2026-05-27 13:53:30 +03:00
3252a8
0623850c3f
fix: open Telegram Stars invoices inside Mini App
2026-05-25 22:13:11 +03:00
3252a8
c68cb97964
fix: bind HWID top-ups to subscription periods
2026-05-25 19:33:50 +03:00
3252a8
59fa301344
feat: add runtime locale overrides
2026-05-25 17:47:45 +03:00
3252a8
11b7823188
fix: expire Wata payment links sooner
2026-05-25 11:34:10 +03:00
3252a8
de1763cfe1
feat: enable payment provider for admin only
2026-05-25 11:19:54 +03:00
3252a8
5c71fc0de2
fix: hide links from payment success message
2026-05-25 00:23:48 +03:00
3252a8
3410eeaec1
fix(admin): delete Remnawave user with bot account
2026-05-24 23:35:19 +03:00
3252a8
e15cbffdb1
feat: expose webapp title in admin settings
2026-05-24 22:53:50 +03:00
3252a8
bafc5f4709
feat: show linked emails in telegram logs
2026-05-24 22:32:35 +03:00
3252a8
a60de46173
feat: guide users after subscription activation
2026-05-24 22:24:02 +03:00
3252a8
f5ab18a67b
feat: redesign webapp trial offer
2026-05-24 22:02:22 +03:00
3252a8
00b54e1f15
feat: improve admin trial settings controls
2026-05-24 19:19:39 +03:00
3252a8
3c4ff66150
feat: streamline admin tariff settings
2026-05-24 19:10:36 +03:00
3252a8
6f4074e8d6
feat: surface trial activation in mini app
2026-05-24 18:48:01 +03:00
3252a8
aa65972483
feat: add admin payment detail view
2026-05-24 09:30:58 +03:00
3252a8
ad275a7c83
feat: polish admin settings layout
2026-05-24 09:11:43 +03:00
3252a8
7f484fa7b3
feat: warn about legacy tariff settings
2026-05-24 00:05:16 +03:00
3252a8
46391b10e2
feat: tune deeplink fallback page
2026-05-23 23:26:10 +03:00
3252a8
0eeabc7b3a
fix: process yookassa hwid device topups
2026-05-23 22:28:05 +03:00
3252a8
ce0d4dccf7
feat: open bot install guides in mini app
2026-05-23 09:48:30 +03:00
3252a8
d3925cad22
Merge branch 'dev' into feature/install-page
...
# Conflicts:
# backend/bot/app/web/admin_api_impl/settings.py
# backend/bot/app/web/webapp/cache_helpers.py
# frontend/src/admin/sections/SettingsSection.svelte
# tests/test_admin_settings_manifest_i18n.py
2026-05-22 22:57:24 +03:00
3252a8
19aa2ec9c9
fix: log account merge notifications
2026-05-22 22:02:28 +03:00
3252a8
648f4ba4bc
feat: show payment provider webhook urls
2026-05-22 15:57:49 +03:00
3252a8
9e61a3d8a8
feat: install instruction inside web app
2026-05-22 13:58:34 +03:00