spirc.proto 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. enum MessageType {
  2. kMessageTypeHello = 1;
  3. kMessageTypeGoodbye = 2;
  4. kMessageTypeNotify = 10;
  5. kMessageTypeLoad = 20;
  6. kMessageTypePlay = 21;
  7. kMessageTypePause = 22;
  8. // kMessageTypePlayPause = 23;
  9. kMessageTypeSeek = 24;
  10. kMessageTypePrev = 25;
  11. kMessageTypeNext = 26;
  12. kMessageTypeVolume = 27;
  13. kMessageTypeShuffle = 28;
  14. kMessageTypeRepeat = 29;
  15. kMessageTypeQueue = 30;
  16. kMessageTypeVolumeDown = 31;
  17. kMessageTypeVolumeUp = 32;
  18. kMessageTypeAddToQueue = 33;
  19. }
  20. enum PlayStatus {
  21. kPlayStatusStop = 0;
  22. kPlayStatusPlay = 1;
  23. kPlayStatusPause = 2;
  24. kPlayStatusLoading = 3;
  25. kPlayStatusError = 4;
  26. }
  27. message Goodbye {
  28. required string reason = 1;
  29. }
  30. message State {
  31. optional string contextURI = 0x2;
  32. optional uint32 index = 0x3;
  33. optional uint32 position = 0x4;
  34. optional PlayStatus status = 0x5;
  35. optional uint64 timestamp = 0x7;
  36. optional string context_name = 0x8;
  37. optional uint32 duration = 0x9;
  38. optional uint32 data9 = 0xa;
  39. repeated uint64 data10 = 0xb;
  40. optional bool shuffle = 0xd;
  41. optional bool repeat = 0xe;
  42. optional string data12 = 0x14;
  43. optional uint32 data13 = 0x15;
  44. optional uint32 data14 = 0x18;
  45. optional uint32 data15 = 0x19;
  46. optional uint32 data16 = 0x1a;
  47. repeated QueuedTrack queued = 0x1b;
  48. message QueuedTrack {
  49. optional bytes gid = 0x1;
  50. optional string local_uri = 0x2;
  51. optional uint32 data1 = 0x3;
  52. }
  53. }
  54. message Frame {
  55. required uint32 version = 1;
  56. required string source = 2;
  57. required string version_string = 3;
  58. required uint32 msgid = 4;
  59. required uint32 type = 5;
  60. required DeviceInfo device = 0x7;
  61. //required Goodbye goodbye = 0xb;
  62. optional State state = 0xc;
  63. optional uint32 position = 0xd;
  64. optional uint32 volume = 0xe;
  65. optional uint64 timestamp = 0x11;
  66. optional string destination = 0x12;
  67. message DeviceInfo {
  68. optional string version = 0x1;
  69. required bool active = 0xa;
  70. required bool foreground = 0xb;
  71. required uint32 volume = 0xc;
  72. required string name = 0xd;
  73. optional uint32 data15 = 0xe;
  74. required uint64 activeTime = 0xf;
  75. repeated Data17 data17 = 0x11;
  76. message Data17 {
  77. required uint32 data0 = 0x1;
  78. optional uint32 data1 = 0x2;
  79. repeated string data2 = 0x3;
  80. }
  81. }
  82. }