protected void OnCommandReceived(string rawIrCommand)
{
if (CommandReceived != null)
{
string code = "", irCommand = "", remoteCommandName = "";
int repeat = 0;
string[] parameters = rawIrCommand.Split(new char[] { ' ' });
if (parameters.Length > 0) code = parameters[0];
if (parameters.Length > 1) try { repeat = int.Parse(parameters[1]); } catch { }
if (parameters.Length > 2)
{
irCommand = parameters[2];
if (parameters.Length > 3)
{
remoteCommandName = parameters[3];
if (remoteCommandName[remoteCommandName.Length - 1] == '\n')
remoteCommandName = remoteCommandName.Substring(0, remoteCommandName.Length - 1);
}
CommandReceived(this, new CommandReceivedEventArgs(rawIrCommand, code, repeat, irCommand, remoteCommandName));
}
}
}