from banban.service.message_audio_storage import MessageAudioStorageService from utils.logger import session_logger message_audio_storage_service = MessageAudioStorageService() async def save_audio_file(audio_data: bytes, device_id: str) -> str: """Upload device audio to COS and return its object key.""" try: stored = await message_audio_storage_service.upload_audio( device_id=device_id, content=audio_data, ) session_logger.info(device_id, "audio", f"audio uploaded to COS: {stored.file_key}") return stored.file_key except Exception as e: session_logger.error(device_id, "audio", f"failed to store audio: {e}", exc_info=True) raise