import React, { useState } from 'react'; import { Button, Card, Space, Row, Col, Table, Form, Input, message } from 'antd'; import { useNavigate } from 'react-router'; export const SmsModulePage = () => { const navigate = useNavigate(); const [deviceStatus, setDeviceStatus] = useState({ io_alive: false, md_alive: false, signal_rate: 0, mno: '未知' }); interface TaskStatus { id: string; status: string; result?: string; timestamp?: string; } const [taskStatus, setTaskStatus] = useState(null); const [taskId, setTaskId] = useState(''); const [phoneNumber, setPhoneNumber] = useState(''); const [smsContent, setSmsContent] = useState(''); const fetchDeviceStatus = async () => { try { const response = await fetch('http://vsmsd:Vsmsd123@52.55.129.63:12080/api/v1/info'); const data = await response.json(); setDeviceStatus({ io_alive: data.io_alive, md_alive: data.md_alive, signal_rate: data.signal_rate, mno: data.mno }); message.success('状态获取成功'); } catch (error) { message.error('状态获取失败'); console.error('Error fetching device status:', error); } }; const sendSms = async () => { // 验证手机号码 if (!/^1[3-9]\d{9}$/.test(phoneNumber)) { message.error('请输入正确的11位手机号码'); return; } // 验证短信内容 if (!smsContent.trim()) { message.error('请输入短信内容'); return; } try { const response = await fetch('http://vsmsd:Vsmsd123@52.55.129.63:12080/api/v1/sms', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ method: 'send_sms', number: phoneNumber, content: smsContent }) }); const data = await response.json(); setTaskId(data.task_id); message.success('短信发送成功'); } catch (error) { message.error('短信发送失败'); console.error('Error sending SMS:', error); } }; const fetchTaskStatus = async (taskId: string) => { try { const response = await fetch(`http://vsmsd:Vsmsd123@52.55.129.63:12080/api/v1/task/${taskId}`); const data = await response.json(); setTaskStatus(data); message.success('任务状态获取成功'); } catch (error) { message.error('任务状态获取失败'); console.error('Error fetching task status:', error); } }; return (

短信模块管理

信号强度: {deviceStatus.signal_rate}%

运营商: {deviceStatus.mno}

4G模块: {deviceStatus.md_alive ? '在线' : '离线'}

setPhoneNumber(e.target.value)} /> setSmsContent(e.target.value)} /> setTaskId(e.target.value)} />
); };