soroush.asadi
99aa6b7048
Centralize OTP dev logging in Kavenegar SMS service
...
Move the dev-mode OTP logging into KavenegarSmsService so consumer and
admin auth flows no longer duplicate the fallback log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-29 17:15:11 +03:30
soroush.asadi
963d02a265
Add push notifications (Pushe) + Capacitor shell for Koja
...
Iran-safe push for the Koja Android app (Cafe Bazaar / Myket / direct APK):
Backend
- PushDevice entity + EF migration; idempotent device register/unregister.
- IPushSender / PusheNotificationSender (Pushe REST) — SendToTopic for
marketing (city-{slug}) and saved-café (cafe-{slug}) pushes, SendToTokens
for targeted order/reservation updates.
- Public register/unregister endpoints + authorized topic broadcast.
App
- capacitor.config.ts (native WebView loads the live PWA via server.url).
- push.ts Pushe glue: topic helpers + backend device registration.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-29 17:06:42 +03:30
soroush.asadi
16cff8730b
feat : kavenegar otp added
2026-05-29 10:18:47 +03:30
soroush.asadi
27e61d257e
Set Kavenegar OTP template to meeziotp
...
Template content: کد ورود : %token / میزی
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-29 02:55:02 +03:30
soroush.asadi
42d7667735
Fully implement Kavenegar SMS support
...
Core changes:
- ISmsService: add SendBulkAsync (batches of 200) + GetAccountInfoAsync
- KavenegarSmsService: POST requests, sender number config, bulk send
via comma-separated receptors, account balance, full error code mapping
(HTTP 400-432), enabled-flag check before any send
- SmsMarketingService: replaced per-recipient loop with SendBulkAsync
- SmsController: new GET /sms/balance endpoint returns Kavenegar credit
- SmsDtos: SmsBalanceDto
- IntegrationDtos + PlatformIntegrationService: SenderNumber field
- appsettings.json + docker-compose: Kavenegar__SenderNumber = 90005671
Dashboard:
- sms-screen: char counter, SMS parts indicator (Persian 70/67 chars,
Latin 160/153), account balance card, sender line display, result banner
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-29 02:38:06 +03:30
soroush.asadi
ef15fd6247
feat(api): .NET 10 multi-tenant REST API
...
Full backend implementation:
- Multi-tenant cafe/restaurant management (menus, orders, tables, staff)
- POS order flow with ZarinPal and Snappfood payment integration
- OTP authentication via Kavenegar SMS
- QR digital menu with public discover/finder endpoints
- Customer loyalty, coupons, CRM
- PostgreSQL via EF Core, Redis for caching/sessions
- Background jobs, webhook handlers
- Full migration history
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-05-27 21:33:48 +03:30