printf("[WS] SleepModeEnd:哄睡模式结束\n");
if (json_str)
{
- ln_parse_sleep_mode_end(json_str, (int)strlen(json_str));
+ // ln_parse_sleep_mode_end(json_str, (int)strlen(json_str));
+ ln_ws_send_voice_chat_interrupt("哄睡模式结束");
+ AI_ForceInterrupt();
}
break;
}
}
else if (mail.cmd == LN_HTTP_SERVICE_CMD_DOWNLOAD_EMOJI)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "LN_HTTP_SERVICE_CMD_DOWNLOAD_EMOJI:下载表情\n");
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "LN_HTTP_SERVICE_CMD_DOWNLOAD_EMOJI:下载表情任务请求\n");
ln_start_emoji_download();
}
- else if (mail.cmd == LN_HTTP_SERVICE_CMD_DELETE_EMOJI)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "LN_HTTP_SERVICE_CMD_DELETE_EMOJI:删除表情\n");
- if (mail.data)
- {
- // ln_delete_emoji_http(mail.data, mail.len);
- }
- }
else if (mail.cmd == LN_HTTP_SERVICE_CMD_EMOJI_REPORT)
{
- printf("LN_HTTP_SERVICE_CMD_EMOJI_REPORT:上报角色表情组下载状态\n");
+ printf("LN_HTTP_SERVICE_CMD_EMOJI_REPORT:上报角色表情组下载/删除状态\n");
if (mail.data)
{
ln_emoji_report_status(mail.data);
#include <unistd.h>
#include <errno.h>
#include <dirent.h>
+#include "custom_utils.h"
/* 宏定义 */
#define MAX_PATH_LEN 512 // 最大路径长度
del_eyesShape,
del_eyesColor);
- if (ln_rmdir_recursive(del_dir) == 0)
+ int ret = uapi_delete_folder(del_dir);
+ if (ret == 0)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DELETE_EMOJI] cached files in %s deleted", del_dir);
}
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DELETE_EMOJI] failed to delete cached files in %s", del_dir);
}
+ // [WEARABLE E/] [DELETE_EMOJI] parsed successfully:
+ // [WEARABLE E/] characterId: 36d5525a0873
+ // [WEARABLE E/] eyesColor: purple
+ // [WEARABLE E/] eyesShape: upturned-eyes
+
+ //上报表情组删除状态
+ // 下载完成后上报状态
+ /* 构建上报邮件(包含状态与描述) */
+ ln_emoji_report_mail_t mail = {0};
+ ln_safe_strcpy(mail.characterId, sizeof(mail.characterId), del_characterId);
+ ln_safe_strcpy(mail.eyesColor, sizeof(mail.eyesColor), del_eyesColor);
+ ln_safe_strcpy(mail.eyesShape, sizeof(mail.eyesShape), del_eyesShape);
+ ln_safe_strcpy(mail.status, sizeof(mail.status), ret == 0 ? "delete_success" : "delete_fail");
+ ln_safe_strcpy(mail.description, sizeof(mail.description), "删除成功");
+ do_ln_http_server_send_data(LN_HTTP_SERVICE_CMD_EMOJI_REPORT, (char *)&mail, (uint32_t)sizeof(mail));
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DELETE_EMOJI] report status %s, ret: %s", mail.status, ret == 0 ? "删除成功" : "删除失败");
+
// 清理资源
cJSON_Delete(root);
free(text);
}
/* 7.1 上报角色表情组下载状态(支持 description) */
-uint32_t ln_emoji_report_status_http(const char *device_id,
+static uint32_t ln_emoji_report_status_http(const char *device_id,
const char *device_token,
const char *character_id,
const char *eyes_color,
return ERRCODE_SUCC;
}
/* 7.2 上报设备所有表情组状态 */
-uint32_t ln_emoji_report_all_http(const char *device_id,
+static uint32_t ln_emoji_report_all_http(const char *device_id,
const char *device_token,
const LnEmojiGroup *groups,
int group_count)
return ERRCODE_SUCC;
}
-/* 上报角色表情组下载状态 */
+/* 上报角色表情组下载/删除状态 */
void ln_emoji_report_status(char* data)
{
if (!data) {