Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Ρ Π½ΡΠ»Ρ, Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: Π΄Π»Ρ iOS, Π΄Π»Ρ Android. Π£ΡΡΡΠΎΠΉΡΡΠ²Π° Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ: ΡΠΌΠ°ΡΡΡΠΎΠ½Ρ. ? ΠΠΠΠΠΠ― 1 β ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° Traccar, ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ, Π±Π°Π·Π° EPIC 1: Π Π°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Traccar Π¦Π΅Π»Ρ: ΡΠ΅ΡΠ²Π΅Ρ ΡΠΌΠ΅Π΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΎΡ ΡΡΠ΅ΠΊΠ΅ΡΠ°. Tasks ΠΠΎΠ΄Π½ΡΡΡ Traccar Server (Docker / VPS). ΠΡΠΊΡΡΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠΎΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 5001β5050). ΠΠΊΠ»ΡΡΠΈΡΡ HTTPS (ΡΠ΅ΡΠ΅Π· Nginx + Letβs Encrypt). ΠΠ°ΡΡΡΠΎΠΈΡΡ Java heap / Π»ΠΎΠ³ΠΈ / firewall. ΠΠ΅ΡΠ΅ΠΏΡΠΈΠ²ΡΠ·Π°ΡΡ ΡΡΠ΅ΠΊΠ΅Ρ (SMS-ΠΊΠΎΠΌΠ°Π½Π΄Ρ) Π½Π° IP/ΠΏΠΎΡΡ Traccar. ?? ΠΡΠΎΠ²Π΅ΡΠΊΠ°: ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² Traccar Web UI ? OK. EPIC 2: Π Π°Π±ΠΎΡΠ° Ρ ΠΠ Π¦Π΅Π»Ρ: ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
, ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΡ. Tasks ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ PostgreSQL Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ Traccar. ΠΠ·ΡΡΠΈΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ: devices positions users geofences events Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΈ ΡΠ°Π±Π»ΠΈΡΡ (Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½Ρ): user_profiles pets app_events ΠΠ°ΡΡΡΠΎΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎ deviceId/date. EPIC 3: API-ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ° (Π½Π°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ backend) ΠΠΎΡΠ΅ΠΌΡ Π½ΡΠΆΠ΅Π½ ΡΠ»ΠΎΠΉ? Traccar API β ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ. ΠΠ»ΠΈΠ΅Π½ΡΡ Π½ΡΠΆΠ΅Π½ ΡΠ΄ΠΎΠ±Π½ΡΠΉ API: /pet/track, /pet/history, /alerts, Π° Π½Π΅ /api/positions. Tasks ΠΠΎΠ΄Π½ΡΡΡ backend (Node.js/NestJS ΠΈΠ»ΠΈ Python/FastAPI). ΠΠΎΠ±Π°Π²ΠΈΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ JWT/Refresh (Traccar ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΡΠΎΠ³Π°ΡΡ). Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ API: POST /register POST /login POST /pet/bind (ΠΏΠΎ IMEI) GET /pet/{id}/location (ΡΠ΅ΡΠ΅Π· Traccar API) GET /pet/{id}/history Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π΅Π΄Π΅Π»ΠΈ 1: ? Traccar ΡΠ°Π·Π²ΡΡΠ½ΡΡ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ? ΡΡΠ΅ΠΊΠ΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ? backend-ΠΏΠΎΡΡΠ΅Π΄Π½ΠΈΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ? ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΡΠ΅ΡΠ΅Π· Π½Π°ΡΠ΅ API ? ΠΠΠΠΠΠ― 2 β ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ + ΠΊΠ°ΡΡΠ° + ΠΈΡΡΠΎΡΠΈΡ EPIC 4: ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Flutter / RN) Π¦Π΅Π»Ρ: ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΈΠ΄ΠΈΡ ΠΏΠΈΡΠΎΠΌΡΠ° Π½Π° ΠΊΠ°ΡΡΠ΅ ΠΈ ΠΈΡΡΠΎΡΠΈΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ. Tasks ΠΠΊΡΠ°Π½ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ/Π»ΠΎΠ³ΠΈΠ½Π° ΠΠΊΡΠ°Π½ Β«ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΒ» (Π²Π²ΠΎΠ΄ IMEI / QR) ΠΠΊΡΠ°Π½ Β«ΠΠ°ΡΡΠ°Β» ΠΌΠ°ΡΠΊΠ΅Ρ ΠΏΠΈΡΠΎΠΌΡΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π· Π² N ΡΠ΅ΠΊΡΠ½Π΄ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡΠ° Π±Π°ΡΠ°ΡΠ΅ΠΈ ΠΠΊΡΠ°Π½ Β«ΠΡΡΠΎΡΠΈΡΒ» Π·Π°Π³ΡΡΠ·ΠΊΠ° polyline ΠΈΠ· API Π²ΡΠ±ΠΎΡ Π΄Π°ΡΡ ΠΠΊΡΠ°Π½ Β«ΠΠΈΡΠΎΠΌΠ΅ΡΒ» ΠΈΠΌΡ ΡΠΎΡΠΎ ΡΠΈΠΏ ΠΆΠΈΠ²ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ backend: ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· HTTPS ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠΊΠ΅Π½ΠΎΠ² ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° expired tokens EPIC 5: ΠΠ΅ΠΎΠ·ΠΎΠ½Ρ (ΡΠ΅ΡΠ΅Π· Traccar) Traccar ΡΠΌΠ΅Π΅Ρ Ρ
ΡΠ°Π½ΠΈΡΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π·ΠΎΠ½Ρ ? ΠΌΡ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ. Tasks ΠΡΡΠΈΡΠΎΠ²ΠΊΠ° Π·ΠΎΠ½Ρ Π½Π° ΠΊΠ°ΡΡΠ΅ API-ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ°: POST /geofence DELETE /geofence GET /geofence/list Π‘Π²ΡΠ·ΡΠ²Π°ΡΡ Π·ΠΎΠ½Ρ Ρ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΠΌ (Traccar ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅ΡΠ΅Π· deviceId ?? geofenceId). ΠΠΎΠ³ΠΈΠΊΠ° Π²Ρ
ΠΎΠ΄/Π²ΡΡ
ΠΎΠ΄ ? Traccar Events. EPIC 6: Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Traccar Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠΎΠ±ΡΡΠΈΡ: Π²Ρ
ΠΎΠ΄ Π² Π·ΠΎΠ½Ρ Π²ΡΡ
ΠΎΠ΄ ΠΈΠ· Π·ΠΎΠ½Ρ low battery offline/online Tasks Traccar ? Webhook ? Π½Π°Ρ backend backend ? ΠΏΡΡΠΈ (ΡΠ΅ΡΠ΅Π· Firebase/APNs). ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΏΡΡΠΈ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π΅Π΄Π΅Π»ΠΈ 2: ? ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΎΡΠΊΡ Π½Π° ΠΊΠ°ΡΡΠ΅ ? ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ? Π³Π΅ΠΎΠ·ΠΎΠ½Ρ Π½Π°ΡΡΡΠΎΠ΅Π½Ρ ? ΠΏΡΡΠΈ ΠΏΡΠΈΡ
ΠΎΠ΄ΡΡ ? ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π½Π° ΡΡΠΎΠ²Π½Π΅ Β«Petsee LiteΒ» ? ΠΠΠΠΠΠ― 3 β ΠΠΎΠ»ΠΈΡΠΎΠ²ΠΊΠ° ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ ΡΠ΅Π»ΠΈΠ·Ρ EPIC 7: ΠΠΈΠ½ΠΈ-Π°Π΄ΠΌΠΈΠ½ΠΊΠ° (Π΄Π»Ρ ΡΠ΅Π±Ρ) Π¦Π΅Π»Ρ: Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π·Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ ΠΈ Π»ΠΎΠ³Π°ΠΌΠΈ.** Tasks ΠΠ°Π½Π΅Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° (React/Next.js): ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΡΠΎΠΉΡΡΠ² ΡΠ΅ΠΊΡΡΠΈΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ ΡΡΠ°ΡΡΡ ΠΎΠ½/ΠΎΡΡΠ»Π°ΠΉΠ½ Π€ΠΈΠ»ΡΡΡΡ ΠΏΠΎ IMEI, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ EPIC 8: Π£Π»ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° Tasks ΠΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΡΡ ? ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π±Π°ΡΠ°ΡΠ΅Ρ ΡΡΠ΅ΠΊΠ΅ΡΠ° ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ΅Π² ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΉ ΠΠΎΠ±Π°Π²ΠΈΡΡ fallback (LBS ? Wi-Fi ? GPS) Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ Β«ΠΠ΅Ρ ΡΠΈΠ³Π½Π°Π»Π° / Π‘ΠΈΠ³Π½Π°Π» Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Β» ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ API UI-ΠΏΠΎΠ»ΠΈΡΠΎΠ²ΠΊΠ° (ΠΈΠΊΠΎΠ½ΠΊΠΈ, Π»ΠΎΠ°Π΄Π΅ΡΡ) EPIC 9: ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ Π·Π°ΠΏΡΡΠΊΡ Tasks ΠΠΈΠ»Π΄ Android (.aab) ΠΠΎΡΠΎΠ²ΠΈΠΌ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π² Play Market Π’Π΅ΡΡ FDA: GPS Π½Π΅ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ²ΡΠ·Ρ 2G/4G ΠΏΠΎΡΠ΅ΡΡ ΡΠΈΠ³Π½Π°Π»Π° ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ: ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΠ΅ΠΊΠ΅Ρ SMS-ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ.