private void OnBleStatusChanged(char[] obj) { if (obj.Length > 0) { AirpodsInfo airpodsInfo = _airpodsBleParser.Parse(obj); AirpodsInfo = new AirpodsInfoModel(airpodsInfo); _changeTrayIcon[AirpodsInfo.BatteryStatus].Invoke(); if (isFirstTime && AirpodsInfo.IsCaseOpen) { isFirstTime = false; NormalizeAction(); } if (!AirpodsInfo.IsCaseOpen) { isFirstTime = true; } } else { isFirstTime = true; AirpodsInfo = new AirpodsInfoModel(); TrayIconDefault.Invoke(); } }
public AirpodsInfoModel(AirpodsInfo airpodsInfo) { airpods = airpodsInfo; CaseBattery = airpodsInfo.CaseStatus.ToString(); LeftEarbudBattery = airpodsInfo.LeftEarbudStatus.ToString(); RightEarbudBattery = airpodsInfo.RightEarbudStatus.ToString(); }
public AirpodsInfo Parse(char[] hex) { AirpodsInfo airpodsInfo = new AirpodsInfo { CaseStatus = _caseParser.Parse(hex), LeftEarbudStatus = _leftEarbudParser.Parse(hex), RightEarbudStatus = _rightEarbudParser.Parse(hex), }; return(airpodsInfo); }