@quotemedia.com/streamer 2.21.0 → 2.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -8
- package/enduser-example.html +20 -2
- package/enterprise-token-example.html +20 -2
- package/package.json +1 -1
- package/{qmci-streamer-2.21.0.js → qmci-streamer-2.24.0.js} +781 -8
- package/{qmci-streamer-2.21.0.min.js → qmci-streamer-2.24.0.min.js} +14 -14
- package/subscription-example.html +252 -0
- package/wmid-example.html +20 -2
|
@@ -452,6 +452,10 @@ var Stream = function () {
|
|
|
452
452
|
this.pendingUnsubscriptions = {};
|
|
453
453
|
this.pendingExchangeSubscriptions = {};
|
|
454
454
|
this.pendingExchangeUnsubscriptions = {};
|
|
455
|
+
this.pendingNewsSubscriptions = {};
|
|
456
|
+
this.pendingNewsUnsubscriptions = {};
|
|
457
|
+
this.pendingAlertSubscription = {};
|
|
458
|
+
this.pendingTradeSubscription = {};
|
|
455
459
|
|
|
456
460
|
this.on("error", function (err) {
|
|
457
461
|
_this.log.warn(err);
|
|
@@ -576,6 +580,110 @@ var Stream = function () {
|
|
|
576
580
|
});
|
|
577
581
|
};
|
|
578
582
|
|
|
583
|
+
Stream.prototype.subscribeNews = function subscribeNews(newsFilters, optsOrCallback, callbackOrNothing) {
|
|
584
|
+
|
|
585
|
+
var opts = optsOrCallback && typeof optsOrCallback !== "function" ? optsOrCallback : null;
|
|
586
|
+
var callback = callbackOrNothing ? callbackOrNothing : optsOrCallback && typeof optsOrCallback === "function" ? optsOrCallback : null;
|
|
587
|
+
|
|
588
|
+
if (this.isClosed()) {
|
|
589
|
+
var event = events.error("Stream is disconnected", {
|
|
590
|
+
code: -1,
|
|
591
|
+
reason: "Already disconnected"
|
|
592
|
+
});
|
|
593
|
+
this.events.fire("error", event);
|
|
594
|
+
if (callback) {
|
|
595
|
+
callback(event);
|
|
596
|
+
}
|
|
597
|
+
return;
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
var newsSub = {
|
|
601
|
+
callback: callback,
|
|
602
|
+
mimetype: this.format,
|
|
603
|
+
id: [],
|
|
604
|
+
result: {
|
|
605
|
+
newsFilters: [],
|
|
606
|
+
rejectedNewsFilters: [],
|
|
607
|
+
unentitledNewsFilters: []
|
|
608
|
+
}
|
|
609
|
+
};
|
|
610
|
+
//check for empty filters
|
|
611
|
+
if (newsFilters.length === 0) {
|
|
612
|
+
callback(null, newsSub.result);
|
|
613
|
+
}
|
|
614
|
+
var request = this.buildNewsSubscribeRequest(newsFilters, newsSub, _streamerApi.messages.control.Action.SUBSCRIBE, opts);
|
|
615
|
+
|
|
616
|
+
var id = this.requestid.next();
|
|
617
|
+
this.pendingNewsSubscriptions[id] = newsSub;
|
|
618
|
+
|
|
619
|
+
request.id = id;
|
|
620
|
+
|
|
621
|
+
this.send(request);
|
|
622
|
+
};
|
|
623
|
+
|
|
624
|
+
Stream.prototype.subUnsubAlerts = function subUnsubAlerts(operation, optsOrCallback, callbackOrNothing) {
|
|
625
|
+
|
|
626
|
+
var opts = optsOrCallback && typeof optsOrCallback !== "function" ? optsOrCallback : null;
|
|
627
|
+
var callback = callbackOrNothing ? callbackOrNothing : optsOrCallback && typeof optsOrCallback === "function" ? optsOrCallback : null;
|
|
628
|
+
|
|
629
|
+
if (this.isClosed()) {
|
|
630
|
+
var event = events.error("Stream is disconnected", {
|
|
631
|
+
code: -1,
|
|
632
|
+
reason: "Already disconnected"
|
|
633
|
+
});
|
|
634
|
+
this.events.fire("error", event);
|
|
635
|
+
return;
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
var subscription = {
|
|
639
|
+
id: [],
|
|
640
|
+
mimetype: this.format,
|
|
641
|
+
callback: callback,
|
|
642
|
+
result: {
|
|
643
|
+
operation: ""
|
|
644
|
+
}
|
|
645
|
+
};
|
|
646
|
+
|
|
647
|
+
var request = this.buildAlertsSubUnsubRequest(operation, subscription);
|
|
648
|
+
var id = this.requestid.next();
|
|
649
|
+
subscription.id.push(id);
|
|
650
|
+
this.pendingAlertSubscription[id] = subscription;
|
|
651
|
+
request.id = id;
|
|
652
|
+
|
|
653
|
+
this.send(request);
|
|
654
|
+
};
|
|
655
|
+
|
|
656
|
+
Stream.prototype.subscribeTrade = function subscribeTrade(operation, optsOrCallback, callbackOrNothing) {
|
|
657
|
+
var opts = optsOrCallback && typeof optsOrCallback !== "function" ? optsOrCallback : null;
|
|
658
|
+
var callback = callbackOrNothing ? callbackOrNothing : optsOrCallback && typeof optsOrCallback === "function" ? optsOrCallback : null;
|
|
659
|
+
|
|
660
|
+
if (this.isClosed()) {
|
|
661
|
+
var event = events.error("Stream is disconnected", {
|
|
662
|
+
code: -1,
|
|
663
|
+
reason: "Already disconnected"
|
|
664
|
+
});
|
|
665
|
+
this.events.fire("error", event);
|
|
666
|
+
return;
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
var tradeSub = {
|
|
670
|
+
id: [],
|
|
671
|
+
mimetype: this.format,
|
|
672
|
+
callback: callback,
|
|
673
|
+
result: {
|
|
674
|
+
operation: ""
|
|
675
|
+
}
|
|
676
|
+
};
|
|
677
|
+
|
|
678
|
+
var request = this.buildTradeSubscribeRequest(operation, tradeSub);
|
|
679
|
+
var id = this.requestid.next();
|
|
680
|
+
tradeSub.id.push(id);
|
|
681
|
+
this.pendingTradeSubscription[id] = tradeSub;
|
|
682
|
+
request.id = id;
|
|
683
|
+
|
|
684
|
+
this.send(request);
|
|
685
|
+
};
|
|
686
|
+
|
|
579
687
|
Stream.prototype.getSessionStats = function getSessionStats() {
|
|
580
688
|
if (this.isClosed()) {
|
|
581
689
|
var event = events.error("Stream is disconnected", {
|
|
@@ -589,6 +697,54 @@ var Stream = function () {
|
|
|
589
697
|
this.send(msg);
|
|
590
698
|
};
|
|
591
699
|
|
|
700
|
+
Stream.prototype.cmdFilterRefreshNews = function cmdFilterRefreshNews(callbackOrNothing) {
|
|
701
|
+
var callback = callbackOrNothing ? callbackOrNothing : optsOrCallback && typeof optsOrCallback === "function" ? optsOrCallback : null;
|
|
702
|
+
|
|
703
|
+
if (this.isClosed()) {
|
|
704
|
+
var event = events.error("Stream is disconnected", {
|
|
705
|
+
code: -1,
|
|
706
|
+
reason: "Already disconnected"
|
|
707
|
+
});
|
|
708
|
+
this.events.fire("error", event);
|
|
709
|
+
if (callback) {
|
|
710
|
+
callback(event);
|
|
711
|
+
}
|
|
712
|
+
return;
|
|
713
|
+
}
|
|
714
|
+
|
|
715
|
+
var newsCmdFilterRefresh = {
|
|
716
|
+
callback: callback,
|
|
717
|
+
mimetype: this.format
|
|
718
|
+
};
|
|
719
|
+
|
|
720
|
+
var request = this.buildNewsCommandRequest(newsCmdFilterRefresh, 'NEWSCMDFILTERREFRESH');
|
|
721
|
+
this.send(request);
|
|
722
|
+
};
|
|
723
|
+
|
|
724
|
+
Stream.prototype.cmdFilterNews = function cmdFilterNews(callbackOrNothing) {
|
|
725
|
+
var callback = callbackOrNothing ? callbackOrNothing : optsOrCallback && typeof optsOrCallback === "function" ? optsOrCallback : null;
|
|
726
|
+
|
|
727
|
+
if (this.isClosed()) {
|
|
728
|
+
var event = events.error("Stream is disconnected", {
|
|
729
|
+
code: -1,
|
|
730
|
+
reason: "Already disconnected"
|
|
731
|
+
});
|
|
732
|
+
this.events.fire("error", event);
|
|
733
|
+
if (callback) {
|
|
734
|
+
callback(event);
|
|
735
|
+
}
|
|
736
|
+
return;
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
var newsCmdFilter = {
|
|
740
|
+
callback: callback,
|
|
741
|
+
mimetype: this.format
|
|
742
|
+
};
|
|
743
|
+
|
|
744
|
+
var request = this.buildNewsCommandRequest(newsCmdFilter, 'NEWSCMDFILTER');
|
|
745
|
+
this.send(request);
|
|
746
|
+
};
|
|
747
|
+
|
|
592
748
|
Stream.prototype.unsubscribe = function unsubscribe(symbols, types, optsOrCallback, callbackOrNothing) {
|
|
593
749
|
var _this4 = this;
|
|
594
750
|
|
|
@@ -690,6 +846,49 @@ var Stream = function () {
|
|
|
690
846
|
});
|
|
691
847
|
};
|
|
692
848
|
|
|
849
|
+
Stream.prototype.unsubscribeNews = function unsubscribeNews(newsFilters, optsOrCallback, callbackOrNothing) {
|
|
850
|
+
newsFilters = Array.isArray(newsFilters) ? newsFilters : [newsFilters];
|
|
851
|
+
|
|
852
|
+
var opts = optsOrCallback && typeof optsOrCallback !== "function" ? optsOrCallback : null;
|
|
853
|
+
var callback = callbackOrNothing ? callbackOrNothing : optsOrCallback && typeof optsOrCallback === "function" ? optsOrCallback : null;
|
|
854
|
+
|
|
855
|
+
if (this.isClosed()) {
|
|
856
|
+
var event = events.error("Stream is disconnected", {
|
|
857
|
+
code: -1,
|
|
858
|
+
reason: "Already disconnected"
|
|
859
|
+
});
|
|
860
|
+
this.events.fire("error", event);
|
|
861
|
+
if (callback) {
|
|
862
|
+
callback(event);
|
|
863
|
+
}
|
|
864
|
+
return;
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
var unsubscription = {
|
|
868
|
+
callback: callback,
|
|
869
|
+
mimetype: this.format,
|
|
870
|
+
id: [],
|
|
871
|
+
result: {
|
|
872
|
+
unsubscribed: []
|
|
873
|
+
}
|
|
874
|
+
};
|
|
875
|
+
|
|
876
|
+
if (newsFilters.length === 0) {
|
|
877
|
+
if (callback) {
|
|
878
|
+
callback(null, unsubscription.result);
|
|
879
|
+
}
|
|
880
|
+
}
|
|
881
|
+
|
|
882
|
+
var request = this.buildNewsSubscribeRequest(newsFilters, unsubscription, _streamerApi.messages.control.Action.UNSUBSCRIBE, opts);
|
|
883
|
+
|
|
884
|
+
var id = this.requestid.next();
|
|
885
|
+
unsubscription.id.push(id);
|
|
886
|
+
this.pendingNewsUnsubscriptions[id] = unsubscription;
|
|
887
|
+
request.id = id;
|
|
888
|
+
|
|
889
|
+
this.send(request);
|
|
890
|
+
};
|
|
891
|
+
|
|
693
892
|
Stream.prototype._handlejsonmsg = function _handlejsonmsg(msg) {
|
|
694
893
|
if ((0, _streamerUtils.iscontrolmessage)(msg)) {
|
|
695
894
|
this.handlectrlmsg(msg);
|
|
@@ -752,6 +951,38 @@ var Stream = function () {
|
|
|
752
951
|
return msg;
|
|
753
952
|
};
|
|
754
953
|
|
|
954
|
+
Stream.prototype.buildNewsSubscribeRequest = function buildNewsSubscribeRequest(newsFilters, sub, action, opts) {
|
|
955
|
+
var msg = new _streamerApi.messages.control.NewsSubscribeMessage();
|
|
956
|
+
msg.action = action;
|
|
957
|
+
msg.newsFilters = newsFilters;
|
|
958
|
+
msg.mimetype = sub.mimetype;
|
|
959
|
+
if (opts && opts.skipHeavyInitialLoad) {
|
|
960
|
+
msg.skipHeavyInitialLoad = opts.skipHeavyInitialLoad === '0' ? false : true;
|
|
961
|
+
}
|
|
962
|
+
return msg;
|
|
963
|
+
};
|
|
964
|
+
|
|
965
|
+
Stream.prototype.buildAlertsSubUnsubRequest = function buildAlertsSubUnsubRequest(opr, subscription) {
|
|
966
|
+
var msg = new _streamerApi.messages.control.AlertsSubUnsubMessage();
|
|
967
|
+
msg.operation = opr;
|
|
968
|
+
msg.mimetype = subscription.mimetype;
|
|
969
|
+
return msg;
|
|
970
|
+
};
|
|
971
|
+
|
|
972
|
+
Stream.prototype.buildTradeSubscribeRequest = function buildTradeSubscribeRequest(operation, sub) {
|
|
973
|
+
var msg = new _streamerApi.messages.control.TradeSubscribeMessage();
|
|
974
|
+
msg.operation = operation;
|
|
975
|
+
msg.mimetype = sub.mimetype;
|
|
976
|
+
return msg;
|
|
977
|
+
};
|
|
978
|
+
|
|
979
|
+
Stream.prototype.buildNewsCommandRequest = function buildNewsCommandRequest(sub, newsAction) {
|
|
980
|
+
var msg = new _streamerApi.messages.control.NewsCommandMessage();
|
|
981
|
+
msg.newsAction = newsAction;
|
|
982
|
+
msg.mimetype = sub.mimetype;
|
|
983
|
+
return msg;
|
|
984
|
+
};
|
|
985
|
+
|
|
755
986
|
Stream.prototype._getUpdatedNumberOfEntitlements = function _getUpdatedNumberOfEntitlements(numberOfSubscriptionTypes, currentApproximateNumberOfEntitlements, symbol, isSubscribeToOrderbook) {
|
|
756
987
|
var result = currentApproximateNumberOfEntitlements;
|
|
757
988
|
if (isSubscribeToOrderbook && symbol.endsWith(CONSOLIDATED_SYMBOL_SUFFIX)) {
|
|
@@ -775,12 +1006,30 @@ var Stream = function () {
|
|
|
775
1006
|
case _streamerApi.messages.MessageTypeNames.ctrl.EXCHANGE_RESPONSE:
|
|
776
1007
|
this.onExchangeSubscribeResponse(msg);
|
|
777
1008
|
break;
|
|
1009
|
+
case _streamerApi.messages.MessageTypeNames.ctrl.NEWS_SUBSCRIBE_RESPONSE:
|
|
1010
|
+
this.onNewsSubscribeResponse(msg);
|
|
1011
|
+
break;
|
|
1012
|
+
case _streamerApi.messages.MessageTypeNames.ctrl.ALERTS_SUBUNSUB_RESPONSE:
|
|
1013
|
+
this.onAlertsSubUnsubResponse(msg);
|
|
1014
|
+
break;
|
|
1015
|
+
case _streamerApi.messages.MessageTypeNames.ctrl.TRADE_SUBSCRIBE_RESPONSE:
|
|
1016
|
+
this.onTradeSubscribeResponse(msg);
|
|
1017
|
+
break;
|
|
778
1018
|
case _streamerApi.messages.MessageTypeNames.ctrl.UNSUBSCRIBE_RESPONSE:
|
|
779
1019
|
this.onUnsubscribeResponse(msg);
|
|
780
1020
|
break;
|
|
781
1021
|
case _streamerApi.messages.MessageTypeNames.ctrl.EXCHANGE_UNSUBSCRIBE_RESPONSE:
|
|
782
1022
|
this.onExchangeUnsubscribeResponse(msg);
|
|
783
1023
|
break;
|
|
1024
|
+
case _streamerApi.messages.MessageTypeNames.ctrl.NEWS_UNSUBSCRIBE_RESPONSE:
|
|
1025
|
+
this.onNewsUnsubscribeResponse(msg);
|
|
1026
|
+
break;
|
|
1027
|
+
case _streamerApi.messages.MessageTypeNames.ctrl.NEWS_CMD_FILTER_REFRESH_RESPONSE:
|
|
1028
|
+
this.onNewsCmdFilterRefreshResponse(msg);
|
|
1029
|
+
break;
|
|
1030
|
+
case _streamerApi.messages.MessageTypeNames.ctrl.NEWS_CMD_FILTER_RESPONSE:
|
|
1031
|
+
this.onNewsCmdFilterResponse(msg);
|
|
1032
|
+
break;
|
|
784
1033
|
case _streamerApi.messages.MessageTypeNames.ctrl.CONNECT_RESPONSE:
|
|
785
1034
|
this.onConnectResponse(msg);
|
|
786
1035
|
break;
|
|
@@ -930,6 +1179,236 @@ var Stream = function () {
|
|
|
930
1179
|
}
|
|
931
1180
|
};
|
|
932
1181
|
|
|
1182
|
+
Stream.prototype.onNewsSubscribeResponse = function onNewsSubscribeResponse(msg) {
|
|
1183
|
+
var newsSub = this.pendingNewsSubscriptions[msg.__id];
|
|
1184
|
+
var callback = newsSub.callback;
|
|
1185
|
+
|
|
1186
|
+
(0, _utils.removeFromArray)(newsSub.id, msg.__id);
|
|
1187
|
+
delete this.pendingNewsSubscriptions[msg.__id];
|
|
1188
|
+
|
|
1189
|
+
var result = newsSub.result;
|
|
1190
|
+
|
|
1191
|
+
console.log(msg);
|
|
1192
|
+
if (msg.code != 200) {
|
|
1193
|
+
var event = events.error("Error subscribing to news", {
|
|
1194
|
+
code: msg.code,
|
|
1195
|
+
reason: msg.reason
|
|
1196
|
+
});
|
|
1197
|
+
this.events.fire("error", event);
|
|
1198
|
+
if (callback) {
|
|
1199
|
+
newsSub.callback(event);
|
|
1200
|
+
}
|
|
1201
|
+
return;
|
|
1202
|
+
}
|
|
1203
|
+
if (msg.newsFilters) {
|
|
1204
|
+
for (var _iterator4 = msg.newsFilters, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) {
|
|
1205
|
+
var _ref4;
|
|
1206
|
+
|
|
1207
|
+
if (_isArray4) {
|
|
1208
|
+
if (_i4 >= _iterator4.length) break;
|
|
1209
|
+
_ref4 = _iterator4[_i4++];
|
|
1210
|
+
} else {
|
|
1211
|
+
_i4 = _iterator4.next();
|
|
1212
|
+
if (_i4.done) break;
|
|
1213
|
+
_ref4 = _i4.value;
|
|
1214
|
+
}
|
|
1215
|
+
|
|
1216
|
+
var newsFilter = _ref4;
|
|
1217
|
+
|
|
1218
|
+
result.newsFilters.push(newsFilter);
|
|
1219
|
+
}
|
|
1220
|
+
}
|
|
1221
|
+
if (msg.rejectedNewsFilters) {
|
|
1222
|
+
for (var _iterator5 = msg.rejectedNewsFilters, _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) {
|
|
1223
|
+
var _ref5;
|
|
1224
|
+
|
|
1225
|
+
if (_isArray5) {
|
|
1226
|
+
if (_i5 >= _iterator5.length) break;
|
|
1227
|
+
_ref5 = _iterator5[_i5++];
|
|
1228
|
+
} else {
|
|
1229
|
+
_i5 = _iterator5.next();
|
|
1230
|
+
if (_i5.done) break;
|
|
1231
|
+
_ref5 = _i5.value;
|
|
1232
|
+
}
|
|
1233
|
+
|
|
1234
|
+
var rejectedFilter = _ref5;
|
|
1235
|
+
|
|
1236
|
+
result.rejectedNewsFilters.push(rejectedFilter);
|
|
1237
|
+
}
|
|
1238
|
+
}
|
|
1239
|
+
if (msg.unentitledNewsFilters) {
|
|
1240
|
+
for (var _iterator6 = msg.unentitledNewsFilters, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) {
|
|
1241
|
+
var _ref6;
|
|
1242
|
+
|
|
1243
|
+
if (_isArray6) {
|
|
1244
|
+
if (_i6 >= _iterator6.length) break;
|
|
1245
|
+
_ref6 = _iterator6[_i6++];
|
|
1246
|
+
} else {
|
|
1247
|
+
_i6 = _iterator6.next();
|
|
1248
|
+
if (_i6.done) break;
|
|
1249
|
+
_ref6 = _i6.value;
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1252
|
+
var unentitledFilter = _ref6;
|
|
1253
|
+
|
|
1254
|
+
result.unentitledNewsFilters.push(unentitledFilter);
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
|
|
1258
|
+
if (newsSub.id.length === 0) {
|
|
1259
|
+
if (callback) {
|
|
1260
|
+
callback(null, newsSub.result);
|
|
1261
|
+
}
|
|
1262
|
+
}
|
|
1263
|
+
};
|
|
1264
|
+
|
|
1265
|
+
Stream.prototype.onAlertsSubUnsubResponse = function onAlertsSubUnsubResponse(msg) {
|
|
1266
|
+
var alertsSub = this.pendingAlertSubscription[msg.__id];
|
|
1267
|
+
var callback = alertsSub.callback;
|
|
1268
|
+
|
|
1269
|
+
(0, _utils.removeFromArray)(alertsSub.id, msg.__id);
|
|
1270
|
+
delete this.pendingAlertSubscription[msg.__id];
|
|
1271
|
+
|
|
1272
|
+
console.log(msg);
|
|
1273
|
+
if (msg.code != 200 && !alertsSub.failed) {
|
|
1274
|
+
alertsSub.failed = true;
|
|
1275
|
+
var event = events.error("Error subscribing", {
|
|
1276
|
+
code: msg.code,
|
|
1277
|
+
reason: msg.reason
|
|
1278
|
+
});
|
|
1279
|
+
this.events.fire("error", event);
|
|
1280
|
+
if (callback) {
|
|
1281
|
+
alertsSub.callback(event);
|
|
1282
|
+
}
|
|
1283
|
+
return;
|
|
1284
|
+
}
|
|
1285
|
+
|
|
1286
|
+
var result = alertsSub.result;
|
|
1287
|
+
|
|
1288
|
+
if (msg.operation) {
|
|
1289
|
+
this.log.debug('Alerts ' + msg.operation);
|
|
1290
|
+
result.operation = msg.operation;
|
|
1291
|
+
}
|
|
1292
|
+
|
|
1293
|
+
if (alertsSub.id.length === 0) {
|
|
1294
|
+
if (callback) {
|
|
1295
|
+
callback(null, alertsSub.result);
|
|
1296
|
+
}
|
|
1297
|
+
}
|
|
1298
|
+
};
|
|
1299
|
+
|
|
1300
|
+
Stream.prototype.onTradeSubscribeResponse = function onTradeSubscribeResponse(msg) {
|
|
1301
|
+
var tradeSub = this.pendingTradeSubscription[msg.__id];
|
|
1302
|
+
var callback = tradeSub.callback;
|
|
1303
|
+
|
|
1304
|
+
(0, _utils.removeFromArray)(tradeSub.id, msg.__id);
|
|
1305
|
+
delete this.pendingTradeSubscription[msg.__id];
|
|
1306
|
+
|
|
1307
|
+
console.log(msg);
|
|
1308
|
+
if (msg.code != 200 && !tradeSub.failed) {
|
|
1309
|
+
tradeSub.failed = true;
|
|
1310
|
+
var event = events.error("Error subscribing", {
|
|
1311
|
+
code: msg.code,
|
|
1312
|
+
reason: msg.reason
|
|
1313
|
+
});
|
|
1314
|
+
this.events.fire("error", event);
|
|
1315
|
+
if (callback) {
|
|
1316
|
+
tradeSub.callback(event);
|
|
1317
|
+
}
|
|
1318
|
+
return;
|
|
1319
|
+
}
|
|
1320
|
+
|
|
1321
|
+
var result = tradeSub.result;
|
|
1322
|
+
|
|
1323
|
+
if (msg.operation) {
|
|
1324
|
+
this.log.debug('Trade ' + msg.operation);
|
|
1325
|
+
result.operation = msg.operation;
|
|
1326
|
+
}
|
|
1327
|
+
|
|
1328
|
+
if (tradeSub.id.length === 0) {
|
|
1329
|
+
if (callback) {
|
|
1330
|
+
callback(null, tradeSub.result);
|
|
1331
|
+
}
|
|
1332
|
+
}
|
|
1333
|
+
};
|
|
1334
|
+
|
|
1335
|
+
Stream.prototype.onNewsUnsubscribeResponse = function onNewsUnsubscribeResponse(msg) {
|
|
1336
|
+
var newsUnsub = this.pendingNewsUnsubscriptions[msg.__id];
|
|
1337
|
+
var callback = newsUnsub.callback;
|
|
1338
|
+
|
|
1339
|
+
(0, _utils.removeFromArray)(newsUnsub.id, msg.__id);
|
|
1340
|
+
delete this.pendingNewsUnsubscriptions[msg.__id];
|
|
1341
|
+
|
|
1342
|
+
console.log("msg", msg);
|
|
1343
|
+
var result = newsUnsub.result;
|
|
1344
|
+
|
|
1345
|
+
if (msg.code != 200 && !newsUnsub.failed) {
|
|
1346
|
+
newsUnsub.failed = true;
|
|
1347
|
+
var event = events.error("Error unsubscribing to news", {
|
|
1348
|
+
code: msg.code,
|
|
1349
|
+
reason: msg.reason
|
|
1350
|
+
});
|
|
1351
|
+
this.events.fire("error", event);
|
|
1352
|
+
if (callback) {
|
|
1353
|
+
newsUnsub.callback(event);
|
|
1354
|
+
}
|
|
1355
|
+
return;
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1358
|
+
if (msg.newsFilters) {
|
|
1359
|
+
for (var _iterator7 = msg.newsFilters, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) {
|
|
1360
|
+
var _ref7;
|
|
1361
|
+
|
|
1362
|
+
if (_isArray7) {
|
|
1363
|
+
if (_i7 >= _iterator7.length) break;
|
|
1364
|
+
_ref7 = _iterator7[_i7++];
|
|
1365
|
+
} else {
|
|
1366
|
+
_i7 = _iterator7.next();
|
|
1367
|
+
if (_i7.done) break;
|
|
1368
|
+
_ref7 = _i7.value;
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
var newsFilter = _ref7;
|
|
1372
|
+
|
|
1373
|
+
result.unsubscribed.push(newsFilter);
|
|
1374
|
+
}
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1377
|
+
if (newsUnsub.id.length === 0) {
|
|
1378
|
+
if (callback) {
|
|
1379
|
+
callback(null, newsUnsub.result);
|
|
1380
|
+
}
|
|
1381
|
+
}
|
|
1382
|
+
};
|
|
1383
|
+
|
|
1384
|
+
Stream.prototype.onNewsCmdFilterRefreshResponse = function onNewsCmdFilterRefreshResponse(msg) {
|
|
1385
|
+
console.log("msg", msg);
|
|
1386
|
+
if (msg.code != 200) {
|
|
1387
|
+
var event = events.error("Error Refreshing News Filters", {
|
|
1388
|
+
code: msg.code,
|
|
1389
|
+
reason: msg.reason
|
|
1390
|
+
});
|
|
1391
|
+
this.events.fire("error", event);
|
|
1392
|
+
return;
|
|
1393
|
+
}
|
|
1394
|
+
|
|
1395
|
+
this.events.fire("msg", msg);
|
|
1396
|
+
};
|
|
1397
|
+
|
|
1398
|
+
Stream.prototype.onNewsCmdFilterResponse = function onNewsCmdFilterResponse(msg) {
|
|
1399
|
+
console.log("msg", msg);
|
|
1400
|
+
if (msg.code != 200) {
|
|
1401
|
+
var event = events.error("Error Getting News Filters Status", {
|
|
1402
|
+
code: msg.code,
|
|
1403
|
+
reason: msg.reason
|
|
1404
|
+
});
|
|
1405
|
+
this.events.fire("error", event);
|
|
1406
|
+
return;
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
this.events.fire("filter status", msg);
|
|
1410
|
+
};
|
|
1411
|
+
|
|
933
1412
|
Stream.prototype.onUnsubscribeResponse = function onUnsubscribeResponse(msg) {
|
|
934
1413
|
var unsubscription = this.pendingUnsubscriptions[msg.__id];
|
|
935
1414
|
var callback = unsubscription.callback;
|
|
@@ -1574,7 +2053,7 @@ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol
|
|
|
1574
2053
|
attachHeadersAsQueryString: true,
|
|
1575
2054
|
executeCallbackBeforeReconnect: false,
|
|
1576
2055
|
readyState: 0,
|
|
1577
|
-
withCredentials:
|
|
2056
|
+
withCredentials: true,
|
|
1578
2057
|
trackMessageLength: false,
|
|
1579
2058
|
messageDelimiter: '|',
|
|
1580
2059
|
connectTimeout: -1,
|
|
@@ -5156,6 +5635,15 @@ fmt.Formatter = function () {
|
|
|
5156
5635
|
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.EXCHANGE_SUBSCRIBE] = this._fmtexchangesubscribe;
|
|
5157
5636
|
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.EXCHANGE_RESPONSE] = this._fmtexchangesubscriberesponse;
|
|
5158
5637
|
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.EXCHANGE_UNSUBSCRIBE_RESPONSE] = this._fmtexchangeunsubscriberesponse;
|
|
5638
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.ALERTS_SUBUNSUB] = this._fmtalertsubunsub;
|
|
5639
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.ALERTS_SUBUNSUB_RESPONSE] = this._fmtalertsubunsubresponse;
|
|
5640
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.NEWS_SUBSCRIBE] = this._fmtnewssubscribe;
|
|
5641
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.NEWS_SUBSCRIBE_RESPONSE] = this._fmtnewssubscriberesponse;
|
|
5642
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.TRADE_SUBSCRIBE] = this._fmttradesubscribe;
|
|
5643
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.TRADE_SUBSCRIBE_RESPONSE] = this._fmttradesubscriberesponse;
|
|
5644
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.NEWS_UNSUBSCRIBE_RESPONSE] = this._fmtnewsunsubscriberesponse;
|
|
5645
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.NEWS_CMD_FILTER_REFRESH_RESPONSE] = this._fmtnewscmdfilterrefreshresponse;
|
|
5646
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.ctrl.NEWS_CMD_FILTER_RESPONSE] = this._fmtnewscmdfilterresponse;
|
|
5159
5647
|
|
|
5160
5648
|
//
|
|
5161
5649
|
this.formatters[_streamerApi.messages.MessageTypeNames.data.QUOTE] = this._fmtquote;
|
|
@@ -5175,6 +5663,8 @@ fmt.Formatter = function () {
|
|
|
5175
5663
|
this.formatters[_streamerApi.messages.MessageTypeNames.data.IVGREEKS] = this._fmtivgreeks;
|
|
5176
5664
|
this.formatters[_streamerApi.messages.MessageTypeNames.data.IMBALANCESTATUS] = this._fmtimbalancestatus;
|
|
5177
5665
|
this.formatters[_streamerApi.messages.MessageTypeNames.data.ALERT] = this._fmtalert;
|
|
5666
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.data.NEWS] = this._fmtnews;
|
|
5667
|
+
this.formatters[_streamerApi.messages.MessageTypeNames.data.TRADENOTIFICATION] = this._fmttradeNotification;
|
|
5178
5668
|
};
|
|
5179
5669
|
|
|
5180
5670
|
fmt.Formatter._UNKOWNTYPE = '__UNKNOWN__';
|
|
@@ -5553,6 +6043,8 @@ fmt.Formatter.prototype._fmtbookorder = function (val) {
|
|
|
5553
6043
|
s.sep();
|
|
5554
6044
|
s.append(val.locateCode);
|
|
5555
6045
|
s.sep();
|
|
6046
|
+
s.append(val.excode);
|
|
6047
|
+
s.sep();
|
|
5556
6048
|
s.append(val.orderID);
|
|
5557
6049
|
s.sep();
|
|
5558
6050
|
s.append(val.orderReference);
|
|
@@ -5621,6 +6113,8 @@ fmt.Formatter.prototype._fmtsymbolinfo = function (val) {
|
|
|
5621
6113
|
s.append(val.pqe);
|
|
5622
6114
|
s.sep();
|
|
5623
6115
|
s.append(val.caveatEmptor);
|
|
6116
|
+
s.sep();
|
|
6117
|
+
s.append(val.boardLotSize);
|
|
5624
6118
|
return s.toString();
|
|
5625
6119
|
};
|
|
5626
6120
|
|
|
@@ -5691,6 +6185,60 @@ fmt.Formatter.prototype._fmtalert = function (val) {
|
|
|
5691
6185
|
return s.toString();
|
|
5692
6186
|
};
|
|
5693
6187
|
|
|
6188
|
+
fmt.Formatter.prototype._fmtnews = function (val) {
|
|
6189
|
+
var s = new fmt.StringBuilder();
|
|
6190
|
+
s.append('N');
|
|
6191
|
+
s.sep();
|
|
6192
|
+
s.append(val.storyId);
|
|
6193
|
+
s.sep();
|
|
6194
|
+
s.datetime(val.timestamp);
|
|
6195
|
+
s.sep();
|
|
6196
|
+
s.append(val.storyUrl);
|
|
6197
|
+
s.sep();
|
|
6198
|
+
s.append(val.epochtime);
|
|
6199
|
+
s.sep();
|
|
6200
|
+
s.append(val.headline);
|
|
6201
|
+
s.sep();
|
|
6202
|
+
s.append(val.source);
|
|
6203
|
+
s.sep();
|
|
6204
|
+
s.append(val.sourceId);
|
|
6205
|
+
s.sep();
|
|
6206
|
+
s.append(val.lang);
|
|
6207
|
+
s.sep();
|
|
6208
|
+
s.append(val.symbol);
|
|
6209
|
+
s.sep();
|
|
6210
|
+
s.append(val.excode);
|
|
6211
|
+
s.sep();
|
|
6212
|
+
s.append(val.exgroup);
|
|
6213
|
+
s.sep();
|
|
6214
|
+
s.append(val.topic);
|
|
6215
|
+
s.sep();
|
|
6216
|
+
s.append(val.thumbnailUrl);
|
|
6217
|
+
s.sep();
|
|
6218
|
+
s.append(val.newsUrl);
|
|
6219
|
+
s.sep();
|
|
6220
|
+
s.append(val.videoUrl);
|
|
6221
|
+
s.sep();
|
|
6222
|
+
s.append(val.videoImageUrl);
|
|
6223
|
+
|
|
6224
|
+
return s.toString();
|
|
6225
|
+
};
|
|
6226
|
+
|
|
6227
|
+
fmt.Formatter.prototype._fmttradeNotification = function (val) {
|
|
6228
|
+
var s = new fmt.StringBuilder();
|
|
6229
|
+
s.append("TN");
|
|
6230
|
+
s.sep();
|
|
6231
|
+
s.append(val.accountId);
|
|
6232
|
+
s.sep();
|
|
6233
|
+
s.append(val.brokerId);
|
|
6234
|
+
s.sep();
|
|
6235
|
+
s.append(val.message);
|
|
6236
|
+
s.sep();
|
|
6237
|
+
s.append(val.eventType);
|
|
6238
|
+
|
|
6239
|
+
return s.toString();
|
|
6240
|
+
};
|
|
6241
|
+
|
|
5694
6242
|
fmt.Formatter.prototype._fmtheartbeat = function (val) {
|
|
5695
6243
|
var s = new fmt.StringBuilder();
|
|
5696
6244
|
s.append("HEARBEAT");
|
|
@@ -5713,6 +6261,27 @@ fmt.Formatter.prototype._fmtexchangesubscribe = function (val) {
|
|
|
5713
6261
|
return s.toString();
|
|
5714
6262
|
};
|
|
5715
6263
|
|
|
6264
|
+
fmt.Formatter.prototype._fmtalertsubunsub = function (val) {
|
|
6265
|
+
var s = new fmt.StringBuilder();
|
|
6266
|
+
s.append('ALERT');
|
|
6267
|
+
// TODO
|
|
6268
|
+
return s.toString();
|
|
6269
|
+
};
|
|
6270
|
+
|
|
6271
|
+
fmt.Formatter.prototype._fmttradesubscribe = function (val) {
|
|
6272
|
+
var s = new fmt.StringBuilder();
|
|
6273
|
+
s.append('TRADE');
|
|
6274
|
+
// TODO
|
|
6275
|
+
return s.toString();
|
|
6276
|
+
};
|
|
6277
|
+
|
|
6278
|
+
fmt.Formatter.prototype._fmtnewssubscribe = function (val) {
|
|
6279
|
+
var s = new fmt.StringBuilder();
|
|
6280
|
+
s.append('NEWS SUBSCRIBE');
|
|
6281
|
+
// TODO
|
|
6282
|
+
return s.toString();
|
|
6283
|
+
};
|
|
6284
|
+
|
|
5716
6285
|
fmt.Formatter.prototype._fmtstats = function (val) {
|
|
5717
6286
|
var s = new fmt.StringBuilder();
|
|
5718
6287
|
s.append('STATS');
|
|
@@ -5737,6 +6306,56 @@ fmt.Formatter.prototype._fmtexchangesubscriberesponse = function (val) {
|
|
|
5737
6306
|
return s.toString();
|
|
5738
6307
|
};
|
|
5739
6308
|
|
|
6309
|
+
fmt.Formatter.prototype._fmtalertsubunsubresponse = function (val) {
|
|
6310
|
+
var s = new fmt.StringBuilder();
|
|
6311
|
+
s.append('ALERT SUBSCRIBED');
|
|
6312
|
+
// TODO
|
|
6313
|
+
return s.toString();
|
|
6314
|
+
};
|
|
6315
|
+
|
|
6316
|
+
fmt.Formatter.prototype._fmttradesubscriberesponse = function (val) {
|
|
6317
|
+
var s = new fmt.StringBuilder();
|
|
6318
|
+
s.append('TRADE SUBSCRIBED');
|
|
6319
|
+
// TODO
|
|
6320
|
+
return s.toString();
|
|
6321
|
+
};
|
|
6322
|
+
|
|
6323
|
+
fmt.Formatter.prototype._fmtnewssubscriberesponse = function (val) {
|
|
6324
|
+
var s = new fmt.StringBuilder();
|
|
6325
|
+
s.append('NEWS SUBSCRIBED');
|
|
6326
|
+
s.sep();
|
|
6327
|
+
this.__baseresponse(val, s);
|
|
6328
|
+
// TODO
|
|
6329
|
+
return s.toString();
|
|
6330
|
+
};
|
|
6331
|
+
|
|
6332
|
+
fmt.Formatter.prototype._fmtnewsunsubscriberesponse = function (val) {
|
|
6333
|
+
var s = new fmt.StringBuilder();
|
|
6334
|
+
s.append('NEWS UNSUBSCRIBED');
|
|
6335
|
+
s.sep();
|
|
6336
|
+
this.__baseresponse(val, s);
|
|
6337
|
+
// TODO
|
|
6338
|
+
return s.toString();
|
|
6339
|
+
};
|
|
6340
|
+
|
|
6341
|
+
fmt.Formatter.prototype._fmtnewscmdfilterrefreshresponse = function (val) {
|
|
6342
|
+
var s = new fmt.StringBuilder();
|
|
6343
|
+
s.append('NEWS COMMAND FILTER REFRESH');
|
|
6344
|
+
s.sep();
|
|
6345
|
+
this.__baseresponse(val, s);
|
|
6346
|
+
// TODO
|
|
6347
|
+
return s.toString();
|
|
6348
|
+
};
|
|
6349
|
+
|
|
6350
|
+
fmt.Formatter.prototype._fmtnewscmdfilterresponse = function (val) {
|
|
6351
|
+
var s = new fmt.StringBuilder();
|
|
6352
|
+
s.append('NEWS COMMAND FILTER');
|
|
6353
|
+
s.sep();
|
|
6354
|
+
this.__baseresponse(val, s);
|
|
6355
|
+
// TODO
|
|
6356
|
+
return s.toString();
|
|
6357
|
+
};
|
|
6358
|
+
|
|
5740
6359
|
fmt.Formatter.prototype._fmtunsubscriberesponse = function (val) {
|
|
5741
6360
|
var s = new fmt.StringBuilder();
|
|
5742
6361
|
s.append('UN-SUBSCRIBED');
|
|
@@ -9009,6 +9628,7 @@ var BookOrderDecoder = function () {
|
|
|
9009
9628
|
out.display = def.BookOrderFlags.isDisplay(flags);
|
|
9010
9629
|
out.orderChangeType = _Qitch2["default"].bookOrderChangeType(src, offset + def.CHANGE_TYPE_OFFSET);
|
|
9011
9630
|
out.orderReference = _Qitch2["default"].orderreference(src, offset + def.ORDER_REFERENCE_OFFSET);
|
|
9631
|
+
out.excode = _Qitch2["default"].excode(src, offset + def.EXCODE_OFFSET);
|
|
9012
9632
|
return out;
|
|
9013
9633
|
};
|
|
9014
9634
|
|
|
@@ -9707,6 +10327,7 @@ var SymbolInfoDecoder = function () {
|
|
|
9707
10327
|
resultingMessage.regSHOStatus = _Qitch2["default"].asciichar(src, offset + def.REGSHOSTATUS_OFFSET);
|
|
9708
10328
|
resultingMessage.pqe = _Qitch2["default"].sbyte(src, offset + def.PQE_OFFSET) > 0;
|
|
9709
10329
|
resultingMessage.caveatEmptor = _Qitch2["default"].sbyte(src, offset + def.CAVEATEMPTOR_OFFSET) > 0;
|
|
10330
|
+
resultingMessage.boardLotSize = _Qitch2["default"].int32(src, offset + def.BOARDLOTSIZE_OFFSET);
|
|
9710
10331
|
|
|
9711
10332
|
return resultingMessage;
|
|
9712
10333
|
};
|
|
@@ -10109,7 +10730,7 @@ var LENGTH = exports.LENGTH = ORDER_REFERENCE_OFFSET + _QitchConstants.ORDER_REF
|
|
|
10109
10730
|
"use strict";
|
|
10110
10731
|
|
|
10111
10732
|
exports.__esModule = true;
|
|
10112
|
-
exports.BookOrderFlags = exports.LENGTH = exports.ORDER_REFERENCE_OFFSET = exports.CHANGE_TYPE_OFFSET = exports.FLAGS_OFFSET = exports.LASTUPDATE_OFFSET = exports.SIZE_OFFSET = exports.PRICE_OFFSET = exports.SIDE_OFFSET = exports.ORDERID_OFFSET = exports.MMID_OFFSET = exports.SYMBOL_OFFSET = exports.TIMESTAMP_OFFSET = exports.TYPEID = undefined;
|
|
10733
|
+
exports.BookOrderFlags = exports.LENGTH = exports.EXCODE_OFFSET = exports.ORDER_REFERENCE_OFFSET = exports.CHANGE_TYPE_OFFSET = exports.FLAGS_OFFSET = exports.LASTUPDATE_OFFSET = exports.SIZE_OFFSET = exports.PRICE_OFFSET = exports.SIDE_OFFSET = exports.ORDERID_OFFSET = exports.MMID_OFFSET = exports.SYMBOL_OFFSET = exports.TIMESTAMP_OFFSET = exports.TYPEID = undefined;
|
|
10113
10734
|
|
|
10114
10735
|
var _QitchConstants = require("../QitchConstants");
|
|
10115
10736
|
|
|
@@ -10128,7 +10749,8 @@ var LASTUPDATE_OFFSET = exports.LASTUPDATE_OFFSET = SIZE_OFFSET + _QitchConstant
|
|
|
10128
10749
|
var FLAGS_OFFSET = exports.FLAGS_OFFSET = LASTUPDATE_OFFSET + _QitchConstants.TIMESTAMP_LENGTH;
|
|
10129
10750
|
var CHANGE_TYPE_OFFSET = exports.CHANGE_TYPE_OFFSET = FLAGS_OFFSET + _QitchConstants.INT_LENGTH;
|
|
10130
10751
|
var ORDER_REFERENCE_OFFSET = exports.ORDER_REFERENCE_OFFSET = CHANGE_TYPE_OFFSET + _QitchConstants.ASCIICHAR_LENGTH;
|
|
10131
|
-
var
|
|
10752
|
+
var EXCODE_OFFSET = exports.EXCODE_OFFSET = ORDER_REFERENCE_OFFSET + _QitchConstants.ORDER_REFERENCE_LENGTH;
|
|
10753
|
+
var LENGTH = exports.LENGTH = EXCODE_OFFSET + _QitchConstants.EXCODE_LENGTH;
|
|
10132
10754
|
|
|
10133
10755
|
var BookOrderFlags = exports.BookOrderFlags = function () {
|
|
10134
10756
|
function BookOrderFlags() {
|
|
@@ -10546,7 +11168,7 @@ var LENGTH = exports.LENGTH = DECIMALBIDSIZE_OFFSET + _QitchConstants.DOUBLE_LEN
|
|
|
10546
11168
|
"use strict";
|
|
10547
11169
|
|
|
10548
11170
|
exports.__esModule = true;
|
|
10549
|
-
exports.LENGTH = exports.CAVEATEMPTOR_OFFSET = exports.PQE_OFFSET = exports.REGSHOSTATUS_OFFSET = exports.HALTINDICATOR_OFFSET = exports.HALTSTATUS_OFFSET = exports.CURRENCYID_OFFSET = exports.INSTRUMENTTYPE_OFFSET = exports.EXCODE_OFFSET = exports.LOCATECODE_OFFSET = exports.SYMBOL_OFFSET = exports.TYPEID = undefined;
|
|
11171
|
+
exports.LENGTH = exports.BOARDLOTSIZE_OFFSET = exports.CAVEATEMPTOR_OFFSET = exports.PQE_OFFSET = exports.REGSHOSTATUS_OFFSET = exports.HALTINDICATOR_OFFSET = exports.HALTSTATUS_OFFSET = exports.CURRENCYID_OFFSET = exports.INSTRUMENTTYPE_OFFSET = exports.EXCODE_OFFSET = exports.LOCATECODE_OFFSET = exports.SYMBOL_OFFSET = exports.TYPEID = undefined;
|
|
10550
11172
|
|
|
10551
11173
|
var _QitchConstants = require("../QitchConstants");
|
|
10552
11174
|
|
|
@@ -10562,7 +11184,8 @@ var HALTINDICATOR_OFFSET = exports.HALTINDICATOR_OFFSET = HALTSTATUS_OFFSET + _Q
|
|
|
10562
11184
|
var REGSHOSTATUS_OFFSET = exports.REGSHOSTATUS_OFFSET = HALTINDICATOR_OFFSET + _QitchConstants.BYTE_LENGTH;
|
|
10563
11185
|
var PQE_OFFSET = exports.PQE_OFFSET = REGSHOSTATUS_OFFSET + _QitchConstants.ASCIICHAR_LENGTH;
|
|
10564
11186
|
var CAVEATEMPTOR_OFFSET = exports.CAVEATEMPTOR_OFFSET = PQE_OFFSET + _QitchConstants.BYTE_LENGTH;
|
|
10565
|
-
var
|
|
11187
|
+
var BOARDLOTSIZE_OFFSET = exports.BOARDLOTSIZE_OFFSET = CAVEATEMPTOR_OFFSET + _QitchConstants.BYTE_LENGTH;
|
|
11188
|
+
var LENGTH = exports.LENGTH = BOARDLOTSIZE_OFFSET + _QitchConstants.INT_LENGTH;
|
|
10566
11189
|
}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],require("timers").setImmediate,require("timers").clearImmediate,"/lib/qitch/marketDataDefinition/SymbolInfoDef.js","/lib/qitch/marketDataDefinition")
|
|
10567
11190
|
},{"../QitchConstants":26,"_process":114,"buffer":104,"timers":135}],85:[function(require,module,exports){
|
|
10568
11191
|
(function (process,global,Buffer,__argument0,__argument1,__argument2,__argument3,setImmediate,clearImmediate,__filename,__dirname){
|
|
@@ -10975,7 +11598,7 @@ exports.__esModule = true;
|
|
|
10975
11598
|
*/
|
|
10976
11599
|
|
|
10977
11600
|
var LIBRARY_NAME = exports.LIBRARY_NAME = "JavaScript";
|
|
10978
|
-
var VERSION = exports.VERSION = "2.
|
|
11601
|
+
var VERSION = exports.VERSION = "2.24.0";
|
|
10979
11602
|
|
|
10980
11603
|
/**
|
|
10981
11604
|
* Streamer message api namespace.
|
|
@@ -11027,7 +11650,17 @@ messages.MessageTypeNames = {
|
|
|
11027
11650
|
STATS_RESPONSE: 'C13',
|
|
11028
11651
|
EXCHANGE_SUBSCRIBE: 'C14',
|
|
11029
11652
|
EXCHANGE_RESPONSE: 'C15',
|
|
11030
|
-
EXCHANGE_UNSUBSCRIBE_RESPONSE: 'C16'
|
|
11653
|
+
EXCHANGE_UNSUBSCRIBE_RESPONSE: 'C16',
|
|
11654
|
+
NEWS_SUBSCRIBE: 'C17',
|
|
11655
|
+
NEWS_SUBSCRIBE_RESPONSE: 'C18',
|
|
11656
|
+
ALERTS_SUBUNSUB: 'C19',
|
|
11657
|
+
ALERTS_SUBUNSUB_RESPONSE: 'C20',
|
|
11658
|
+
TRADE_SUBSCRIBE: 'C21',
|
|
11659
|
+
TRADE_SUBSCRIBE_RESPONSE: 'C22',
|
|
11660
|
+
NEWS_UNSUBSCRIBE_RESPONSE: 'C23',
|
|
11661
|
+
NEWS_COMMAND: 'C24',
|
|
11662
|
+
NEWS_CMD_FILTER_REFRESH_RESPONSE: 'C25',
|
|
11663
|
+
NEWS_CMD_FILTER_RESPONSE: 'C26'
|
|
11031
11664
|
},
|
|
11032
11665
|
/**
|
|
11033
11666
|
* Name space for data message type identifiers.<br>
|
|
@@ -11051,7 +11684,9 @@ messages.MessageTypeNames = {
|
|
|
11051
11684
|
LIMITUPLIMITDOWN: 'D14',
|
|
11052
11685
|
IVGREEKS: 'D15',
|
|
11053
11686
|
IMBALANCESTATUS: 'D16',
|
|
11054
|
-
ALERT: 'D17'
|
|
11687
|
+
ALERT: 'D17',
|
|
11688
|
+
NEWS: 'D18',
|
|
11689
|
+
TRADENOTIFICATION: 'D19'
|
|
11055
11690
|
}
|
|
11056
11691
|
};
|
|
11057
11692
|
|
|
@@ -11177,6 +11812,103 @@ messages.control.ExchangeSubscribeMessage = function () {
|
|
|
11177
11812
|
};
|
|
11178
11813
|
messages.control.ExchangeSubscribeMessage.prototype = new messages.control.CtrlMessage();
|
|
11179
11814
|
|
|
11815
|
+
/**
|
|
11816
|
+
* Creates an news subscribe message.
|
|
11817
|
+
* @constructor
|
|
11818
|
+
*/
|
|
11819
|
+
messages.control.NewsSubscribeMessage = function () {
|
|
11820
|
+
this.init(messages.MessageTypeNames.ctrl.NEWS_SUBSCRIBE);
|
|
11821
|
+
|
|
11822
|
+
/**
|
|
11823
|
+
* The action the server will taken when receiving this message.
|
|
11824
|
+
* @type {string}
|
|
11825
|
+
* @see exports.messages.control.Action
|
|
11826
|
+
*/
|
|
11827
|
+
this.action = null;
|
|
11828
|
+
|
|
11829
|
+
/**
|
|
11830
|
+
* The news filters to subscribe for.
|
|
11831
|
+
* @type {Array.<string>}
|
|
11832
|
+
*/
|
|
11833
|
+
this.newsFilters = null;
|
|
11834
|
+
|
|
11835
|
+
/**
|
|
11836
|
+
* Requested message mime-type format.
|
|
11837
|
+
* @type {string}
|
|
11838
|
+
* @see exports.messages.MimeTypes
|
|
11839
|
+
*/
|
|
11840
|
+
this.mimetype = null;
|
|
11841
|
+
};
|
|
11842
|
+
messages.control.NewsSubscribeMessage.prototype = new messages.control.CtrlMessage();
|
|
11843
|
+
|
|
11844
|
+
/**
|
|
11845
|
+
* Creates an news reset message.
|
|
11846
|
+
* @constructor
|
|
11847
|
+
*/
|
|
11848
|
+
messages.control.NewsCommandMessage = function () {
|
|
11849
|
+
this.init(messages.MessageTypeNames.ctrl.NEWS_COMMAND);
|
|
11850
|
+
|
|
11851
|
+
/**
|
|
11852
|
+
* The action the server will taken when receiving this message.
|
|
11853
|
+
* @type {string}
|
|
11854
|
+
* @see exports.messages.control.Action
|
|
11855
|
+
*/
|
|
11856
|
+
this.newsAction = null;
|
|
11857
|
+
|
|
11858
|
+
/**
|
|
11859
|
+
* Requested message mime-type format.
|
|
11860
|
+
* @type {string}
|
|
11861
|
+
* @see exports.messages.MimeTypes
|
|
11862
|
+
*/
|
|
11863
|
+
this.mimetype = null;
|
|
11864
|
+
};
|
|
11865
|
+
messages.control.NewsCommandMessage.prototype = new messages.control.CtrlMessage();
|
|
11866
|
+
|
|
11867
|
+
/**
|
|
11868
|
+
* Creates an news subscribe message.
|
|
11869
|
+
* @constructor
|
|
11870
|
+
*/
|
|
11871
|
+
messages.control.AlertsSubUnsubMessage = function () {
|
|
11872
|
+
this.init(messages.MessageTypeNames.ctrl.ALERTS_SUBUNSUB);
|
|
11873
|
+
|
|
11874
|
+
/**
|
|
11875
|
+
* sub/unsub for alerts.
|
|
11876
|
+
* @type {string}
|
|
11877
|
+
*/
|
|
11878
|
+
this.operation = null;
|
|
11879
|
+
|
|
11880
|
+
/**
|
|
11881
|
+
* Requested message mime-type format.
|
|
11882
|
+
* @type {string}
|
|
11883
|
+
* @see exports.messages.MimeTypes
|
|
11884
|
+
*/
|
|
11885
|
+
this.mimetype = null;
|
|
11886
|
+
};
|
|
11887
|
+
messages.control.AlertsSubUnsubMessage.prototype = new messages.control.CtrlMessage();
|
|
11888
|
+
|
|
11889
|
+
/**
|
|
11890
|
+
* Creates Trade notification subscribe message.
|
|
11891
|
+
* @constructor
|
|
11892
|
+
*/
|
|
11893
|
+
|
|
11894
|
+
messages.control.TradeSubscribeMessage = function () {
|
|
11895
|
+
this.init(messages.MessageTypeNames.ctrl.TRADE_SUBSCRIBE);
|
|
11896
|
+
|
|
11897
|
+
/**
|
|
11898
|
+
* The subscribe/un-subscribe for trade notifications.
|
|
11899
|
+
* @type {Array.<string>}
|
|
11900
|
+
*/
|
|
11901
|
+
this.operation = null;
|
|
11902
|
+
|
|
11903
|
+
/**
|
|
11904
|
+
* Requested message mime-type format.
|
|
11905
|
+
* @type {string}
|
|
11906
|
+
* @see exports.messages.MimeTypes
|
|
11907
|
+
*/
|
|
11908
|
+
this.mimetype = null;
|
|
11909
|
+
};
|
|
11910
|
+
messages.control.TradeSubscribeMessage.prototype = new messages.control.CtrlMessage();
|
|
11911
|
+
|
|
11180
11912
|
/**
|
|
11181
11913
|
* Base class for response exports.
|
|
11182
11914
|
* @abstract
|
|
@@ -11235,6 +11967,16 @@ messages.control.ExchangeSubscribeResponse = function () {
|
|
|
11235
11967
|
|
|
11236
11968
|
messages.control.ExchangeSubscribeResponse.prototype = new messages.control.BaseResponse();
|
|
11237
11969
|
|
|
11970
|
+
/**
|
|
11971
|
+
* Creates Trade notification subscribe response message.
|
|
11972
|
+
* @constructor
|
|
11973
|
+
*/
|
|
11974
|
+
messages.control.TradeSubscribeResponse = function () {
|
|
11975
|
+
this.init(messages.MessageTypeNames.ctrl.TRADE_SUBSCRIBE_RESPONSE);
|
|
11976
|
+
};
|
|
11977
|
+
|
|
11978
|
+
messages.control.TradeSubscribeResponse.prototype = new messages.control.BaseResponse();
|
|
11979
|
+
|
|
11238
11980
|
/**
|
|
11239
11981
|
* Creates an un-subscribe response message.
|
|
11240
11982
|
* @constructor
|
|
@@ -11260,6 +12002,21 @@ messages.control.ExchangeUnsubscribeResponse = function () {
|
|
|
11260
12002
|
|
|
11261
12003
|
messages.control.ExchangeUnsubscribeResponse.prototype = new messages.control.BaseResponse();
|
|
11262
12004
|
|
|
12005
|
+
/**
|
|
12006
|
+
* Creates an news un-subscribe response message.
|
|
12007
|
+
* @constructor
|
|
12008
|
+
*/
|
|
12009
|
+
messages.control.NewsUnsubscribeResponse = function () {
|
|
12010
|
+
this.init(messages.MessageTypeNames.ctrl.NEWS_UNSUBSCRIBE_RESPONSE);
|
|
12011
|
+
|
|
12012
|
+
/**
|
|
12013
|
+
*
|
|
12014
|
+
* @type {Array.<messages.control.StreamEntitlement>}
|
|
12015
|
+
*/
|
|
12016
|
+
this.unsubscribed = null;
|
|
12017
|
+
};
|
|
12018
|
+
messages.control.NewsUnsubscribeResponse.prototype = new messages.control.BaseResponse();
|
|
12019
|
+
|
|
11263
12020
|
/**
|
|
11264
12021
|
* Creates a stream entitlement info.
|
|
11265
12022
|
* @constructor
|
|
@@ -11421,6 +12178,11 @@ messages.control.StatsResponse = function () {
|
|
|
11421
12178
|
* @type {number}
|
|
11422
12179
|
*/
|
|
11423
12180
|
this.numberOfSubscribedExchanges = null;
|
|
12181
|
+
/**
|
|
12182
|
+
*
|
|
12183
|
+
* @type {number}
|
|
12184
|
+
*/
|
|
12185
|
+
this.numberOfSubscribedTrades = null;
|
|
11424
12186
|
};
|
|
11425
12187
|
messages.control.StatsResponse.prototype = new messages.control.BaseResponse();
|
|
11426
12188
|
|
|
@@ -11482,6 +12244,17 @@ messages.control.Action = {
|
|
|
11482
12244
|
UNSUBSCRIBE: "UNSUBSCRIBE"
|
|
11483
12245
|
};
|
|
11484
12246
|
|
|
12247
|
+
/**
|
|
12248
|
+
* Enumeration for associations.
|
|
12249
|
+
* @enum
|
|
12250
|
+
* @readonly
|
|
12251
|
+
*/
|
|
12252
|
+
messages.control.Association = {
|
|
12253
|
+
AND: "AND",
|
|
12254
|
+
OR: "OR",
|
|
12255
|
+
NOT: "NOT"
|
|
12256
|
+
};
|
|
12257
|
+
|
|
11485
12258
|
/**
|
|
11486
12259
|
* Enumeration for streaming message types.
|
|
11487
12260
|
* @enum
|