Incoming isVideoCall được parse thành ringing — sửa màn hình xanh
📱 1.2.42
Lịch sử cập nhật
Nền tảng đang phát triển mỗi ngày. Ở đây — toàn bộ lịch sử thay đổi: các tính năng mới, bản sửa lỗi và cập nhật bảo mật. Tải ứng dụng
Tháng 5 2026
Bỏ banner CallKit ở foreground (UI đôi)
📱 1.2.41
Mở CallScreen ở BẤT KỲ active state nào — cả incoming
📱 1.2.40
CallScreen không tự đóng trước khi có INVITE (_everHadCall)
📱 1.2.39
Cleanup đúng khi FAILED (CANCEL của người gọi không còn treo)
📱 1.2.38
Bỏ qua hoàn toàn event FAILED (state-race trên Riverpod broadcast)
📱 1.2.37
Incoming UI chỉ dùng CallKit + guard timestamp-FAILED
📱 1.2.36
Bỏ qua FAILED sau CONNECTED (forking leg)
📱 1.2.35
Bỏ qua SIP session trùng lặp (FAILED từ auth-challenge leg)
📱 1.2.34
Mở CallScreen khi bất kỳ chuyển sang connected nào (callee Accept)
📱 1.2.33
Cold-start từ CallKit Accept bỏ qua splash hoàn toàn
📱 1.2.32
-45% thời lượng animation (6s → 3.3s)
📱 1.2.31
Quay lại các thay đổi radical splash/CallScreen từ 1f4c9f4
📱 1.2.30
Sửa triệt để splash→CallScreen + ghi log bền vững
📱 1.2.29
Mở CallScreen khi ringing→connected lúc CallKit đã nhận
📱 1.2.28
Phiên bản + ngày build trong menu bên hông (Drawer)
📱 1.2.27
Splash chen ngang navigation vào /call + auto-answer lúc cold-start
📱 1.2.26
Bản sửa bảo mật: cuộc gọi
📱 1.2.25
Multi-line {# #} → {% comment %} trong voip overlay + ad detail
🌐 Web
SSR client cho cuộc gọi + cập nhật docs
🌐 Web
Hiển thị video stream + khử trùng lặp CallKit-vs-CallScreen (theo mẫu team-call)
📱 1.2.24
Cuộc gọi video + khử trùng lặp thông báo FCM + tự vô hiệu hóa tin đăng
📱 1.2.22
🌐+📱 Web + ứng dụng
Số SIP gắn trọn đời với chủ trại + cấp quyền DELETE cho location
🌐 Web
Upsert subscriber luôn — khôi phục sau khi mất bản ghi
🌐 Web
AllowBadCertificate=true cho WSS — lệch SNI với Kamailio
📱 1.2.22
Tích hợp UI — nút VoIP trong Profile + nút Gọi trong Ad Detail
📱 1.2.21
🌐+📱 Web + ứng dụng
Android native — quyền Manifest + MainActivity reattach + BootReceiver + CallKit
📱 1.2.20
Flutter SIP-client + CallScreen + provider Riverpod
📱 1.2.19
App Django với các endpoint cho cuộc gọi của nông dân
🌐 Web
Hạ tầng cho cuộc gọi — sip.cattles.net trên shared Kamailio server
🌐 Web
@mention boost, msg_type preview, FCM ttl, nền tảng voip-channel
📱 1.2.18
🌐+📱 Web + ứng dụng
PhoneRequiredMiddleware chặn xem trên dev/prod khi chưa có phone
🌐 Web
Push sau khi cài lại + CSS theme chết + quy tắc bundling trong CLAUDE.md
📱 1.2.17
🌐+📱 Web + ứng dụng
/profile/ trả về phone+avatar, mobile không bị lặp vòng phone-setup
📱 1.2.16
🌐+📱 Web + ứng dụng
Bỏ validator min/max cho weight_kg/height_cm
📱 1.2.15
🌐+📱 Web + ứng dụng
3 lỗi hồi quy từ commit auth chỉ social
🌐 Web
Auth chỉ social + avatar + phone-setup + geo wizard
📱 1.2.13
Đăng ký chỉ social + phone-setup + geo audit + avatar
🌐 Web
Không dùng trong code
🌐 Web
Sửa UX — session age + CTA + logo trùng + alert→toast
🌐 Web
“Tin nhắn” trong desktop header + sidebar + dropdown
🌐 Web
Web SSR chat + bố cục responsive giống mobile
🌐 Web
Tăng urllib3 trong requirements_prod.txt luôn
🌐 Web
Bản sửa bảo mật: dependencies
🌐 Web
Push khi có tin nhắn mới + sender/time + read receipts + bottom-nav
📱 1.2.11
🌐+📱 Web + ứng dụng
Google login trên web + Farmer.user CASCADE
🌐 Web
Bỏ firebase-adminsdk.json trống khỏi tracking git
🌐 Web
Khung backend — Google Sign-In + Firebase Cloud Messaging + chats
📱 1.2.5
🌐+📱 Web + ứng dụng
Splash odometer 71→43 ngôn ngữ
📱 1.2.5
Migration 0081 — xóa parler-translations ngoài 43
🌐 Web
Bản sửa bảo mật: hạ tầng
🌐 Web
Giảm hỗ trợ từ 70 xuống 43 ngôn ngữ
📱 1.2.3
🌐+📱 Web + ứng dụng
Giới hạn upload 60→300/giờ mỗi người dùng
🌐 Web
Bỏ throttle mặc định, chỉ giữ ở các endpoint nhạy cảm
🌐 Web
Hoàn tác thumbnail AVIF trong serializer (chặn sync trong API)
🌐 Web
Sinh AVIF bất đồng bộ bằng post_save (không chặn)
🌐 Web
Thumbnail AVIF cho giống loài (Wiki_animals)
🌐 Web
AdDetailView — favorites qua prefetch, không dùng count/exists
🌐 Web
Sửa N+1 theo audit của explore-agent
🌐 Web
/animal-categories/<id>/breeds/ — sửa N+1 (tăng tốc ×60)
🌐 Web