//generateAccount.py
from algosdk import algod
from connect import Connect
accounts = {}
# To get acount information
getConnect = Connect()
forAlcInfo = getConnect.connectToNetwork()
# define a function to generate 2 accounts
def generateAccounts():
# generate accounts 1 and 2
private_key_1, address_1 = account.generate_account()
private_key_2, address_2 = account.generate_account()
account_1 = {
"pkey": private_key_1,
"alc_address":address_1,
"alc_information": forAlcInfo.account_info(address_1)
}
account_2 = {
"pkey": private_key_2,
"alc_address":address_2,
"alc_information": forAlcInfo.account_info(address_2)
}
# store accounts 1 and 2
accounts["account_1"] = account_1
accounts["account_2"] = account_2
return (accounts)```
```\\sendTransaction file```
```from algosdk import algod, transaction
from connect import Connect
from generateaccount import accounts, generateAccounts
defaultAddr = "N6SJLDQXCXZ7IJMLM5VVEAWJ36JUJSDQVNQFA2I3BKFOWE3QLKKJGATPJ4"
private_key_alc = "QZkBrhS8lENmn30GyKMPufFPdjG88Knz0Fj279+jxVdvpJWOFxXz9CWLZ2tSAsnfk0TIcKtgUGkbCorrE3BalA=="
forAlgoClient = Connect()
algodClient = forAlgoClient.connectToNetwork()
fees=1000
fstRound=1000
last=fstRound + 1000,
memo = "Hi, sent you some Algo".encode()
# gn="testnet-v1.0"
genhash="SGO1GKSzyE7IEPItTxCByw9x8FmnrCDexi9/cOUJOiI="
def sendTransaction(privateKey, sender, receiver, amount):
sndr = sender
rcv = receiver
amont = amount
trxn = transaction.PaymentTxn(sndr, fees, fstRound, last, genhash, rcv, amont)
signTrxn = trxn.sign(privateKey)
# trxn_id = signTrxn.transaction.get_txid()
return algodClient.send_transaction(signTrxn)
alc_1_addr = (accounts['account_1']['alc_address'])
alc_2_addr = (accounts['account_2']['alc_address'])
alc_1_pk = (accounts['account_1']['pkey'])
trxn_1 = sendTransaction(private_key_alc, defaultAddr, alc_1_addr, 10)
error report
Traceback (most recent call last):
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\site-packages\algosdk\algod.py", line 74, in algod_request
raise error.AlgodHTTPError(json.loads(e)["message"])
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\json\__init__.py", line 348, in loads
return _default_decoder.decode(s)
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "c:/Users/bobman/Documents/pythonTutorial/pythonTutorial.py", line 33, in <module>
trxn_1 = sendTransaction(private_key_alc, defaultAddr, alc_1_addr, 10)
File "c:\Users\bobman\Documents\pythonTutorial\sendtransaction.py", line 30, in sendTransaction
return algodClient.send_transaction(signTrxn)
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\site-packages\algosdk\algod.py", line 273, in send_transaction
**kwargs)
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\site-packages\algosdk\algod.py", line 259, in send_raw_transaction
return self.algod_request("POST", req, data=txn, **kwargs)["txId"]
File "C:\Users\bobman\AppData\Local\Programs\Python\Python37\lib\site-packages\algosdk\algod.py", line 76, in algod_request
raise error.AlgodHTTPError(e)
algosdk.error.AlgodHTTPError: msgpack decode error [pos 1]: only encoded map or array can be decoded into a struct
PS C:\Users\bobman\Documents\pythonTutorial>```