protected override void NotifyToChildrenAsChanged() { //https://api.ethermine.org//miner/:miner/currentStats //{"status":"OK","data":[{"worker":"3090-2","time":1621352400,"lastSeen":1621352367,"reportedHashrate":433797908,"currentHashrate":411547659.92833334,"validShares":343,"invalidShares":0,"staleShares":3,"averageHashrate":415222961.9435879},{"worker":"3090-5li","time":1621352400,"lastSeen":1621352367,"reportedHashrate":707161209,"currentHashrate":661196443.3458333,"validShares":549,"invalidShares":0,"staleShares":8,"averageHashrate":692508591.4666438},{"worker":"melih-kktc","time":1621352400,"lastSeen":1621352366,"reportedHashrate":1260949519,"currentHashrate":1247647384.7508333,"validShares":1036,"invalidShares":0,"staleShares":15,"averageHashrate":1220588015.0897803},{"worker":"melih-rigrig-1","time":1621352400,"lastSeen":1621352361,"reportedHashrate":406673131,"currentHashrate":460880884.27416664,"validShares":385,"invalidShares":0,"staleShares":2,"averageHashrate":397732136.68556714},{"worker":"melih-rigrig-1-redminer","time":1621352400,"lastSeen":1621352365,"reportedHashrate":258040846,"currentHashrate":265635850.07416666,"validShares":222,"invalidShares":0,"staleShares":1,"averageHashrate":245787065.04707173}]} if (!HasError() && HasText()) { if (m_address != null && m_address.Length > 0) { DefaultWalletAddress wallet = new DefaultWalletAddress(m_address); result = JsonUtility.FromJson <Json_Result>(GetText()); isConverted = true; m_minerInformation = new EtherMinerOrgMinerInfo(wallet); m_minerInformation.SetPaid(result.data.unpaid, result.data.unconfirmed); m_minerInformation.SetEstimationWin(result.data.coinsPerMin, result.data.usdPerMin, result.data.btcPerMin); m_minerInformation.SetActiveWorker(result.data.activeWorkers); EtherMineOrgWorkerFrame frame = new EtherMineOrgWorkerFrame(); frame.SetWorkerRef(new EhterMineWorkerRef(new DefaultWorkerFromWalletID(wallet, ""))); frame.SetTime(result.data.time); frame.SetTimeLastSeen(result.data.time); frame.SetShares(result.data.validShares, result.data.invalidShares, result.data.staleShares); frame.SetHashRate(result.data.currentHashrate, result.data.reportedHashrate, result.data.averageHashrate); m_minerInformation.SetCurrentStateAsFrame(frame); } } else { isConverted = false; } }
public void PushLastSaveToFile() { if (m_minerObserved == null) { return; } if (m_minerObserved.m_minerInfo == null) { return; } if (m_minerObserved.m_minerInfo.HasError() || !m_minerObserved.m_minerInfo.HasText()) { return; } if (!m_minerObserved.m_minerInfo.isConverted) { return; } EtherMinerOrgMinerInfo miner = m_minerObserved.m_minerInfo.GetMinerInfo(); AbstractMinerInfo minerinfo = new AbstractMinerInfo(); minerinfo.m_address = miner.GetWallet().GetAddress(); minerinfo.m_timestampInSeconds = miner.GetFrameStatistic().GetTimestamp(); minerinfo.m_averageHashrate = miner.GetFrameStatistic().GetAverageHashRate(); minerinfo.m_hardwareHashrate = miner.GetFrameStatistic().GetReportedHashRate(); minerinfo.m_serverHashrate = miner.GetFrameStatistic().GetCurrentHashRate(); minerinfo.m_validShares = miner.GetFrameStatistic().GetValideShares(); minerinfo.m_invalidShares = miner.GetFrameStatistic().GetInvalideShares(); minerinfo.m_staleShares = miner.GetFrameStatistic().GetStaleShares(); minerinfo.m_unpaidWei = miner.GetUnpaidWai(); minerinfo.m_bitcoinPerMinute = miner.GetBitcoinPerMinute(); minerinfo.m_coinsPerMinute = miner.GetCoinsPerMinutes(); minerinfo.m_usdPerMinute = miner.GetUsdPerMinutes(); minerinfo.m_workerCount = miner.GetActiveWorkers(); m_poolSaveAndLoad.SaveMinerState(PoolManageByThisAPI.Ethermine, minerinfo); // AbstractMinerBasicInfo[] m_debugMinerKeys; //m_poolSaveAndLoad.ImportAllKeys(PoolManageByThisAPI.Ethermine.ToString(), miner.GetWallet().GetAddress(), new DateTime((int)year, (int)month, (int)day, (int)hour, (int)minute, 0, 0, DateTimeKind.Utc), DateTime.UtcNow, out m_debugMinerKeys); }
public void SetWith(EtherMinerOrgMinerInfo info) { if (info == null) { if (m_frameGeneral != null) { m_frameGeneral.SetWith(null); } if (m_hashRateEstimation != null) { m_hashRateEstimation.SetWith(0); } if (m_history != null) { m_history.SetWith(info.GetFameHistory()); } if (m_unconfirmed != null) { m_unconfirmed.text = ""; } if (m_unpaid != null) { m_unpaid.text = ""; } if (m_dollarPerMinute != null) { m_dollarPerMinute.text = ""; } if (m_bitcoinsPerMinute != null) { m_bitcoinsPerMinute.text = ""; } if (m_coinsPerMinute != null) { m_coinsPerMinute.text = ""; } if (m_activeWorker != null) { m_activeWorker.text = ""; } return; } if (m_hashRateEstimation != null) { m_hashRateEstimation.SetWith(info.GetFrameStatistic().GetCurrentHashRate()); } if (m_frameGeneral != null) { m_frameGeneral.SetWith(info.GetFrameStatistic()); } if (m_address != null) { m_address.text = info.GetWallet().GetAddress(); } if (m_dollarPerMinute != null) { m_dollarPerMinute.text = "" + info.GetUsdPerMinutes() * (60 * 24) + " $/day"; } if (m_coinsPerMinute != null) { m_coinsPerMinute.text = "" + info.GetCoinsPerMinutes() * (60 * 24) + " ETH/day"; } if (m_bitcoinsPerMinute != null) { m_bitcoinsPerMinute.text = "" + info.GetBitcoinPerMinute() * (60 * 24) + " BTC/day"; } if (m_activeWorker != null) { m_activeWorker.text = "" + info.GetActiveWorkers() + " workers"; } if (m_unconfirmed != null) { m_unconfirmed.text = "" + info.GetUnconfirmed() + " unconfirmed"; } if (m_unpaid != null) { EthereumConverttion.ApproximateConvert(info.GetUnpaidWai(), out decimal value, EtherType.Wei, EtherType.Ether); m_unpaid.text = "" + value + " ETH Unpaid"; } }