public string InitiatorTestRequestMessage(int id, [FromQuery] string msg) { msg = msg.Trim().Substring(0, Math.Min(msg.Length, 20)); if (msg == "") { msg = "TestMessage."; } // do zero-based indexing var initiator = _fixInitiatorHostService.GetInitiators().Skip(id).FirstOrDefault(); if (initiator == null) { return("initiator not found"); } var sessionIdFromInitiator = initiator.GetSessionShortname(); // careful var testRequest = new QuickFix.FIX42.TestRequest(); // testRequest.SetField(new QuickFix.Fields.Text(msg)); testRequest.SetField(new QuickFix.Fields.TestReqID(msg)); var sessionId = new QuickFix.SessionID("FIX.4.2", "MJV_CLIENT1", "SIMPLE"); // todo: grab from different session tracking resource // from initiator probably. // about to Send A Message! QuickFix.Session.SendToTarget(testRequest, sessionId); return($"Partial sent message: {testRequest.ToString()}"); }
/// <summary> /// Creates a FIX4.2 TestRequest Message /// </summary> /// <param name="testId"></param> /// <returns></returns> public QuickFix.FIX42.TestRequest TestRequest(string testId) { QuickFix.FIX42.TestRequest testRequest = new QuickFix.FIX42.TestRequest(); QuickFix.Fields.TestReqID testReqId = new QuickFix.Fields.TestReqID(testId); testRequest.SetField(testReqId); return(testRequest); }