/////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// Called each time the client thread is executed /// </summary> /////////////////////////////////////////////////////////////////////////////////////////// private void mClient_ThreadCallback(object sender, EventArgs e) { //If we are not connected set all flags to false if (!Connected) { mCommunicationStarted = false; mTorqueEventSubscribed = false; mAlarmEventSubscribed = false; mStatus = OpenProtocolStatus.Disconnected; } else { StartCommunication(); SubscribeToLastTighteningResult(); if (mCommunicationStarted && mLastSetTime < DateTime.Now.AddHours(4)) { Message setTime = new Message(MessageType.SetTime); mLastSetTime = DateTime.Now.AddMilliseconds(500); // Add 500 milliseconds for transfer time. setTime.Data = mLastSetTime.ToString("yyyy-MM-dd:HH:mm:ss"); Send(setTime, MessageType.CommandAccepted); } if (mTorqueEventSubscribed) { mStatus = (mEnabled) ? OpenProtocolStatus.Running : OpenProtocolStatus.Disabled; } else { mStatus = OpenProtocolStatus.Initializing; } } }
public void Disconnect() { mCommunicationStarted = false; mTorqueEventSubscribed = false; mAlarmEventSubscribed = false; mStatus = OpenProtocolStatus.Disconnected; if(mClient != null && mClient.Connected) mClient.Disconnect(); }