13 using System.Diagnostics;
16 using System.Text.RegularExpressions;
17 using System.Threading;
18 using System.Windows.Forms;
19 using Timer = System.Windows.Forms.Timer;
32 private string BBPpath =
@"BBPresenseSensor.exe";
33 private string BBTpath =
@"BBThermostatSensor.exe";
34 private string BBFpath =
@"MiBand-Heartrate.exe";
60 private DateTime
today = DateTime.Today;
79 #endregion Constructor 81 #region PluginProcessCheck 91 Process[] processName = Process.GetProcessesByName(
fileName.Substring(0,
fileName.LastIndexOf(
'.')));
92 if (processName.Length > 0)
125 Process[] processName = Process.GetProcessesByName(
fileName.Substring(0,
fileName.LastIndexOf(
'.')));
126 if (processName.Length > 0)
168 StringBuilder stringBuilder =
new StringBuilder();
170 foreach (
object match
in Regex.Matches(input,
"[0-9nu BRevCTkMGHzVs%\\-.]"))
172 stringBuilder.Append(match.ToString());
175 return stringBuilder.ToString();
186 Process[] processName = Process.GetProcessesByName(
fileName.Substring(0,
fileName.LastIndexOf(
'.')));
187 if (processName.Length > 0)
198 #endregion PluginProcessCheck 200 #region ApplicationStartup 254 #endregion ApplicationStartup 256 #region PluginStatusCheck 263 StatusIcon.Image = Properties.Resources.trafficlight_green;
316 StatusIcon.Image = Properties.Resources.trafficlight_red;
326 StatusIcon.Image = Properties.Resources.trafficlight_red;
339 StatusIcon.Image = Properties.Resources.trafficlight_red;
350 MessageBox.Show(
"You have come to the end of the\n research period, thank you for participating.");
367 #endregion PluginStatusCheck 369 #region ButtonControls 379 AccessPad.ShowDialog();
383 ProcessStartInfo proc1 =
new ProcessStartInfo();
385 proc1.UseShellExecute =
true;
386 Command =
@"netsh wlan show hostednetwork";
387 proc1.WorkingDirectory =
@"C:\Windows\System32";
388 proc1.FileName =
@"C:\Windows\System32\cmd.exe";
389 proc1.Verb =
"runas";
390 proc1.Arguments =
"/k " + Command;
391 proc1.WindowStyle = ProcessWindowStyle.Normal;
392 Process.Start(proc1);
404 AccessPad.ShowDialog();
456 AccessPad.ShowDialog();
472 #endregion ButtonControls 474 #region DashBoardControls 481 DateTime
today = DateTime.Today;
502 MessageBox.Show(
"Schedule date invalid");
513 AccessPad.ShowDialog();
529 AccessPad.ShowDialog();
557 AccessPad.ShowDialog();
561 ProcessStartInfo proc1 =
new ProcessStartInfo();
563 proc1.UseShellExecute =
true;
564 Command =
@"netsh wlan stop hostednetwork";
565 proc1.WorkingDirectory =
@"C:\Windows\System32";
566 proc1.FileName =
@"C:\Windows\System32\cmd.exe";
567 proc1.Verb =
"runas";
568 proc1.Arguments =
"/k " + Command;
569 proc1.WindowStyle = ProcessWindowStyle.Hidden;
570 Process.Start(proc1);
582 AccessPad.ShowDialog();
586 ProcessStartInfo proc1 =
new ProcessStartInfo();
588 proc1.UseShellExecute =
true;
589 Command =
@"netsh wlan start hostednetwork";
590 proc1.WorkingDirectory =
@"C:\Windows\System32";
591 proc1.FileName =
@"C:\Windows\System32\cmd.exe";
592 proc1.Verb =
"runas";
593 proc1.Arguments =
"/k " + Command;
594 proc1.WindowStyle = ProcessWindowStyle.Hidden;
595 Process.Start(proc1);
607 AccessPad.ShowDialog();
611 ProcessStartInfo proc1 =
new ProcessStartInfo();
613 proc1.UseShellExecute =
true;
614 Command =
@"ncpa.cpl";
615 proc1.WorkingDirectory =
@"C:\Windows\System32";
616 proc1.FileName =
@"C:\Windows\System32\cmd.exe";
617 proc1.Arguments =
"/k " + Command;
618 proc1.WindowStyle = ProcessWindowStyle.Hidden;
619 Process.Start(proc1);
631 AccessPad.ShowDialog();
638 string batDir =
string.Format(
@"NetSetup\");
639 proc =
new Process();
640 proc.StartInfo.WorkingDirectory = batDir;
642 proc.StartInfo.CreateNoWindow =
false;
645 MessageBox.Show(
"Bat file executed !!");
649 MessageBox.Show(
"Error setting up access point",
"Configureation Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
654 #endregion DashBoardControls
void StartPIR()
Presence sensor file location
void BBTSS()
Black Box thermostat sensor status
void BBFSS()
Black Box fitness tracker status
System.Windows.Forms.PictureBox StatusIcon
System.Windows.Forms.DateTimePicker StartDateObj
void StartThermostate()
thermostat file location
bool ScheduleChecker()
Get and check schedule dates
System.Windows.Forms.ProgressBar ResearchSpand
void BBSmartSetup_Click(object sender, EventArgs e)
Check network status
static void SaveErrorData(string error)
Log all the error that occurs in the program
void networkSetup_Click(object sender, EventArgs e)
Start network connection
void BBRestart_Click(object sender, EventArgs e)
Restart task scheduler
void StatusChecker_Tick(object sender, EventArgs e)
Intervals which status are checked
void BBtaskScheduler_Load(object sender, EventArgs e)
void BBPSS()
Black Box presence sensor status
string RemoveUnwantedChar(string input)
Parse model info
void TSStatusChecker()
Check operation status
void BBTaskCheck()
Checking the operation status
void adaptorBtn_Click(object sender, EventArgs e)
Network connection window
System.Windows.Forms.PictureBox SchedulerIcon
System.Windows.Forms.DateTimePicker StopDateObj
void networkDisconnect_Click(object sender, EventArgs e)
Stop network connection
void submitBtn_Click(object sender, EventArgs e)
void NetSetup_Click(object sender, EventArgs e)
Setup Black Box network
void CheckDate()
validate selected dates
System.Windows.Forms.PictureBox MotionStatusIcon
void BBAdvSetup_Click(object sender, EventArgs e)
Open the advance dialog box
void offBtn_Click(object sender, EventArgs e)
power down button
System.Windows.Forms.Timer StatusChecker
static string BBThermostatType()
This method retrieve thermostat model
void StartFitnessTracker()
Fitness tracker file location
System.Windows.Forms.Label BBTModel
System.Windows.Forms.PictureBox ThermostatStatusIcon
void InitializeComponent()
Required method for Designer support - do not modify the contents of this method with the code editor...
System.Windows.Forms.Timer Timer
System.Windows.Forms.PictureBox FitnessStatusIcon