Skip to content

Commit d3f0cc5

Browse files
committed
Merge branch 'feat_subscribe_id' into 'dev'
Feat subscribe See merge request server/openapi/openapi-cpp-sdk!60
2 parents 060fc5d + 8b33097 commit d3f0cc5

File tree

8 files changed

+106
-93
lines changed

8 files changed

+106
-93
lines changed

changlog.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
## 1.0.4 (2025-05-12)
2+
### Breaking
3+
- 长连接订阅请求由 bool 改为 unsigned int,表示订阅请求的 id
4+
5+
## 1.0.3 (2025-02-20)
6+
- properties 配置支持;
7+
- log配置优化;
8+
- kickout回调
9+
110
## 1.0.2 (2025-01-15)
211
### Fix
312
- 长连接DNS解析问题

demo/openapi_cpp_test/openapi_cpp_test.cpp

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -461,12 +461,15 @@ class TestPushClient {
461461
ucout << "Connected to push server" << std::endl;
462462
push_client->subscribe_position(utility::conversions::to_utf8string(push_client->get_client_config().account));
463463
push_client->subscribe_order(utility::conversions::to_utf8string(push_client->get_client_config().account));
464-
push_client->subscribe_asset(utility::conversions::to_utf8string(push_client->get_client_config().account));
464+
unsigned int asset_sub_id = push_client->subscribe_asset(utility::conversions::to_utf8string(push_client->get_client_config().account));
465+
ucout << "Subscribe asset result: " << asset_sub_id << std::endl;
465466
// push_client->query_subscribed_symbols();
466-
push_client->subscribe_quote(symbols);
467+
unsigned int res = push_client->subscribe_quote(symbols);
468+
ucout << "Subscribe quote result: " << res << std::endl;
467469
// push_client->subscribe_kline(symbols);
468470
// push_client->subscribe_quote_depth(symbols);
469-
push_client->subscribe_tick(symbols);
471+
unsigned int res1 = push_client->subscribe_tick(symbols);
472+
ucout << "Subscribe tick result: " << res1 << std::endl;
470473
}
471474

472475
void error_callback(const tigeropen::push::pb::Response& data) {
@@ -610,15 +613,14 @@ int main(int argc, char* argv[]) {
610613
//config.lang = U("en_US");
611614

612615
//Create a push client instance
613-
// auto push_client = IPushClient::create_push_client(config);
614-
//Run some push test cases
615-
// TestPushClient::test_push_client(push_client, config);
616+
auto push_client = IPushClient::create_push_client(config);
617+
TestPushClient::test_push_client(push_client, config);
616618

617619
/**
618620
* QuoteClient
619621
*/
620-
std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
621-
TestQuoteClient::test_quote(quote_client);
622+
// std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
623+
// TestQuoteClient::test_quote(quote_client);
622624

623625
/**
624626
* TradeClient

include/openapi_pb/pb_file/OrderStatusData.proto

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,5 @@ message OrderStatusData {
4646
double totalCashAmount = 39;
4747
double filledCashAmount = 40;
4848
double gst = 41;
49+
repeated string attrList = 42;
4950
}

include/tigerapi/push_client.h

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -46,54 +46,54 @@ namespace TIGER_API
4646
virtual void set_kickout_callback(const std::function<void(const tigeropen::push::pb::Response&)>& cb) = 0;
4747

4848
virtual void set_asset_changed_callback(const std::function<void(const tigeropen::push::pb::AssetData&)>& cb) = 0;
49-
virtual bool subscribe_asset(const std::string& account) = 0;
50-
virtual bool unsubscribe_asset(const std::string& account) = 0;
49+
virtual unsigned int subscribe_asset(const std::string& account) = 0;
50+
virtual unsigned int unsubscribe_asset(const std::string& account) = 0;
5151

5252
virtual void set_position_changed_callback(const std::function<void(const tigeropen::push::pb::PositionData&)>& cb) = 0;
53-
virtual bool subscribe_position(const std::string& account) = 0;
54-
virtual bool unsubscribe_position(const std::string& account) = 0;
53+
virtual unsigned int subscribe_position(const std::string& account) = 0;
54+
virtual unsigned int unsubscribe_position(const std::string& account) = 0;
5555

5656
virtual void set_order_changed_callback(const std::function<void(const tigeropen::push::pb::OrderStatusData&)>& cb) = 0;
57-
virtual bool subscribe_order(const std::string& account) = 0;
58-
virtual bool unsubscribe_order(const std::string& account) = 0;
57+
virtual unsigned int subscribe_order(const std::string& account) = 0;
58+
virtual unsigned int unsubscribe_order(const std::string& account) = 0;
5959

6060
virtual void set_transaction_changed_callback(const std::function<void(const tigeropen::push::pb::OrderTransactionData&)>& cb) = 0;
61-
virtual bool subscribe_transaction(const std::string& account) = 0;
62-
virtual bool unsubscribe_transaction(const std::string& account) = 0;
61+
virtual unsigned int subscribe_transaction(const std::string& account) = 0;
62+
virtual unsigned int unsubscribe_transaction(const std::string& account) = 0;
6363

6464
virtual void set_query_subscribed_symbols_changed_callback(const std::function<void(const tigeropen::push::pb::Response& query_subscribed_symbols_response)>& cb) = 0;
65-
virtual void query_subscribed_symbols() = 0;
65+
virtual unsigned int query_subscribed_symbols() = 0;
6666

6767
virtual void set_quote_changed_callback(const std::function<void(const tigeropen::push::pb::QuoteBasicData&)>& cb) = 0;
6868
virtual void set_quote_bbo_changed_callback(const std::function<void(const tigeropen::push::pb::QuoteBBOData&)>& cb) = 0;
69-
virtual bool subscribe_quote(const std::vector<std::string>& symbols) = 0;
70-
virtual bool subscribe_future_quote(const std::vector<std::string>& symbols) = 0;
71-
virtual bool subscribe_option_quote(const std::vector<std::string>& symbols) = 0;
72-
virtual bool unsubscribe_quote(const std::vector<std::string>& symbols) = 0;
69+
virtual unsigned int subscribe_quote(const std::vector<std::string>& symbols) = 0;
70+
virtual unsigned int subscribe_future_quote(const std::vector<std::string>& symbols) = 0;
71+
virtual unsigned int subscribe_option_quote(const std::vector<std::string>& symbols) = 0;
72+
virtual unsigned int unsubscribe_quote(const std::vector<std::string>& symbols) = 0;
7373

7474
virtual void set_quote_depth_changed_callback(const std::function<void(const tigeropen::push::pb::QuoteDepthData&)>& cb) = 0;
75-
virtual bool subscribe_quote_depth(const std::vector<std::string>& symbols) = 0;
76-
virtual bool unsubscribe_quote_depth(const std::vector<std::string>& symbols) = 0;
75+
virtual unsigned int subscribe_quote_depth(const std::vector<std::string>& symbols) = 0;
76+
virtual unsigned int unsubscribe_quote_depth(const std::vector<std::string>& symbols) = 0;
7777

7878
virtual void set_kline_changed_callback(const std::function<void(const tigeropen::push::pb::KlineData&)>& cb) = 0;
79-
virtual bool subscribe_kline(const std::vector<std::string>& symbols) = 0;
80-
virtual bool unsubscribe_kline(const std::vector<std::string>& symbols) = 0;
79+
virtual unsigned int subscribe_kline(const std::vector<std::string>& symbols) = 0;
80+
virtual unsigned int unsubscribe_kline(const std::vector<std::string>& symbols) = 0;
8181

8282
virtual void set_full_tick_changed_callback(const std::function<void(const tigeropen::push::pb::TickData&)>& cb) = 0;
8383
virtual void set_tick_changed_callback(const std::function<void(const TradeTick&)>& cb) = 0;
84-
virtual bool subscribe_tick(const std::vector<std::string>& symbols) = 0;
85-
virtual bool unsubscribe_tick(const std::vector<std::string>& symbols) = 0;
84+
virtual unsigned int subscribe_tick(const std::vector<std::string>& symbols) = 0;
85+
virtual unsigned int unsubscribe_tick(const std::vector<std::string>& symbols) = 0;
8686

87-
virtual bool subscribe_market(const std::string& market) = 0;
88-
virtual bool unsubscribe_market(const std::string& market) = 0;
87+
virtual unsigned int subscribe_market(const std::string& market) = 0;
88+
virtual unsigned int unsubscribe_market(const std::string& market) = 0;
8989

9090
virtual void set_stock_top_changed_callback(const std::function<void(const tigeropen::push::pb::StockTopData&)>& cb) = 0;
91-
virtual bool subscribe_stock_top(const std::string& market) = 0;
92-
virtual bool unsubscribe_stock_top(const std::string& market) = 0;
91+
virtual unsigned int subscribe_stock_top(const std::string& market) = 0;
92+
virtual unsigned int unsubscribe_stock_top(const std::string& market) = 0;
9393

9494
virtual void set_option_top_changed_callback(const std::function<void(const tigeropen::push::pb::OptionTopData&)>& cb) = 0;
95-
virtual bool subscribe_option_top(const std::string& market) = 0;
96-
virtual bool unsubscribe_option_top(const std::string& market) = 0;
95+
virtual unsigned int subscribe_option_top(const std::string& market) = 0;
96+
virtual unsigned int unsubscribe_option_top(const std::string& market) = 0;
9797

9898
};
9999
}

include/tigerapi/push_socket/push_client_impl.h

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -33,63 +33,63 @@ namespace TIGER_API
3333
virtual void set_kickout_callback(const std::function<void(const tigeropen::push::pb::Response&)>& cb) override;
3434

3535
virtual void set_asset_changed_callback(const std::function<void(const tigeropen::push::pb::AssetData&)>& cb) override;
36-
virtual bool subscribe_asset(const std::string& account) override;
37-
virtual bool unsubscribe_asset(const std::string& account) override;
36+
virtual unsigned int subscribe_asset(const std::string& account) override;
37+
virtual unsigned int unsubscribe_asset(const std::string& account) override;
3838

3939
virtual void set_position_changed_callback(const std::function<void(const tigeropen::push::pb::PositionData&)>& cb) override;
40-
virtual bool subscribe_position(const std::string& account) override;
41-
virtual bool unsubscribe_position(const std::string& account) override;
40+
virtual unsigned int subscribe_position(const std::string& account) override;
41+
virtual unsigned int unsubscribe_position(const std::string& account) override;
4242

4343
virtual void set_order_changed_callback(const std::function<void(const tigeropen::push::pb::OrderStatusData&)>& cb) override;
44-
virtual bool subscribe_order(const std::string& account) override;
45-
virtual bool unsubscribe_order(const std::string& account) override;
44+
virtual unsigned int subscribe_order(const std::string& account) override;
45+
virtual unsigned int unsubscribe_order(const std::string& account) override;
4646

4747
virtual void set_transaction_changed_callback(const std::function<void(const tigeropen::push::pb::OrderTransactionData&)>& cb) override;
48-
virtual bool subscribe_transaction(const std::string& account) override;
49-
virtual bool unsubscribe_transaction(const std::string& account) override;
48+
virtual unsigned int subscribe_transaction(const std::string& account) override;
49+
virtual unsigned int unsubscribe_transaction(const std::string& account) override;
5050

5151
virtual void set_query_subscribed_symbols_changed_callback(const std::function<void(const tigeropen::push::pb::Response& query_subscribed_symbols_response)>& cb) override;
52-
virtual void query_subscribed_symbols() override;
52+
virtual unsigned int query_subscribed_symbols() override;
5353
virtual void set_quote_changed_callback(const std::function<void(const tigeropen::push::pb::QuoteBasicData&)>& cb) override;
5454
virtual void set_quote_bbo_changed_callback(const std::function<void(const tigeropen::push::pb::QuoteBBOData&)>& cb) override;
55-
virtual bool subscribe_quote(const std::vector<std::string>& symbols) override;
56-
virtual bool subscribe_future_quote(const std::vector<std::string>& symbols) override;
57-
virtual bool subscribe_option_quote(const std::vector<std::string>& symbols) override;
58-
virtual bool unsubscribe_quote(const std::vector<std::string>& symbols) override;
55+
virtual unsigned int subscribe_quote(const std::vector<std::string>& symbols) override;
56+
virtual unsigned int subscribe_future_quote(const std::vector<std::string>& symbols) override;
57+
virtual unsigned int subscribe_option_quote(const std::vector<std::string>& symbols) override;
58+
virtual unsigned int unsubscribe_quote(const std::vector<std::string>& symbols) override;
5959

6060
virtual void set_quote_depth_changed_callback(const std::function<void(const tigeropen::push::pb::QuoteDepthData&)>& cb) override;
61-
virtual bool subscribe_quote_depth(const std::vector<std::string>& symbols) override;
62-
virtual bool unsubscribe_quote_depth(const std::vector<std::string>& symbols) override;
61+
virtual unsigned int subscribe_quote_depth(const std::vector<std::string>& symbols) override;
62+
virtual unsigned int unsubscribe_quote_depth(const std::vector<std::string>& symbols) override;
6363

6464
virtual void set_kline_changed_callback(const std::function<void(const tigeropen::push::pb::KlineData&)>& cb) override;
65-
virtual bool subscribe_kline(const std::vector<std::string>& symbols) override;
66-
virtual bool unsubscribe_kline(const std::vector<std::string>& symbols) override;
65+
virtual unsigned int subscribe_kline(const std::vector<std::string>& symbols) override;
66+
virtual unsigned int unsubscribe_kline(const std::vector<std::string>& symbols) override;
6767

6868
virtual void set_full_tick_changed_callback(const std::function<void(const tigeropen::push::pb::TickData&)>& cb) override;
6969
virtual void set_tick_changed_callback(const std::function<void(const TradeTick&)>& cb) override;
70-
virtual bool subscribe_tick(const std::vector<std::string>& symbols) override;
71-
virtual bool unsubscribe_tick(const std::vector<std::string>& symbols) override;
70+
virtual unsigned int subscribe_tick(const std::vector<std::string>& symbols) override;
71+
virtual unsigned int unsubscribe_tick(const std::vector<std::string>& symbols) override;
7272

73-
virtual bool subscribe_market(const std::string& market) override;
74-
virtual bool unsubscribe_market(const std::string& market) override;
73+
virtual unsigned int subscribe_market(const std::string& market) override;
74+
virtual unsigned int unsubscribe_market(const std::string& market) override;
7575

7676
virtual void set_stock_top_changed_callback(const std::function<void(const tigeropen::push::pb::StockTopData&)>& cb) override;
77-
virtual bool subscribe_stock_top(const std::string& market) override;
78-
virtual bool unsubscribe_stock_top(const std::string& market) override;
77+
virtual unsigned int subscribe_stock_top(const std::string& market) override;
78+
virtual unsigned int unsubscribe_stock_top(const std::string& market) override;
7979

8080
virtual void set_option_top_changed_callback(const std::function<void(const tigeropen::push::pb::OptionTopData&)>& cb) override;
81-
virtual bool subscribe_option_top(const std::string& market) override;
82-
virtual bool unsubscribe_option_top(const std::string& market) override;
81+
virtual unsigned int subscribe_option_top(const std::string& market) override;
82+
virtual unsigned int unsubscribe_option_top(const std::string& market) override;
8383

8484
virtual const ClientConfig& get_client_config() const override;
8585

8686
private:
87-
bool send_frame(const tigeropen::push::pb::Request& request);
87+
unsigned int send_frame(const tigeropen::push::pb::Request& request);
8888
void do_write(const std::string& frame);
8989
void do_disconnect();
9090
void on_message(const std::shared_ptr<tigeropen::push::pb::Response>& response_pb_object);
9191
bool send_trade_request(tigeropen::push::pb::SocketCommon_Command command, tigeropen::push::pb::SocketCommon_DataType datatype, const std::string& account);
92-
bool send_quote_request(tigeropen::push::pb::SocketCommon_Command command, tigeropen::push::pb::SocketCommon_DataType datatype, std::vector<std::string> symbols, const std::string& market);
92+
unsigned int send_quote_request(tigeropen::push::pb::SocketCommon_Command command, tigeropen::push::pb::SocketCommon_DataType datatype, std::vector<std::string> symbols, const std::string& market);
9393
bool send_quote_request(tigeropen::push::pb::SocketCommon_Command command, tigeropen::push::pb::SocketCommon_DataType datatype, std::vector<std::string> symbols);
9494
std::shared_ptr<tigeropen::push::pb::QuoteBasicData> convert_to_basic_data(const tigeropen::push::pb::QuoteData& quote_data);
9595
std::shared_ptr<tigeropen::push::pb::QuoteBBOData> convert_to_bbo_data(const tigeropen::push::pb::QuoteData& quote_data);

include/tigerapi/version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55
#ifndef TIGERAPI_VERSION_H
66
#define TIGERAPI_VERSION_H
77

8-
#define PROJECT_VERSION "1.0.3"
8+
#define PROJECT_VERSION "1.0.4"
99

1010
#endif //TIGERAPI_VERSION_H

src/logger.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ INITIALIZE_EASYLOGGINGPP
55
void TIGER_API::LoggerConfig::set_log_level(el::Level level)
66
{
77
el::Loggers::setLoggingLevel(level);
8+
el::Loggers::setLoggingLevel(level);el::Loggers::addFlag(el::LoggingFlag::HierarchicalLogging);
89
}

0 commit comments

Comments
 (0)