IEnumerator ConnectToEth() { var blockNumberRequest = new EthBlockNumberUnityRequest("https://rinkeby.infura.io"); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { var blockNumber = blockNumberRequest.Result.Value; Debug.Log("Block: " + blockNumber.ToString()); } else { Debug.Log(blockNumberRequest.Exception.Message); yield break; } PersonalNewAccountUnityRequest req = new PersonalNewAccountUnityRequest("https://rinkeby.infura.io"); yield return(req.SendRequest("testpass")); var acc = req.Result; //var contract = new Contract(null, ABI, contractAddress); Debug.Log("New account: " + acc); }
private static IEnumerator GetLatestBlockCoroutine(UnityAction <BlockWithTransactions> callback) { var blockNumberRequest = new EthBlockNumberUnityRequest(WalletSettings.current.networkUrl); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { var getBlockByNumberRequest = new EthGetBlockWithTransactionsByNumberUnityRequest(WalletSettings.current.networkUrl); yield return(getBlockByNumberRequest.SendRequest(new Nethereum.Hex.HexTypes.HexBigInteger(blockNumberRequest.Result.Value))); if (getBlockByNumberRequest.Exception == null) { callback(getBlockByNumberRequest.Result); } else { throw new System.InvalidOperationException("Get block request failed, exception=" + getBlockByNumberRequest.Exception); } } else { throw new System.InvalidOperationException("Block number request failed, exception=" + blockNumberRequest.Exception); } }
public IEnumerator BlockNumber() { EthBlockNumberUnityRequest req = new EthBlockNumberUnityRequest(m_endpoint); yield return(req.SendRequest()); Debug.Log("block number " + req.Result); }
private IEnumerator GetBlockNumber() { string url = "https://mainnet.infura.io/v3/9fe4e5215d2d43e8b756c0ab71ceb7fe"; var blockNumberRequest = new EthBlockNumberUnityRequest(url); yield return(blockNumberRequest.SendRequest()); print(blockNumberRequest.Result.Value); }
public IEnumerator GetBlockNumber() { Url = InputUrl.text; var blockNumberRequest = new EthBlockNumberUnityRequest(Url); yield return(blockNumberRequest.SendRequest()); ResultBlockNumber.text = blockNumberRequest.Result.Value.ToString(); }
public IEnumerator getBlockNumber() { var blockNumberRequest = new EthBlockNumberUnityRequest(url); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { var blockNumber = blockNumberRequest.Result.Value; Debug.Log("Block: " + blockNumber.ToString()); } }
IEnumerator Init() { var blockNbRequest = new EthBlockNumberUnityRequest(nodeAddress); yield return(blockNbRequest.SendRequest()); currentHeight = blockNbRequest.Result.Value - initalNbNodes; listening = true; listeningCoroutine = ListenForNewBlock(); StartCoroutine(listeningCoroutine); }
public IEnumerator CheckBlockNumber() { while (true) { yield return(new WaitForSeconds(2)); var blockNumberRequest = new EthBlockNumberUnityRequest("https://mainnet.infura.io"); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { Debug.Log(blockNumberRequest.Result.Value.ToString()); } } }
IEnumerator ListenForNewBlock() { while (listening) { var blockNbRequest = new EthBlockNumberUnityRequest(nodeAddress); yield return(blockNbRequest.SendRequest()); while (blockNbRequest.Result.Value > currentHeight) { yield return(StartCoroutine(ProcessNewBlock(currentHeight))); } yield return(new WaitForSeconds(20)); } }
private static IEnumerator GetBlockNumberCoroutine(UnityAction <int> callback) { var blockNumberRequest = new EthBlockNumberUnityRequest(WalletSettings.current.networkUrl); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { callback((int)blockNumberRequest.Result.Value); } else { throw new System.InvalidOperationException("Block number request failed, exception=" + blockNumberRequest.Exception); } }
public IEnumerator CheckBlockNumber() { var wait = 1; while (true) { yield return(new WaitForSeconds(wait)); var blockNumberRequest = new EthBlockNumberUnityRequest("https://testnet.tomochain.com"); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { var blockNumber = blockNumberRequest.Result.Value; blockNumberText.text = "Block: " + blockNumber.ToString(); } } }
public IEnumerator CheckBlockNumber() { var wait = 1; while (true) { yield return(new WaitForSeconds(wait)); wait = 10; var blockNumberRequest = new EthBlockNumberUnityRequest("https://rinkeby.infura.io/v3/7238211010344719ad14a89db874158c"); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { var blockNumber = blockNumberRequest.Result.Value; blockNumberText.text = "Block: " + blockNumber.ToString(); } } }
public IEnumerator CheckBlockNumber() { var wait = 1; while (true) { yield return(new WaitForSeconds(wait)); wait = 5; var blockNumberRequest = new EthBlockNumberUnityRequest(endpoint); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { var blockNumber = blockNumberRequest.Result.Value; blockNumberText = "Block: " + blockNumber.ToString(); } } }
private static IEnumerator WatchNewBlockCoroutine() { // Get block number every 5 seconds var wait = new WaitForSeconds(5); while (true) { var blockNumberRequest = new EthBlockNumberUnityRequest(WalletSettings.current.networkUrl); yield return(blockNumberRequest.SendRequest()); if (blockNumberRequest.Exception == null) { int blockNumber = (int)blockNumberRequest.Result.Value; if (blockNumber > _lastCheckedBlockNumber) { if (WalletSettings.current.debugLog) { Debug.LogFormat("WalletManager:WatchNewBlock - block number updated = {1}", blockNumber); } if (blockNumber - _lastCheckedBlockNumber < 50) // If more than 50 blocks behind, just jump to the latest block { for (int i = _lastCheckedBlockNumber + 1; i <= blockNumber; i++) { BlockNumberUpdatedEvent?.Invoke(blockNumber); CoroutineManager.Start(GetLatestBlockCoroutine(i)); yield return(new WaitForSeconds(1)); } } _lastCheckedBlockNumber = blockNumber; } } else { throw new System.InvalidOperationException("Block number request failed, exception=" + blockNumberRequest.Exception); } yield return(wait); } }
private static IEnumerator getTransactions(Action <bool> callBack) { var blockNumberRequest = new EthBlockNumberUnityRequest(Wallet._url); yield return(blockNumberRequest.SendRequest()); blockNumber = blockNumberRequest.Result.Value; startBlockNumber = blockNumber - blockCount; Action _callBack = new Action(() => { //callBack(true); if (blockIndex > batchCount) { callBack(true); } }); for (var _i = 0; _i <= batchCount; _i++) { CoroutineManager.StartCoroutineTask(GetBlockWithTransactionsByNumberUnityRequest(blockNumber - _i, _callBack)); } }