1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use failure::Error;
use futures::Future;
use client::Binance;
use error::Result;
use model::{Success, UserDataStream};
static USER_DATA_STREAM: &'static str = "/api/v1/userDataStream";
impl Binance {
pub fn user_stream_start(&self) -> Result<impl Future<Item = UserDataStream, Error = Error>> {
let user_data_stream = self.transport.post::<_, ()>(USER_DATA_STREAM, None)?;
Ok(user_data_stream)
}
pub fn user_stream_keep_alive(&self, listen_key: &str) -> Result<impl Future<Item = Success, Error = Error>> {
let success = self.transport.put(USER_DATA_STREAM, Some(vec![("listen_key", listen_key.to_string())]))?;
Ok(success)
}
pub fn user_stream_close(&self, listen_key: &str) -> Result<impl Future<Item = Success, Error = Error>> {
let success = self.transport.delete(USER_DATA_STREAM, Some(vec![("listen_key", listen_key.to_string())]))?;
Ok(success)
}
}