Browse Source

Add RoomTickersResponse.

wip
Titouan Rigoudy 9 years ago
parent
commit
a5654eddc9
2 changed files with 34 additions and 0 deletions
  1. +1
    -0
      src/proto/server/constants.rs
  2. +33
    -0
      src/proto/server/response.rs

+ 1
- 0
src/proto/server/constants.rs View File

@ -13,3 +13,4 @@ pub const CODE_PRIVILEGED_USERS: u32 = 69;
pub const CODE_PARENT_MIN_SPEED: u32 = 83;
pub const CODE_PARENT_SPEED_RATIO: u32 = 84;
pub const CODE_WISHLIST_INTERVAL: u32 = 104;
pub const CODE_ROOM_TICKERS: u32 = 113;

+ 33
- 0
src/proto/server/response.rs View File

@ -28,6 +28,7 @@ pub enum ServerResponse {
RoomLeaveResponse(RoomLeaveResponse),
RoomListResponse(RoomListResponse),
RoomMessageResponse(RoomMessageResponse),
RoomTickersResponse(RoomTickersResponse),
RoomUserJoinedResponse(RoomUserJoinedResponse),
RoomUserLeftResponse(RoomUserLeftResponse),
UserStatusResponse(UserStatusResponse),
@ -76,6 +77,9 @@ impl FromPacket for ServerResponse {
CODE_ROOM_MESSAGE =>
try_from_packet!(RoomMessageResponse, packet),
CODE_ROOM_TICKERS =>
try_from_packet!(RoomTickersResponse, packet),
CODE_ROOM_USER_JOINED =>
try_from_packet!(RoomUserJoinedResponse, packet),
@ -492,6 +496,35 @@ impl FromPacket for RoomMessageResponse {
}
}
/*==============*
* ROOM MESSAGE *
*==============*/
#[derive(Debug)]
pub struct RoomTickersResponse {
pub room_name: String,
pub tickers: Vec<(String, String)>
}
impl FromPacket for RoomTickersResponse {
fn from_packet(packet: &mut Packet) -> result::Result<Self> {
let room_name = try!(packet.read_str());
let num_tickers = try!(packet.read_uint()) as usize;
let mut tickers = Vec::new();
for _ in 0..num_tickers {
let user_name = try!(packet.read_str());
let message = try!(packet.read_str());
tickers.push((user_name, message))
}
Ok(RoomTickersResponse {
room_name: room_name,
tickers: tickers,
})
}
}
/*==================*
* ROOM USER JOINED *
*==================*/


Loading…
Cancel
Save