ย้อนกลับการเปลี่ยนแปลง radical splash/CallScreen จาก 1f4c9f4
📱 1.2.30
ประวัติการอัปเดต
แพลตฟอร์มพัฒนาอยู่ทุกวัน ที่นี่คือประวัติการเปลี่ยนแปลงทั้งหมด: ฟีเจอร์ใหม่ การแก้ไข และการอัปเดตด้านความปลอดภัย ดาวน์โหลดแอป
พฤษภาคม 2026
แก้ splash→CallScreen แบบจัดเต็ม + persistent logging
📱 1.2.29
เปิด CallScreen จาก ringing→connected เมื่อ CallKit รับแล้ว
📱 1.2.28
แสดงเวอร์ชัน + วันที่บิลด์ในเมนูด้านข้าง (Drawer)
📱 1.2.27
Splash ขัด navigation ไป /call + auto-answer ตอน cold-start
📱 1.2.26
Security fix: การโทร
📱 1.2.25
แปลงบล็อกหลายบรรทัด {# #} → {% comment %} ใน voip overlay + ad detail
🌐 เว็บ
ไคลเอนต์ SSR สำหรับการโทร + อัปเดต docs
🌐 เว็บ
เรนเดอร์วิดีโอสตรีม + dedup CallKit-vs-CallScreen (ตามแบบ team-call)
📱 1.2.24
วิดีโอคอล + dedup FCM notifications + auto-invalidate ads
📱 1.2.22
🌐+📱 เว็บ + แอป
เบอร์ SIP เป็นของชาวฟาร์มเมอร์ตลอดไป + grant DELETE สำหรับ location
🌐 เว็บ
Upsert subscriber เสมอ — กู้คืนได้หลังข้อมูลหาย
🌐 เว็บ
AllowBadCertificate=true สำหรับ WSS — SNI mismatch กับ Kamailio
📱 1.2.22
UI integration — สวิตช์ VoIP ใน Profile + ปุ่ม โทร ใน Ad Detail
📱 1.2.21
🌐+📱 เว็บ + แอป
Native Android — permissions ใน Manifest + reattach MainActivity + BootReceiver + CallKit
📱 1.2.20
Flutter SIP-client + CallScreen + Riverpod provider
📱 1.2.19
Django app พร้อม endpoints สำหรับการโทรของชาวฟาร์มเมอร์
🌐 เว็บ
โครงสร้างพื้นฐานสำหรับการโทร — sip.cattles.net บนเซิร์ฟเวอร์ Kamailio แบบ shared
🌐 เว็บ
@mention boost, preview ของ msg_type, FCM ttl, เตรียม voip-channel
📱 1.2.18
🌐+📱 เว็บ + แอป
PhoneRequiredMiddleware บล็อกการเข้าดูบน dev/prod ถ้าไม่มี phone
🌐 เว็บ
Push หลัง reinstall + CSS ธีมเสีย + กฎ bundling ใน CLAUDE.md
📱 1.2.17
🌐+📱 เว็บ + แอป
/profile/ ส่งกลับ phone+avatar, mobile ไม่วนลูป phone-setup
📱 1.2.16
🌐+📱 เว็บ + แอป
เอา validators min/max ออกจาก weight_kg/height_cm
📱 1.2.15
🌐+📱 เว็บ + แอป
3 regression จากคอมมิต auth แบบ social-only
🌐 เว็บ
auth แบบ social-only + avatar + phone-setup + geo wizard
📱 1.2.13
สมัครแบบ social-only + phone-setup + geo audit + avatar
🌐 เว็บ
ไม่ได้ใช้ในโค้ด
🌐 เว็บ
UX fix — session age + CTA + logo ซ้ำ + alert→toast
🌐 เว็บ
«Сообщения» ใน desktop header + sidebar + dropdown
🌐 เว็บ
Web SSR chat + layout responsive แบบ mobile-like
🌐 เว็บ
อัป bump urllib3 ใน requirements_prod.txt ด้วย
🌐 เว็บ
Security fix: dependencies
🌐 เว็บ
Push เมื่อมีข้อความใหม่ + sender/time + read receipts + bottom-nav
📱 1.2.11
🌐+📱 เว็บ + แอป
Google login บนเว็บ + Farmer.user CASCADE
🌐 เว็บ
ลบ firebase-adminsdk.json ที่ว่างเปล่าออกจาก git tracking
🌐 เว็บ
Backend skeleton — Google Sign-In + Firebase Cloud Messaging + chats
📱 1.2.5
🌐+📱 เว็บ + แอป
Splash odometer 71→43 ภาษา
📱 1.2.5
Migration 0081 — ลบ parler-translations ที่อยู่นอก 43
🌐 เว็บ
Security fix: infrastructure
🌐 เว็บ
ลดการรองรับจาก 70 เหลือ 43 ภาษา
📱 1.2.3
🌐+📱 เว็บ + แอป
อัปโหลด throttle 60→300/ชั่วโมง ต่อผู้ใช้
🌐 เว็บ
เอา default throttle ออก เหลือเฉพาะ endpoints ที่อ่อนไหว
🌐 เว็บ
ย้อน AVIF thumbnails กลับไปที่ serializer (บล็อกแบบ sync ใน API)
🌐 เว็บ
สร้าง AVIF แบบ async ตอน post_save (ไม่บล็อก)
🌐 เว็บ
AVIF thumbnails สำหรับสายพันธุ์ (Wiki_animals)
🌐 เว็บ
AdDetailView — favorites ผ่าน prefetch ไม่ใช้ count/exists
🌐 เว็บ
แก้ audit N+1 ใน audit ของ explore-agent
🌐 เว็บ
/animal-categories/<id>/breeds/ — แก้ N+1 (เร็วขึ้น ×60)
🌐 เว็บ
List/index — แก้ N+1 + page-cache mixin
🌐 เว็บ
ทำ manual page-cache + Cache-Control สำหรับ BreedDetailView
🌐 เว็บ
เอา siblings dropdown ออก — <option> 382 อันกินเวลา 25 วิ
🌐 เว็บ
prefetch translations สำหรับ siblings/categories
🌐 เว็บ
บายพาส /api/v1/ads/ ผ่าน SILKY_INTERCEPT_FUNC
🌐 เว็บ
SILKY_PYTHON_PROFILER ผ่าน env (สลับได้โดยไม่ต้อง rebuild image)
🌐 เว็บ
/geo/countries/ — ใช้ .only() แก้ overhead ของ PostGIS PointField
🌐 เว็บ
/ads/ — prefetch translations กรองตาม locale
🌐 เว็บ
แก้ N+1 — /geo/countries/ 233→2 SQL, /ads/ 158→~5 SQL
🌐 เว็บ
LOGIN_URL=/admin/login/ — ไม่งั้นจะ redirect ไป 404
🌐 เว็บ
ลด SQL บน /admin/main/wiki_animals/ + /advertisements/ ลง 90%
🌐 เว็บ
Django-silk profiler บน dev และ prod ล้างข้อมูลทุก 3 ชั่วโมง
🌐 เว็บ