---
title: 萌宠音频互动方案 - 编辑宠物云存音频文件
summary: 萌宠音频互动方案的云存音频编辑模块，支持获取全量云存音频、试听、新增、下载至设备、删除。依赖 fetchPetAudios（获取宠物媒体文件）、notifyDownload（下载至设备）、deleteDeviceFile（删除文件）、createInnerAudioContext（试听播放）四个关键能力。
---

## 编辑宠物云存音频文件

### 功能介绍

<div style="marginTop: 20px;">
<img alt="原始视频" src="https://images.tuyacn.com/rms-static/95facd40-4156-11f0-9fb9-e1834df84344-1749050058772.png?tyName=delete" width="300">
</div>

1. 编辑宠物云存音频文件以下内容：获取全量云存音频、试听云存音频、新增云存音频、下载云存音频至设备、删除云存音频

2. 编辑宠物云存音频文件，主要依赖以下4个关键能力：

- **获取宠物媒体文件**  
   开发者可通过 [fetchPetAudios](/cn/miniapp/develop/ray/api/ai/aiPet/pet_media-device/fetchPetAudios) API 获取宠物媒体文件。

- **宠物媒体文件下载**  
   开发者可通过 [notifyDownload](/cn/miniapp/develop/ray/api/ai/aiPet/pet_media-device/notifyDownload) API 下载宠物媒体文件至设备。

- **删除宠物媒体文件**  
   开发者可通过 [deleteDeviceFile](/cn/miniapp/develop/ray/api/ai/aiPet/pet_media-device/deleteDeviceFile) API 删除宠物媒体文件。

- **音乐资源控制实例**  
   开发者可通过 [createInnerAudioContext](https://developer.tuya.com/cn/miniapp/develop/ray/api/media/audio/createInnerAudioContext)试听云存音频文件。

### 交互流程

```mermaid
sequenceDiagram
    participant 用户
    participant 面板
    participant 云端
    participant 音频播放器

    rect rgb(200, 230, 255)
        Note over 用户,云端: 获取音频列表
        用户 ->> 面板: 1. 请求宠物音频
        面板 ->> 云端: 2. fetchPetAudios()
        alt 有音频文件
            云端 -->> 面板: 3. 返回音频列表[]
            面板 ->> 用户: 4. 展示可操作列表
        else 无音频文件
            云端 -->> 面板: 3. 返回空列表
            面板 ->> 用户: 4. 显示"暂无音频"提示
        end
    end

    rect rgb(230, 255, 200)
        Note over 用户,云端: 新增音频(空列表时)
        用户 ->> 面板: 5. 上传本地音频
        面板 ->> 云端: 6. fileRelationSave()
        云端 -->> 面板: 7. 返回新音频ID
        面板 ->> 用户: 8. 更新列表显示
    end

    rect rgb(255, 230, 200)
        Note over 用户,音频播放器: 音频试听管理
        用户 ->> 面板: 9. 选择试听文件
        面板 ->> 音频播放器: 10. createInnerAudioContext(ID)
        音频播放器 ->> 云端: 11. 获取音频流
        云端 -->> 音频播放器: 12. 返回音频流
        音频播放器 ->> 用户: 13. 开始播放

        alt 试听满意
            用户 ->> 面板: 14. 确认下载
            面板 ->> 云端: 15. notifyDownload(ID)
            云端 -->> 面板: 16. 返回下载地址
            面板 ->> 用户: 17. 保存到设备
        else 试听不满意
            用户 ->> 面板: 14. 删除文件
            面板 ->> 云端: 15. deleteDeviceFile(ID)
            云端 -->> 面板: 16. 返回删除结果
            面板 ->> 用户: 17. 更新列表
        end
    end
```
