/// <summary> /// Polls for the transaction receipt of a transaction until a result is found. /// </summary> /// <param name="txHash"> The transaction hash to poll for a receipt. </param> /// <param name="networkUrl"> The network url of the transaction hash. </param> private IEnumerator PollForTransactionReceipt(string txHash, string networkUrl) { if (!AddressUtils.IsValidTransactionHash(txHash)) { InternalInvokeError("Invalid transaction hash"); yield return(null); } var request = new EthGetTransactionReceiptUnityRequest(networkUrl); do { yield return(Waiter); yield return(request.SendRequest(txHash)); }while (request.Exception != null || request.Result == null); if (request.Result?.Status?.Value == 1) { InternalInvokeSuccess("Transaction successful!"); } else { InternalInvokeError(request.Exception.Message); } }