api: Add camera-frame api

This commit is contained in:
Fam Zheng 2025-02-11 23:09:25 +00:00
parent f230b4f20b
commit 59041ee457
2 changed files with 13 additions and 0 deletions

View File

@ -160,10 +160,12 @@ if ENV == "prod":
OSS = aliyun_prod_key OSS = aliyun_prod_key
FEATURES_BUCKET = "emblem-features-prod" FEATURES_BUCKET = "emblem-features-prod"
ARCHIVE_BUCKET = "emblem-archive-prod" ARCHIVE_BUCKET = "emblem-archive-prod"
FRAMES_BUCKET = "emblem-frames"
else: else:
OSS = aliyun_dev_key OSS = aliyun_dev_key
FEATURES_BUCKET = "emblem-features-dev-1" FEATURES_BUCKET = "emblem-features-dev-1"
ARCHIVE_BUCKET = "emblem-oss-archive-dev-1" ARCHIVE_BUCKET = "emblem-oss-archive-dev-1"
FRAMES_BUCKET = "emblem-frames-dev"
IPINFO_TOKEN = '537dea9ec5c99a' IPINFO_TOKEN = '537dea9ec5c99a'

View File

@ -1788,3 +1788,14 @@ class CameraRulesView(BaseView):
q = CameraRule.objects.filter(disabled=False) q = CameraRule.objects.filter(disabled=False)
return JsonResponse(make_camera_rules(q), safe=False) return JsonResponse(make_camera_rules(q), safe=False)
class CameraFrameView(BaseView):
name = 'camera-frame'
def post(self, request):
filebody, filename = get_image(request)
date = timezone.now().strftime('%Y-%m-%d')
session_id = request.data.get("session_id", "unknown-session")
phone_model = request.data.get('phone_model', 'unknown phone')
key = f'{date}/{phone_model}-{session_id}-{filename}'
oss_put(key, filebody, bucket=settings.FRAMES_BUCKET)
return JsonResponse({})