1: [ServiceContract(CallbackContract = typeof(IAvSolJukeCallBack), SessionMode = SessionMode.Required)]
2: public interface IAvSolJukeService
3: { 4: [OperationContract(IsOneWay = true)]
5: void ScanForNewSongs(string path);
6:
7: [OperationContract(IsOneWay = true)]
8: void FindSongs(string searchText);
9:
10: [OperationContract(IsOneWay = true)]
11: void AddRequest(int playerID, int userID, int songID);
12:
13: [OperationContract(IsOneWay = true)]
14: void AddRating(int userID, int songID, int value);
15:
16: [OperationContract(IsOneWay = true)]
17: void SkipPlayerSong(int playerID, int userID);
18:
19: [OperationContract(IsOneWay = true)]
20: void PausePlayer(int playerID, int userID);
21:
22: [OperationContract(IsOneWay = true)]
23: void VolumeUp(int playerID, int userID);
24:
25: [OperationContract(IsOneWay = true)]
26: void VolumeDown(int playerID, int userID);
27:
28: [OperationContract(IsOneWay = true)]
29: void Visit(int playerID, string guid, string name);
30:
31: [OperationContract(IsOneWay = true)]
32: void Join(int playerID, string guid, string name);
33:
34: [OperationContract(IsOneWay = true)]
35: void Leave(int playerID, int userID);
36:
37: }
38:
39: [ServiceContract(SessionMode = SessionMode.Required)]
40: public interface IAvSolJukeCallBack
41: { 42: [OperationContract(IsOneWay = true)]
43: void Identified(int userID, string playerName);
44:
45: [OperationContract(IsOneWay = true)]
46: void NowPlaying(string title, string artist, string album);
47:
48: [OperationContract(IsOneWay = true)]
49: void StatusChange(Status status);
50:
51: [OperationContract(IsOneWay = true)]
52: void PlayListChange(Song[] list);
53:
54: [OperationContract(IsOneWay = true)]
55: void FindSongResults(Song[] list);
56: }
57: