syntax = "proto3"; package Aurora.Proto.Party; import "Proto/general.proto"; service RemotePartyService { //Party Service rpc JoinParty(JoinPartyRequest) returns (JoinPartyResponse); rpc LeaveParty(LeavePartyRequest) returns (LeavePartyResponse); rpc GetPartyMembers(Aurora.Proto.General.Empty) returns (MembersResponse); rpc GetQueue(Aurora.Proto.General.Empty) returns (QueueResponse); } message JoinPartyRequest { string userName = 2; } message JoinPartyResponse { PartyJoinedStatusEnum status = 1; string clientId = 2; } message LeavePartyRequest { string clientId = 1; } message LeavePartyResponse { PartyJoinedStatusEnum status = 1; } message PartyMember { string userName = 1; string id = 2; string ipAddress = 3; int32 port = 4; } message MembersResponse { repeated PartyMember members = 1; } enum PartyJoinedStatusEnum { Connected = 0; Disconnected = 1; } message QueueResponse{ repeated RemoteMediaData mediaList = 1; } message RemoteMediaData { string title = 1; string artist = 2; string album = 3; string duration = 4; }