OliveSensorAPI/IOTLLM/SensorAPI/LLMscript/script.py

38 lines
1.2 KiB
Python

# -*- coding: utf-8 -*-
# @Time : 2024/11/12 16:37
# @Author : 黄子寒
# @Email : 1064071566@qq.com
# @File : script.py
# @Project : EmoLLM
import requests
def query_sensor_data(area_code: str, parameter_type: str) -> dict:
"""
查询指定区域和数据类型的传感器数据。
:param area_code: str, 区域代码 (如 "A""B")
:param parameter_type: str, 数据类型 (如 "moisture""temperature""conductivity")
:return: dict, 包含查询结果的字典
"""
url = f"http://127.0.0.1:8000/sensors/api/{area_code}/{parameter_type}/"
try:
response = requests.get(url)
response.raise_for_status() # 检查请求是否成功
return response.json() # 返回 JSON 格式的数据
except requests.exceptions.RequestException as e:
return {"error": str(e)}
# 示例用法:可供 LLM function calling 调用
if __name__ == "__main__":
import sys
# 从命令行获取参数
if len(sys.argv) < 3:
print("请提供区域代码和数据类型参数")
else:
area_code = sys.argv[1]
parameter_type = sys.argv[2]
result = query_sensor_data(area_code, parameter_type)
print(result)