fix: 删除不必要的手动.dspy端点,修正new_session.ui使用标准CRUD端点和textField/valueField参数
This commit is contained in:
parent
51f9776f40
commit
7d55ef7548
BIN
wwwroot/hermes_services/list/.index.dspy.swp
Normal file
BIN
wwwroot/hermes_services/list/.index.dspy.swp
Normal file
Binary file not shown.
@ -1,20 +0,0 @@
|
|||||||
# Get hermes_services list for code dropdown
|
|
||||||
# This .dspy file uses functions released by load_hermes_web_cli()
|
|
||||||
|
|
||||||
try:
|
|
||||||
# Use the function provided by hermes-web-cli module
|
|
||||||
services = get_all_services()
|
|
||||||
|
|
||||||
# Format for code component (value, text pairs)
|
|
||||||
result = []
|
|
||||||
for service in services:
|
|
||||||
result.append({
|
|
||||||
"value": str(service.get('id')),
|
|
||||||
"text": service.get('name', f"Service {service.get('id')}")
|
|
||||||
})
|
|
||||||
|
|
||||||
# Return array directly for code component
|
|
||||||
return result
|
|
||||||
except Exception as e:
|
|
||||||
# On error or no data, return empty array
|
|
||||||
return []
|
|
||||||
@ -26,7 +26,9 @@
|
|||||||
"label": "Service",
|
"label": "Service",
|
||||||
"uitype": "code",
|
"uitype": "code",
|
||||||
"required": true,
|
"required": true,
|
||||||
"data_url": "/hermes-web-cli/hermes_services/list/"
|
"data_url": "/hermes-web-cli/hermes_services/",
|
||||||
|
"textField": "name",
|
||||||
|
"valueField": "id"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "initial_message",
|
"name": "initial_message",
|
||||||
|
|||||||
@ -1,79 +0,0 @@
|
|||||||
# hermes-web-cli renew.dspy
|
|
||||||
# Business logic for service renewal and management
|
|
||||||
|
|
||||||
import json
|
|
||||||
from datetime import datetime, timedelta
|
|
||||||
|
|
||||||
def get_service_info(service_id: str) -> dict:
|
|
||||||
"""Get detailed service information including status and usage stats"""
|
|
||||||
# This function will be called by the .ui files through data_url
|
|
||||||
from hermes_web_cli.init import get_service_by_id
|
|
||||||
service = get_service_by_id(service_id)
|
|
||||||
if not service:
|
|
||||||
return {"error": "Service not found"}
|
|
||||||
|
|
||||||
# Add additional info like usage stats, renewal date, etc.
|
|
||||||
service_info = service.copy()
|
|
||||||
service_info.update({
|
|
||||||
"renewal_date": (datetime.now() + timedelta(days=30)).isoformat(),
|
|
||||||
"usage_stats": {
|
|
||||||
"total_sessions": 150,
|
|
||||||
"active_sessions": 12,
|
|
||||||
"api_calls_today": 2340
|
|
||||||
}
|
|
||||||
})
|
|
||||||
return service_info
|
|
||||||
|
|
||||||
def renew_service(service_id: str, renewal_period: str = "monthly") -> dict:
|
|
||||||
"""Renew a Hermes service subscription"""
|
|
||||||
from hermes_web_cli.init import get_service_by_id
|
|
||||||
service = get_service_by_id(service_id)
|
|
||||||
if not service:
|
|
||||||
return {"success": False, "error": "Service not found"}
|
|
||||||
|
|
||||||
# Calculate new renewal date based on period
|
|
||||||
now = datetime.now()
|
|
||||||
if renewal_period == "monthly":
|
|
||||||
new_renewal = now + timedelta(days=30)
|
|
||||||
elif renewal_period == "yearly":
|
|
||||||
new_renewal = now + timedelta(days=365)
|
|
||||||
else:
|
|
||||||
new_renewal = now + timedelta(days=30)
|
|
||||||
|
|
||||||
# Update service in database (placeholder)
|
|
||||||
renewed_service = service.copy()
|
|
||||||
renewed_service.update({
|
|
||||||
"renewal_date": new_renewal.isoformat(),
|
|
||||||
"status": "active",
|
|
||||||
"last_renewed": now.isoformat()
|
|
||||||
})
|
|
||||||
|
|
||||||
return {"success": True, "service": renewed_service}
|
|
||||||
|
|
||||||
def get_renewal_options() -> list:
|
|
||||||
"""Get available renewal options"""
|
|
||||||
return [
|
|
||||||
{"id": "monthly", "name": "月度续费", "price": "¥299/月"},
|
|
||||||
{"id": "quarterly", "name": "季度续费", "price": "¥799/季"},
|
|
||||||
{"id": "yearly", "name": "年度续费", "price": "¥2899/年"}
|
|
||||||
]
|
|
||||||
|
|
||||||
def validate_renewal_request(service_id: str, payment_method: str) -> dict:
|
|
||||||
"""Validate renewal request before processing"""
|
|
||||||
from hermes_web_cli.init import get_service_by_id
|
|
||||||
service = get_service_by_id(service_id)
|
|
||||||
if not service:
|
|
||||||
return {"valid": False, "error": "Service not found"}
|
|
||||||
|
|
||||||
if payment_method not in ["credit_card", "alipay", "wechat_pay"]:
|
|
||||||
return {"valid": False, "error": "Invalid payment method"}
|
|
||||||
|
|
||||||
return {"valid": True, "service_name": service["name"]}
|
|
||||||
|
|
||||||
# Module exports for template access
|
|
||||||
__all__ = [
|
|
||||||
'get_service_info',
|
|
||||||
'renew_service',
|
|
||||||
'get_renewal_options',
|
|
||||||
'validate_renewal_request'
|
|
||||||
]
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/services/{id}
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
from hermes_web_cli.init import get_service_by_id
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the service by ID API request."""
|
|
||||||
try:
|
|
||||||
# Get service ID from URL path
|
|
||||||
path_info = os.environ.get('PATH_INFO', '')
|
|
||||||
service_id = path_info.strip('/').split('/')[-1] if path_info else ''
|
|
||||||
|
|
||||||
if not service_id:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Service ID is required",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get service by ID
|
|
||||||
service = get_service_by_id(service_id)
|
|
||||||
|
|
||||||
if service:
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": service
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Service not found",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/services
|
|
||||||
|
|
||||||
import json
|
|
||||||
from hermes_web_cli.init import get_all_services
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the services API request."""
|
|
||||||
try:
|
|
||||||
# Get all services from the module
|
|
||||||
services = get_all_services()
|
|
||||||
|
|
||||||
# Return as JSON response
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": services,
|
|
||||||
"total": len(services)
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": [],
|
|
||||||
"total": 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,37 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/services/list
|
|
||||||
|
|
||||||
import json
|
|
||||||
from hermes_web_cli.init import get_all_services
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the services list API request for select dropdowns."""
|
|
||||||
try:
|
|
||||||
# Get all services from the module
|
|
||||||
services = get_all_services()
|
|
||||||
|
|
||||||
# Format for select dropdown (value, label pairs)
|
|
||||||
service_options = []
|
|
||||||
for service in services:
|
|
||||||
service_options.append({
|
|
||||||
"value": service.get("id"),
|
|
||||||
"label": service.get("name", f"Service {service.get('id')}")
|
|
||||||
})
|
|
||||||
|
|
||||||
# Return as JSON response
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": service_options,
|
|
||||||
"total": len(service_options)
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": [],
|
|
||||||
"total": 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,56 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/services/test?id={service_id}
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
from hermes_web_cli.init import get_service_by_id, test_service_connection
|
|
||||||
from urllib.parse import parse_qs
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the service connection test API request with query parameter."""
|
|
||||||
try:
|
|
||||||
# Get service ID from query string
|
|
||||||
query_string = os.environ.get('QUERY_STRING', '')
|
|
||||||
if query_string:
|
|
||||||
query_params = parse_qs(query_string)
|
|
||||||
service_id = query_params.get('id', [None])[0]
|
|
||||||
else:
|
|
||||||
service_id = None
|
|
||||||
|
|
||||||
if not service_id:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Service ID is required (use ?id= parameter)",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get service by ID
|
|
||||||
service = get_service_by_id(service_id)
|
|
||||||
if not service:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Service not found",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Test connection
|
|
||||||
is_connected, status_message = test_service_connection(service.get("service_url", ""))
|
|
||||||
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": {
|
|
||||||
"is_connected": is_connected,
|
|
||||||
"status_message": status_message,
|
|
||||||
"service_id": service_id
|
|
||||||
}
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/sessions/active
|
|
||||||
|
|
||||||
import json
|
|
||||||
from hermes_web_cli.init import get_active_sessions
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the active sessions API request."""
|
|
||||||
try:
|
|
||||||
# Get active sessions from the module
|
|
||||||
sessions = get_active_sessions()
|
|
||||||
|
|
||||||
# Return as JSON response
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": sessions,
|
|
||||||
"total": len(sessions)
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": [],
|
|
||||||
"total": 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/sessions/{id}
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
from hermes_web_cli.init import get_session_by_id
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the session by ID API request."""
|
|
||||||
try:
|
|
||||||
# Get session ID from URL path
|
|
||||||
path_info = os.environ.get('PATH_INFO', '')
|
|
||||||
session_id = path_info.strip('/').split('/')[-1] if path_info else ''
|
|
||||||
|
|
||||||
if not session_id:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Session ID is required",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get session by ID
|
|
||||||
session = get_session_by_id(session_id)
|
|
||||||
|
|
||||||
if session:
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": session
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Session not found",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,60 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/sessions (POST to create)
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
from hermes_web_cli.init import create_session
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the create session API request."""
|
|
||||||
try:
|
|
||||||
# Get request method
|
|
||||||
request_method = os.environ.get('REQUEST_METHOD', 'GET')
|
|
||||||
|
|
||||||
if request_method == 'POST':
|
|
||||||
# Read POST data from stdin
|
|
||||||
content_length = int(os.environ.get('CONTENT_LENGTH', 0))
|
|
||||||
if content_length > 0:
|
|
||||||
post_data = json.loads(os.read(0, content_length).decode('utf-8'))
|
|
||||||
service_id = post_data.get('service_id')
|
|
||||||
initial_message = post_data.get('initial_message')
|
|
||||||
|
|
||||||
if not service_id or not initial_message:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "service_id and initial_message are required",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Create session
|
|
||||||
session_id = create_session(service_id, initial_message)
|
|
||||||
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": {
|
|
||||||
"session_id": session_id,
|
|
||||||
"service_id": service_id
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "No POST data provided",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Method not allowed",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,79 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/sessions/messages?session_id={session_id}
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
from hermes_web_cli.init import get_session_messages, send_message_to_service
|
|
||||||
from urllib.parse import parse_qs
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the session messages API request with query parameter."""
|
|
||||||
try:
|
|
||||||
# Get session ID from query string
|
|
||||||
query_string = os.environ.get('QUERY_STRING', '')
|
|
||||||
if query_string:
|
|
||||||
query_params = parse_qs(query_string)
|
|
||||||
session_id = query_params.get('session_id', [None])[0]
|
|
||||||
else:
|
|
||||||
session_id = None
|
|
||||||
|
|
||||||
if not session_id:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Session ID is required (use ?session_id= parameter)",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
request_method = os.environ.get('REQUEST_METHOD', 'GET')
|
|
||||||
|
|
||||||
if request_method == 'GET':
|
|
||||||
# Get session messages
|
|
||||||
messages = get_session_messages(session_id)
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": messages,
|
|
||||||
"total": len(messages)
|
|
||||||
}
|
|
||||||
|
|
||||||
elif request_method == 'POST':
|
|
||||||
# Send new message
|
|
||||||
content_length = int(os.environ.get('CONTENT_LENGTH', 0))
|
|
||||||
if content_length > 0:
|
|
||||||
post_data = json.loads(os.read(0, content_length).decode('utf-8'))
|
|
||||||
message = post_data.get('message')
|
|
||||||
|
|
||||||
if not message:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Message content is required",
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Here you would get the service_id from the session and send the message
|
|
||||||
# For now, just return success (in real implementation, call send_message_to_service)
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"message": "Message sent successfully"
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "No message data provided"
|
|
||||||
}
|
|
||||||
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Method not allowed"
|
|
||||||
}
|
|
||||||
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/sessions/recent
|
|
||||||
|
|
||||||
import json
|
|
||||||
from hermes_web_cli.init import get_recent_sessions
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the recent sessions API request."""
|
|
||||||
try:
|
|
||||||
# Get recent sessions from the module
|
|
||||||
sessions = get_recent_sessions(limit=5)
|
|
||||||
|
|
||||||
# Return as JSON response
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": sessions,
|
|
||||||
"total": len(sessions)
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": [],
|
|
||||||
"total": 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/sessions/recent
|
|
||||||
|
|
||||||
import json
|
|
||||||
from hermes_web_cli.init import get_recent_sessions
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the recent sessions API request."""
|
|
||||||
try:
|
|
||||||
# Get recent sessions from the module (limit to 5 as expected by the UI)
|
|
||||||
sessions = get_recent_sessions(limit=5)
|
|
||||||
|
|
||||||
# Return as JSON response
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": sessions,
|
|
||||||
"total": len(sessions)
|
|
||||||
}
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": [],
|
|
||||||
"total": 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/settings
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the settings API request."""
|
|
||||||
try:
|
|
||||||
request_method = os.environ.get('REQUEST_METHOD', 'GET')
|
|
||||||
|
|
||||||
if request_method == 'GET':
|
|
||||||
# Return current settings (mock data for now)
|
|
||||||
settings = {
|
|
||||||
"default_service": "service-1",
|
|
||||||
"auto_save_sessions": True,
|
|
||||||
"session_timeout_minutes": 60,
|
|
||||||
"max_concurrent_sessions": 10
|
|
||||||
}
|
|
||||||
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"data": settings
|
|
||||||
}
|
|
||||||
|
|
||||||
elif request_method == 'POST':
|
|
||||||
# Update settings
|
|
||||||
content_length = int(os.environ.get('CONTENT_LENGTH', 0))
|
|
||||||
if content_length > 0:
|
|
||||||
post_data = json.loads(os.read(0, content_length).decode('utf-8'))
|
|
||||||
# Here you would save the settings to database or config file
|
|
||||||
# For now, just return success
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"message": "Settings updated successfully"
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "No settings data provided"
|
|
||||||
}
|
|
||||||
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Method not allowed"
|
|
||||||
}
|
|
||||||
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
# This is a controlled Python script (.dspy file) that will be executed by the web framework
|
|
||||||
# It provides the API endpoint for /hermes-web-cli/settings/reset
|
|
||||||
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
|
|
||||||
def main():
|
|
||||||
"""Main function to handle the reset settings API request."""
|
|
||||||
try:
|
|
||||||
request_method = os.environ.get('REQUEST_METHOD', 'GET')
|
|
||||||
|
|
||||||
if request_method == 'POST':
|
|
||||||
# Reset settings to defaults
|
|
||||||
# Here you would reset settings in database or config file
|
|
||||||
# For now, just return success
|
|
||||||
return {
|
|
||||||
"status": "success",
|
|
||||||
"message": "Settings reset to defaults successfully"
|
|
||||||
}
|
|
||||||
else:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": "Method not allowed"
|
|
||||||
}
|
|
||||||
|
|
||||||
except Exception as e:
|
|
||||||
return {
|
|
||||||
"status": "error",
|
|
||||||
"message": str(e),
|
|
||||||
"data": None
|
|
||||||
}
|
|
||||||
|
|
||||||
# Execute and return JSON response
|
|
||||||
result = main()
|
|
||||||
print(json.dumps(result, ensure_ascii=False))
|
|
||||||
Loading…
x
Reference in New Issue
Block a user