در این تسک، زیرساخت Backend مربوط به تولید و بازیابی URL موقعیت مکانی هدف (Target Location URL) توسعه داده خواهد شد تا کاربران بتوانند موقعیت فعلی خود یا یک موقعیت مشخص روی نقشه را بهصورت لینک اشتراکگذاری کنند.
این URL باید تمامی اطلاعات موردنیاز برای بازسازی دقیق وضعیت دوربین نقشه را در خود داشته باشد؛ بهگونهای که با باز کردن لینک، کاربر مستقیماً به همان موقعیت، همان میزان زوم و همان زاویه دید هدایت شود.
هدف از این قابلیت، امکان اشتراکگذاری دقیق موقعیت زمینها، املاک، نقاط مختلف نقشه و سایر مکانهای موجود در متاورس رنگ است.
اهداف
-
ایجاد URL اختصاصی برای موقعیتهای نقشه
-
ذخیره و بازیابی کامل وضعیت دوربین
-
هدایت کاربر به موقعیت هدف با انیمیشن نرم (Fly To)
-
آمادهسازی زیرساخت اشتراکگذاری موقعیتها
-
مستندسازی کامل API
وظایف Backend
۱. توسعه API تولید URL موقعیت
ایجاد Endpoint جهت تولید لینک اشتراکگذاری موقعیت.
ورودی API شامل اطلاعات زیر باشد:
-
مختصات X
-
مختصات Y
-
سطح بزرگنمایی (Zoom)
-
زاویه چرخش (Rotation / Bearing)
-
شناسه ملک یا شناسه موقعیت (در صورت وجود)
پس از دریافت اطلاعات، سیستم یک URL قابل اشتراکگذاری تولید نماید.
۲. ساختار اطلاعات موقعیت
اطلاعات ذخیرهشده در URL باید شامل موارد زیر باشد:
-
مختصات X
-
مختصات Y
-
مقدار Zoom
-
مقدار Rotation (Bearing)
-
شناسه موقعیت یا شناسه ملک (در صورت وجود)
مختصات باید بر اساس سیستم مختصات نقشه (OpenStreetMap) ذخیره و بازیابی شوند.
۳. توسعه API بازیابی موقعیت
ایجاد Endpoint جهت دریافت اطلاعات موقعیت از روی URL.
خروجی شامل:
-
مختصات X
-
مختصات Y
-
مقدار Zoom
-
مقدار Rotation
-
شناسه موقعیت (در صورت وجود)
باشد تا Frontend بتواند وضعیت دوربین را دقیقاً بازسازی نماید.
۴. پشتیبانی از Target Navigation
پس از دریافت اطلاعات موقعیت توسط Frontend، امکان هدایت کاربر به موقعیت هدف فراهم گردد.
Backend باید اطلاعات لازم برای اجرای قابلیت Fly To را در اختیار Frontend قرار دهد تا حرکت دوربین بهصورت نرم و انیمیشنی انجام شود و مستقیماً روی موقعیت هدف قرار گیرد.
۵. پشتیبانی از اشتراکگذاری موقعیت املاک
در صورتی که URL مربوط به یک ملک باشد، اطلاعات زیر نیز قابل بازیابی باشد:
-
شناسه ملک
-
موقعیت ملک روی نقشه
این قابلیت امکان هدایت مستقیم کاربران به موقعیت دقیق ملک را فراهم میکند.
۶. اعتبارسنجی اطلاعات
اعتبارسنجی موارد زیر انجام شود:
-
معتبر بودن مختصات
-
معتبر بودن مقدار Zoom
-
معتبر بودن مقدار Rotation
-
بررسی وجود شناسه ملک یا موقعیت (در صورت ارسال)
در صورت نامعتبر بودن دادهها، پیام خطای مناسب بازگردانده شود.
۷. امنیت
-
تنها اطلاعات موردنیاز در URL ذخیره شود.
-
از افشای اطلاعات حساس در لینک جلوگیری گردد.
-
لینکهای تولیدشده قابل استفاده برای اشتراکگذاری عمومی باشند.
۸. مستندسازی API
تمامی Endpointها در Swagger مستندسازی شوند.
مستندات شامل موارد زیر باشد:
-
Method
-
URL
-
Request Parameters
-
Response Model
-
Status Codes
-
Error Responses
-
نمونه درخواست و پاسخ
خروجی مورد انتظار
-
API تولید URL موقعیت مکانی هدف
-
API بازیابی اطلاعات موقعیت از روی URL
-
پشتیبانی از مختصات X و Y
-
پشتیبانی از سطح بزرگنمایی (Zoom)
-
پشتیبانی از زاویه چرخش (Rotation/Bearing)
-
پشتیبانی از شناسه ملک یا موقعیت
-
آمادهسازی زیرساخت هدایت کاربر به موقعیت هدف با انیمیشن Fly To در Frontend
-
امکان اشتراکگذاری موقعیت دقیق املاک و نقاط مختلف نقشه
-
مستندسازی کامل API در Swagger
ویدیو توضیحات:
https://drive.google.com/file/d/1yggP2uQ3jMxIzXQM9bczIq3iYPcukaox/view?usp=sharing