mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-29 05:03:57 +08:00
update:test迁移重命名为digital-human
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
// 配置管理模块
|
||||
|
||||
// 默认唤醒词列表
|
||||
export const DEFAULT_WAKE_WORDS = '你好小智\n你好小志\n小爱同学\n你好小鑫\n你好小新\n小美同学\n小龙小龙\n喵喵同学\n小滨小滨\n小冰小冰\n嘿你好呀';
|
||||
|
||||
// 生成随机MAC地址
|
||||
function generateRandomMac() {
|
||||
const hexDigits = '0123456789ABCDEF';
|
||||
let mac = '';
|
||||
for (let i = 0; i < 6; i++) {
|
||||
if (i > 0) mac += ':';
|
||||
for (let j = 0; j < 2; j++) {
|
||||
mac += hexDigits.charAt(Math.floor(Math.random() * 16));
|
||||
}
|
||||
}
|
||||
return mac;
|
||||
}
|
||||
|
||||
// 加载配置
|
||||
export function loadConfig() {
|
||||
const deviceMacInput = document.getElementById('deviceMac');
|
||||
const deviceNameInput = document.getElementById('deviceName');
|
||||
const clientIdInput = document.getElementById('clientId');
|
||||
const otaUrlInput = document.getElementById('otaUrl');
|
||||
const wakewordWsUrlInput = document.getElementById('wakewordWsUrl');
|
||||
const wakewordEnabledInput = document.getElementById('wakewordEnabled');
|
||||
const wakewordListInput = document.getElementById('wakewordList');
|
||||
|
||||
// 从localStorage加载MAC地址,如果没有则生成新的
|
||||
let savedMac = localStorage.getItem('xz_tester_deviceMac');
|
||||
if (!savedMac) {
|
||||
savedMac = generateRandomMac();
|
||||
localStorage.setItem('xz_tester_deviceMac', savedMac);
|
||||
}
|
||||
deviceMacInput.value = savedMac;
|
||||
|
||||
// 从localStorage加载其他配置
|
||||
const savedDeviceName = localStorage.getItem('xz_tester_deviceName');
|
||||
if (savedDeviceName) {
|
||||
deviceNameInput.value = savedDeviceName;
|
||||
}
|
||||
|
||||
const savedClientId = localStorage.getItem('xz_tester_clientId');
|
||||
if (savedClientId) {
|
||||
clientIdInput.value = savedClientId;
|
||||
}
|
||||
|
||||
const savedOtaUrl = localStorage.getItem('xz_tester_otaUrl');
|
||||
if (savedOtaUrl) {
|
||||
otaUrlInput.value = savedOtaUrl;
|
||||
}
|
||||
|
||||
const savedWakewordWsUrl = localStorage.getItem('xz_tester_wakewordWsUrl');
|
||||
if (savedWakewordWsUrl !== null && wakewordWsUrlInput) {
|
||||
wakewordWsUrlInput.value = savedWakewordWsUrl;
|
||||
}
|
||||
|
||||
const savedWakewordEnabled = localStorage.getItem('xz_tester_wakewordEnabled');
|
||||
if (savedWakewordEnabled !== null && wakewordEnabledInput) {
|
||||
wakewordEnabledInput.value = savedWakewordEnabled;
|
||||
}
|
||||
|
||||
const savedWakewordList = localStorage.getItem('xz_tester_wakewordList');
|
||||
if (savedWakewordList !== null && wakewordListInput) {
|
||||
wakewordListInput.value = savedWakewordList;
|
||||
} else if (wakewordListInput) {
|
||||
wakewordListInput.value = DEFAULT_WAKE_WORDS;
|
||||
}
|
||||
|
||||
const emojiEnabledInput = document.getElementById('emojiEnabled');
|
||||
const savedEmojiEnabled = localStorage.getItem('xz_tester_emojiEnabled');
|
||||
if (savedEmojiEnabled !== null && emojiEnabledInput) {
|
||||
emojiEnabledInput.value = savedEmojiEnabled;
|
||||
}
|
||||
}
|
||||
|
||||
// 保存配置
|
||||
export function saveConfig() {
|
||||
const deviceMacInput = document.getElementById('deviceMac');
|
||||
const deviceNameInput = document.getElementById('deviceName');
|
||||
const clientIdInput = document.getElementById('clientId');
|
||||
const wakewordWsUrlInput = document.getElementById('wakewordWsUrl');
|
||||
const wakewordEnabledInput = document.getElementById('wakewordEnabled');
|
||||
const wakewordListInput = document.getElementById('wakewordList');
|
||||
|
||||
localStorage.setItem('xz_tester_deviceMac', deviceMacInput.value);
|
||||
localStorage.setItem('xz_tester_deviceName', deviceNameInput.value);
|
||||
localStorage.setItem('xz_tester_clientId', clientIdInput.value);
|
||||
const emojiEnabledInput = document.getElementById('emojiEnabled');
|
||||
if (emojiEnabledInput) {
|
||||
localStorage.setItem('xz_tester_emojiEnabled', emojiEnabledInput.value);
|
||||
}
|
||||
if (wakewordEnabledInput) {
|
||||
localStorage.setItem('xz_tester_wakewordEnabled', wakewordEnabledInput.value);
|
||||
}
|
||||
if (wakewordListInput) {
|
||||
localStorage.setItem('xz_tester_wakewordList', wakewordListInput.value);
|
||||
}
|
||||
if (wakewordWsUrlInput && wakewordWsUrlInput.value.trim()) {
|
||||
localStorage.setItem('xz_tester_wakewordWsUrl', wakewordWsUrlInput.value.trim());
|
||||
}
|
||||
}
|
||||
|
||||
// 获取配置值
|
||||
export function getConfig() {
|
||||
// 从DOM获取值
|
||||
const deviceMac = document.getElementById('deviceMac')?.value.trim() || '';
|
||||
const deviceName = document.getElementById('deviceName')?.value.trim() || '';
|
||||
const clientId = document.getElementById('clientId')?.value.trim() || '';
|
||||
const emojiEnabled = document.getElementById('emojiEnabled')?.value !== 'false';
|
||||
|
||||
return {
|
||||
deviceId: deviceMac, // 使用MAC地址作为deviceId
|
||||
deviceName,
|
||||
deviceMac,
|
||||
clientId,
|
||||
emojiEnabled
|
||||
};
|
||||
}
|
||||
|
||||
// 保存连接URL
|
||||
export function saveConnectionUrls() {
|
||||
const otaUrl = document.getElementById('otaUrl').value.trim();
|
||||
const wsUrl = document.getElementById('serverUrl').value.trim();
|
||||
localStorage.setItem('xz_tester_otaUrl', otaUrl);
|
||||
localStorage.setItem('xz_tester_wsUrl', wsUrl);
|
||||
}
|
||||
Reference in New Issue
Block a user