牧安云哨-后端

This commit is contained in:
BBIT-Kai
2025-12-23 09:55:06 +08:00
parent f018d96e60
commit b5a9714025
16 changed files with 1219 additions and 75 deletions
+19
View File
@@ -29,6 +29,25 @@ def get_upload_token(user_id, bucket_name, object_name, xpires=timedelta(minutes
def get_temp_url(bucket_name, object_name):
# 如果 object_name 为 None 或空字符串,则返回默认图片
if not object_name or not bucket_name:
bucket_name = "system"
object_name = "favicon.ico"
# 使用 presigned_get_object 获取临时 URL
return minio_client.presigned_get_object(
bucket_name, object_name, expires=timedelta(seconds=3600)
)
def get_temp_url_dict(bucket_name, object_dict, object_name):
# 如果 object_name 为 None 或空字符串,则返回默认图片
if not object_name:
bucket_name = "system"
object_dict = "default"
object_name = "favicon.ico"
# 使用 presigned_get_object 获取临时 URL
return minio_client.presigned_get_object(
bucket_name, object_dict + "/" + object_name, expires=timedelta(seconds=3600)
)
+24
View File
@@ -0,0 +1,24 @@
import redis
class RedisClient:
def __init__(self, config_path="config.yaml"):
self.redis = redis.Redis(
"10.10.12.101",
6379,
0,
decode_responses=True,
)
def set_online(self, device_id: str):
key = f"device:online:{device_id}"
self.redis.set(key, 1)
def set_offline(self, device_id: str):
key = f"device:online:{device_id}"
self.redis.delete(key)
def is_device_online(self, device_id: str) -> bool:
key = f"device:online:{device_id}"
return self.redis.exists(key) == 1