syntax = "proto3";

import "cmvr/api/speaker_command.proto";

package cmvr.api;


service SpeakerService {
    // 基本控制
    rpc GetStatus(GetSpeakerStateCommand.Request) returns (GetSpeakerStateCommand.Feedback);
    rpc PlayAudio(PlayAudioCommand.Request) returns (PlayAudioCommand.Feedback);
    rpc StopPlayback(StopSpeakerCommand.Request) returns (StopSpeakerCommand.Feedback);
    rpc PausePlayback(PauseSpeakerCommand.Request) returns (PauseSpeakerCommand.Feedback);
    rpc ResumePlayback(ResumeSpeakerCommand.Request) returns (ResumeSpeakerCommand.Feedback);

    // 音量控制
    rpc SetVolume(SetSpeakerVolumeCommand.Request) returns (SetSpeakerVolumeCommand.Feedback);
    rpc GetVolume(GetSpeakerVolumeCommand.Request) returns (GetSpeakerVolumeCommand.Feedback);

}