Source code for zpywallet.broadcast.dogetest.all

import asyncio
import binascii
import hashlib
from .fullnode import broadcast_transaction_dogetest_full_node
from .._parallel import gather_broadcast_tasks


[docs]def tx_hash_dogetest(raw_transaction_hex): """Calculate the hash of a Dogecoin testnet transaction. Args: raw_transaction_hex (str): The raw transaction in hexadecimal form. """ return binascii.hexlify( hashlib.sha256(hashlib.sha256(raw_transaction_hex.decode()).digest()).digest() )
[docs]async def broadcast_transaction_dogetest(raw_transaction_hex, **kwargs): """Broadcast a Dogecoin testnet transaction. This function attempts to asynchronously broadcast a signed transaction to several propagators that relay the transaction across the network. Args: raw_transaction_hex (str): The raw transaction in hexadecimal form. """ rpc_nodes = kwargs.get("rpc_nodes") or [] awaitables = [] for node in rpc_nodes: awaitables.append( broadcast_transaction_dogetest_full_node(raw_transaction_hex, **node) ) await gather_broadcast_tasks(awaitables)