get transactionInfo RPC call works
This commit is contained in:
parent
c952edb363
commit
2d92dc6340
@ -1,6 +1,7 @@
|
|||||||
|
|
||||||
SOLANA_NET_URL="wss://api.mainnet-beta.solana.com"
|
SOLANA_WS_URL="wss://api.mainnet-beta.solana.com"
|
||||||
SOLANA_NET_2="wss://mainnet.rpcpool.com"
|
SOLANA_WS_URL2="wss://mainnet.rpcpool.com"
|
||||||
|
SOLANA_HTTP_URL="https://api.mainnet-beta.solana.com"
|
||||||
DEVELOPER_CHAT_ID="777826553"
|
DEVELOPER_CHAT_ID="777826553"
|
||||||
# Niki's
|
# Niki's
|
||||||
# FOLLOWED_WALLET="9U7D916zuQ8qcL9kQZqkcroWhHGho5vD8VNekvztrutN"
|
# FOLLOWED_WALLET="9U7D916zuQ8qcL9kQZqkcroWhHGho5vD8VNekvztrutN"
|
||||||
|
@ -5,7 +5,7 @@ from flask import Flask, render_template, request, jsonify
|
|||||||
from solana.rpc.async_api import AsyncClient
|
from solana.rpc.async_api import AsyncClient
|
||||||
from solana.transaction import Signature
|
from solana.transaction import Signature
|
||||||
from solana.rpc.websocket_api import connect
|
from solana.rpc.websocket_api import connect
|
||||||
from solana.rpc.types import TokenAccountOpts
|
from solana.rpc.types import TokenAccountOpts, TxOpts
|
||||||
from solana.rpc.commitment import Confirmed
|
from solana.rpc.commitment import Confirmed
|
||||||
from solders.pubkey import Pubkey
|
from solders.pubkey import Pubkey
|
||||||
from dexscreener import DexscreenerClient
|
from dexscreener import DexscreenerClient
|
||||||
@ -56,19 +56,22 @@ def retry_last_log():
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Use the production Solana RPC endpoint
|
|
||||||
solana_client = AsyncClient("https://api.mainnet-beta.solana.com")
|
|
||||||
dexscreener_client = DexscreenerClient()
|
|
||||||
|
|
||||||
# Configuration
|
# Configuration
|
||||||
DEVELOPER_CHAT_ID = os.getenv("DEVELOPER_CHAT_ID")
|
DEVELOPER_CHAT_ID = os.getenv("DEVELOPER_CHAT_ID")
|
||||||
FOLLOWED_WALLET = os.getenv("FOLLOWED_WALLET")
|
FOLLOWED_WALLET = os.getenv("FOLLOWED_WALLET")
|
||||||
YOUR_WALLET = os.getenv("YOUR_WALLET")
|
YOUR_WALLET = os.getenv("YOUR_WALLET")
|
||||||
TELEGRAM_BOT_TOKEN = os.getenv("TELEGRAM_BOT_TOKEN")
|
TELEGRAM_BOT_TOKEN = os.getenv("TELEGRAM_BOT_TOKEN")
|
||||||
SOLANA_URL = os.getenv("SOLANA_NET_URL")
|
SOLANA_WS_URL = os.getenv("SOLANA_WS_URL")
|
||||||
|
SOLANA_HTTP_URL = os.getenv("SOLANA_HTTP_URL")
|
||||||
DISPLAY_CURRENCY = os.getenv('DISPLAY_CURRENCY', 'USD')
|
DISPLAY_CURRENCY = os.getenv('DISPLAY_CURRENCY', 'USD')
|
||||||
|
|
||||||
|
|
||||||
|
# Use the production Solana RPC endpoint
|
||||||
|
solana_client = AsyncClient(SOLANA_HTTP_URL)
|
||||||
|
dexscreener_client = DexscreenerClient()
|
||||||
|
|
||||||
|
|
||||||
# Initialize Telegram Bot
|
# Initialize Telegram Bot
|
||||||
bot = Bot(token=TELEGRAM_BOT_TOKEN)
|
bot = Bot(token=TELEGRAM_BOT_TOKEN)
|
||||||
|
|
||||||
@ -474,10 +477,48 @@ def perform_swap(input_token, output_token, amount):
|
|||||||
"error": str(e)
|
"error": str(e)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
from base58 import b58decode
|
||||||
from solders.pubkey import Pubkey
|
from solders.pubkey import Pubkey
|
||||||
from solders.transaction import Transaction
|
from solders.transaction import Transaction
|
||||||
from solders.signature import Signature
|
from solders.signature import Signature
|
||||||
|
|
||||||
|
async def get_transaction_details_rpc(tx_signature):
|
||||||
|
url = SOLANA_HTTP_URL
|
||||||
|
# url = 'https://solana.drpc.org'
|
||||||
|
headers = {"Content-Type": "application/json"}
|
||||||
|
data = {
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"id": 1,
|
||||||
|
"method": "getTransaction",
|
||||||
|
"params": [
|
||||||
|
tx_signature,
|
||||||
|
{
|
||||||
|
"encoding": "jsonParsed",
|
||||||
|
"maxSupportedTransactionVersion": 0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
# request = {
|
||||||
|
# "jsonrpc": "2.0",
|
||||||
|
# "id": 1,
|
||||||
|
# "method": "getConfirmedTransaction",
|
||||||
|
# "params": [
|
||||||
|
# tx_signature,
|
||||||
|
# "json"
|
||||||
|
# ]
|
||||||
|
# }
|
||||||
|
try:
|
||||||
|
response = requests.post(url, headers=headers, data=json.dumps(data))
|
||||||
|
response.raise_for_status() # Raises an error for bad responses
|
||||||
|
transaction_details = response.json()
|
||||||
|
|
||||||
|
if 'result' in transaction_details:
|
||||||
|
print(transaction_details['result'])
|
||||||
|
return transaction_details['result']
|
||||||
|
else:
|
||||||
|
print("Unexpected response:", transaction_details)
|
||||||
|
except requests.exceptions.RequestException as e:
|
||||||
|
print("Error fetching transaction details:", e)
|
||||||
|
|
||||||
|
|
||||||
async def save_log(log):
|
async def save_log(log):
|
||||||
@ -491,6 +532,7 @@ async def save_log(log):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.error(f"Error saving RPC log: {e}")
|
logging.error(f"Error saving RPC log: {e}")
|
||||||
|
|
||||||
|
|
||||||
async def process_log(log_result):
|
async def process_log(log_result):
|
||||||
if log_result['value']['err']:
|
if log_result['value']['err']:
|
||||||
return
|
return
|
||||||
@ -499,14 +541,24 @@ async def process_log(log_result):
|
|||||||
logs = log_result['value']['logs']
|
logs = log_result['value']['logs']
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|
||||||
|
try:
|
||||||
|
transaction = await get_transaction_details_rpc(tx_signature_str)
|
||||||
|
except Exception as e:
|
||||||
|
logging.error(f"Error fetching transaction details: {e}")
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Convert the base58 signature string to bytes
|
# Convert the base58 signature string to bytes
|
||||||
tx_signature = Signature(b58decode(tx_signature_str))
|
tx_signature = Signature(b58decode(tx_signature_str))
|
||||||
|
|
||||||
# Fetch transaction details
|
# Fetch transaction details
|
||||||
tx_result = await solana_client.get_transaction(tx_signature)
|
tx_result = await solana_client.get_transaction(tx_signature, max_supported_transaction_version=0)
|
||||||
if tx_result and tx_result.value:
|
#tx_result = await get_transaction_details(tx_signature_str)
|
||||||
transaction = Transaction.from_json(tx_result.value)
|
if tx_result.value is None:
|
||||||
message = transaction.message
|
logging.error(f"Transaction not found: {tx_signature_str}")
|
||||||
|
return
|
||||||
|
transaction = tx_result.value.transaction
|
||||||
|
|
||||||
for log_entry in logs:
|
for log_entry in logs:
|
||||||
if 'Program log: Instruction: Swap' in log_entry:
|
if 'Program log: Instruction: Swap' in log_entry:
|
||||||
@ -541,7 +593,7 @@ async def subscribe_to_wallet():
|
|||||||
"wss://rpc.ankr.com/solana",
|
"wss://rpc.ankr.com/solana",
|
||||||
"wss://mainnet.rpcpool.com",
|
"wss://mainnet.rpcpool.com",
|
||||||
]
|
]
|
||||||
uri = SOLANA_URL # wss://api.mainnet-beta.solana.com
|
uri = SOLANA_WS_URL # wss://api.mainnet-beta.solana.com
|
||||||
reconnect_delay = 5 # Start with a 5-second delay
|
reconnect_delay = 5 # Start with a 5-second delay
|
||||||
max_reconnect_delay = 60 # Maximum delay of 60 seconds
|
max_reconnect_delay = 60 # Maximum delay of 60 seconds
|
||||||
|
|
||||||
@ -606,14 +658,17 @@ async def subscribe_to_wallet():
|
|||||||
|
|
||||||
# Implement exponential backoff
|
# Implement exponential backoff
|
||||||
reconnect_delay = min(reconnect_delay * 2, max_reconnect_delay)
|
reconnect_delay = min(reconnect_delay * 2, max_reconnect_delay)
|
||||||
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
async def main():
|
async def main():
|
||||||
# Initialize logging
|
# Initialize logging
|
||||||
logging.basicConfig(level=logging.DEBUG)
|
logging.basicConfig(level=logging.DEBUG)
|
||||||
# logging.basicConfig(level=logging.INFO)
|
# logging.basicConfig(level=logging.INFO)
|
||||||
|
|
||||||
await send_telegram_message("Solana Agent Started. Connecting to mainnet...")
|
await send_telegram_message("Solana Agent Started. Connecting to mainnet...")
|
||||||
await subscribe_to_wallet()
|
#await subscribe_to_wallet()
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
|
||||||
|
190
crypto/sol/transactionExample.json
Normal file
190
crypto/sol/transactionExample.json
Normal file
@ -0,0 +1,190 @@
|
|||||||
|
{'blockTime': 1728035375, 'meta': {'computeUnitsConsumed': 128099, 'err': None, 'fee': 97127, 'innerInstructions': [
|
||||||
|
{'index': 4, 'instructions': [
|
||||||
|
{'accounts': ['7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'A1BBtTYJd4i3xU8D6Tc2FzU6ZN4oXZWXKZnCxwbHXr8x', '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', '8Ggb8th8pZv7eJbRmwkoyrDbSvwLPvMQN7QuHwjm113z', 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'BAxX7eMuSoxF8E4s1Xz5ukcLPHjvfC8Wv9JjSZci7tZ7', 'Gvjgjv63zcQxLbcG2iYF3vcJ2nudRLEffN6hoo8p6Ewy', 'HtsJ5S6K4NM2vXaWZ8k49JAggBgPGrryJ21ezdPBoUC6', 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb', 'MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr', 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'So11111111111111111111111111111111111111112', 'DeRo9XMsizey3KWBWS3LHomFC7ZDny1NkFMZUEHgyX8a', 'E6ef1fYRvZ8ejtbdwaK1CDNAgpJxkWZ2pQsL4jaShjNU', '423toqoYT7obTRx8qmwVAeYZfMFRxkwwDzRAwJBd86K3'
|
||||||
|
], 'data': 'ASCsAbe1UnDmvdhmjnwFdPMzcfkrayiNaFZ61j7FiXYFR5MbydQDnzNL', 'programId': 'CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK', 'stackHeight': 2
|
||||||
|
},
|
||||||
|
{'parsed': {'info': {'authority': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'destination': 'BAxX7eMuSoxF8E4s1Xz5ukcLPHjvfC8Wv9JjSZci7tZ7', 'mint': 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'source': '8Ggb8th8pZv7eJbRmwkoyrDbSvwLPvMQN7QuHwjm113z', 'tokenAmount': {'amount': '200000000000', 'decimals': 8, 'uiAmount': 2000.0, 'uiAmountString': '2000'
|
||||||
|
}
|
||||||
|
}, 'type': 'transferChecked'
|
||||||
|
}, 'program': 'spl-token', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'stackHeight': 3
|
||||||
|
},
|
||||||
|
{'parsed': {'info': {'authority': '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'destination': 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'mint': 'So11111111111111111111111111111111111111112', 'source': 'Gvjgjv63zcQxLbcG2iYF3vcJ2nudRLEffN6hoo8p6Ewy', 'tokenAmount': {'amount': '32677742', 'decimals': 9, 'uiAmount': 0.032677742, 'uiAmountString': '0.032677742'
|
||||||
|
}
|
||||||
|
}, 'type': 'transferChecked'
|
||||||
|
}, 'program': 'spl-token', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'stackHeight': 3
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
], 'logMessages': ['Program ComputeBudget111111111111111111111111111111 invoke [
|
||||||
|
1
|
||||||
|
]', 'Program ComputeBudget111111111111111111111111111111 success', 'Program ComputeBudget111111111111111111111111111111 invoke [
|
||||||
|
1
|
||||||
|
]', 'Program ComputeBudget111111111111111111111111111111 success', 'Program 11111111111111111111111111111111 invoke [
|
||||||
|
1
|
||||||
|
]', 'Program 11111111111111111111111111111111 success', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [
|
||||||
|
1
|
||||||
|
]', 'Program log: Instruction: InitializeAccount', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 3443 of 216550 compute units', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success', 'Program 6m2CDdhRgxpH4WjvdzxAYbGxwdGUz5MziiL5jek2kBma invoke [
|
||||||
|
1
|
||||||
|
]', 'Program log: Instruction: Swap2', 'Program log: order_id: 13978787684884160', 'Program log: Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'Program log: So11111111111111111111111111111111111111112', 'Program log: before_source_balance: 4000000000000, before_destination_balance: 0, amount_in: 200000000000, expect_amount_out: 32677742, min_return: 32350965', 'Program log: Dex: :RaydiumClmmSwapV2 amount_in: 200000000000, offset: 0', 'Program CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK invoke [
|
||||||
|
2
|
||||||
|
]', 'Program log: Instruction: SwapV2', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [
|
||||||
|
3
|
||||||
|
]', 'Program log: Instruction: TransferChecked', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 6147 of 124210 compute units', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [
|
||||||
|
3
|
||||||
|
]', 'Program log: Instruction: TransferChecked', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 6238 of 114194 compute units', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success', 'Program data: QMbN6CYIceJeJCSmnTHyq+UhngUSm2ZraA736ls33e54BtTmtKTck18ss0Ijtep7x/QSQpelS9R/BLJJV8nYbkzHEgl6DWzmCqjvYwJou4+wNqo6UT4zu+LS3la0rmchxYO/qAt1QCxsBkiWENlC+V3iQ+9YxPA6ubSXncmJFhG2+Ianct8/LW6f8gEAAAAAAAAAAAAAAAAA0O2QLgAAAAAAAAAAAAAAAKdp93ci1pDdTQAAAAAAAAC1GvfaoAMAAAAAAAAAAAAAQFQBAA==', 'Program CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK consumed 77136 of 178600 compute units', 'Program CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK success', 'Program data: QMbN6CYIceILANDtkC4AAABun/IBAAAAAA==', 'Program log: SwapEvent { dex: RaydiumClmmSwapV2, amount_in: 200000000000, amount_out: 32677742
|
||||||
|
}', 'Program log: 8Ggb8th8pZv7eJbRmwkoyrDbSvwLPvMQN7QuHwjm113z', 'Program log: icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'Program log: after_source_balance: 3800000000000, after_destination_balance: 32677742', 'Program log: source_token_change: 200000000000, destination_token_change: 32677742', 'Program 6m2CDdhRgxpH4WjvdzxAYbGxwdGUz5MziiL5jek2kBma consumed 121291 of 213107 compute units', 'Program 6m2CDdhRgxpH4WjvdzxAYbGxwdGUz5MziiL5jek2kBma success', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [
|
||||||
|
1
|
||||||
|
]', 'Program log: Instruction: CloseAccount', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 2915 of 91816 compute units', 'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success'
|
||||||
|
], 'postBalances': [
|
||||||
|
93712473,
|
||||||
|
0,
|
||||||
|
2039280,
|
||||||
|
72161280,
|
||||||
|
72161280,
|
||||||
|
1,
|
||||||
|
255325042163,
|
||||||
|
934087680,
|
||||||
|
1,
|
||||||
|
1141440,
|
||||||
|
1705200,
|
||||||
|
32092560,
|
||||||
|
13641600,
|
||||||
|
11637120,
|
||||||
|
9935565889,
|
||||||
|
2039280,
|
||||||
|
1009200,
|
||||||
|
1141440,
|
||||||
|
521498880,
|
||||||
|
617888496398,
|
||||||
|
1141440
|
||||||
|
], 'postTokenBalances': [
|
||||||
|
{'accountIndex': 2, 'mint': 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'owner': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'uiTokenAmount': {'amount': '3800000000000', 'decimals': 8, 'uiAmount': 38000.0, 'uiAmountString': '38000'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{'accountIndex': 14, 'mint': 'So11111111111111111111111111111111111111112', 'owner': '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'uiTokenAmount': {'amount': '9933526609', 'decimals': 9, 'uiAmount': 9.933526609, 'uiAmountString': '9.933526609'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{'accountIndex': 15, 'mint': 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'owner': '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'uiTokenAmount': {'amount': '2460142552127709', 'decimals': 8, 'uiAmount': 24601425.52127709, 'uiAmountString': '24601425.52127709'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
], 'preBalances': [
|
||||||
|
61131858,
|
||||||
|
0,
|
||||||
|
2039280,
|
||||||
|
72161280,
|
||||||
|
72161280,
|
||||||
|
1,
|
||||||
|
255325042163,
|
||||||
|
934087680,
|
||||||
|
1,
|
||||||
|
1141440,
|
||||||
|
1705200,
|
||||||
|
32092560,
|
||||||
|
13641600,
|
||||||
|
11637120,
|
||||||
|
9968243631,
|
||||||
|
2039280,
|
||||||
|
1009200,
|
||||||
|
1141440,
|
||||||
|
521498880,
|
||||||
|
617888496398,
|
||||||
|
1141440
|
||||||
|
], 'preTokenBalances': [
|
||||||
|
{'accountIndex': 2, 'mint': 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'owner': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'uiTokenAmount': {'amount': '4000000000000', 'decimals': 8, 'uiAmount': 40000.0, 'uiAmountString': '40000'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{'accountIndex': 14, 'mint': 'So11111111111111111111111111111111111111112', 'owner': '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'uiTokenAmount': {'amount': '9966204351', 'decimals': 9, 'uiAmount': 9.966204351, 'uiAmountString': '9.966204351'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{'accountIndex': 15, 'mint': 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'owner': '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'uiTokenAmount': {'amount': '2459942552127709', 'decimals': 8, 'uiAmount': 24599425.52127709, 'uiAmountString': '24599425.52127709'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
], 'rewards': [], 'status': {'Ok': None
|
||||||
|
}
|
||||||
|
}, 'slot': 293628136, 'transaction': {'message': {'accountKeys': [
|
||||||
|
{'pubkey': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'signer': True, 'source': 'transaction', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'signer': False, 'source': 'transaction', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': '8Ggb8th8pZv7eJbRmwkoyrDbSvwLPvMQN7QuHwjm113z', 'signer': False, 'source': 'transaction', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'DeRo9XMsizey3KWBWS3LHomFC7ZDny1NkFMZUEHgyX8a', 'signer': False, 'source': 'transaction', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': '423toqoYT7obTRx8qmwVAeYZfMFRxkwwDzRAwJBd86K3', 'signer': False, 'source': 'transaction', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': '11111111111111111111111111111111', 'signer': False, 'source': 'transaction', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'signer': False, 'source': 'transaction', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'signer': False, 'source': 'transaction', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'ComputeBudget111111111111111111111111111111', 'signer': False, 'source': 'transaction', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': '6m2CDdhRgxpH4WjvdzxAYbGxwdGUz5MziiL5jek2kBma', 'signer': False, 'source': 'transaction', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'A1BBtTYJd4i3xU8D6Tc2FzU6ZN4oXZWXKZnCxwbHXr8x', 'signer': False, 'source': 'lookupTable', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'HtsJ5S6K4NM2vXaWZ8k49JAggBgPGrryJ21ezdPBoUC6', 'signer': False, 'source': 'lookupTable', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'E6ef1fYRvZ8ejtbdwaK1CDNAgpJxkWZ2pQsL4jaShjNU', 'signer': False, 'source': 'lookupTable', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'signer': False, 'source': 'lookupTable', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'Gvjgjv63zcQxLbcG2iYF3vcJ2nudRLEffN6hoo8p6Ewy', 'signer': False, 'source': 'lookupTable', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'BAxX7eMuSoxF8E4s1Xz5ukcLPHjvfC8Wv9JjSZci7tZ7', 'signer': False, 'source': 'lookupTable', 'writable': True
|
||||||
|
},
|
||||||
|
{'pubkey': 'SysvarRent111111111111111111111111111111111', 'signer': False, 'source': 'lookupTable', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb', 'signer': False, 'source': 'lookupTable', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr', 'signer': False, 'source': 'lookupTable', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'So11111111111111111111111111111111111111112', 'signer': False, 'source': 'lookupTable', 'writable': False
|
||||||
|
},
|
||||||
|
{'pubkey': 'CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK', 'signer': False, 'source': 'lookupTable', 'writable': False
|
||||||
|
}
|
||||||
|
], 'addressTableLookups': [
|
||||||
|
{'accountKey': '6ggEfUA8Y2BPkrg6yP2yjjEZRhnF6TyBG8q5tHQvdb2C', 'readonlyIndexes': [
|
||||||
|
1,
|
||||||
|
4,
|
||||||
|
5,
|
||||||
|
41,
|
||||||
|
13
|
||||||
|
], 'writableIndexes': [
|
||||||
|
27
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{'accountKey': '9kvMXWLiSBfbGxxrripJP4qZzHatdSbadYCAbwTexN28', 'readonlyIndexes': [], 'writableIndexes': [
|
||||||
|
17,
|
||||||
|
18,
|
||||||
|
12,
|
||||||
|
13,
|
||||||
|
15
|
||||||
|
]
|
||||||
|
}
|
||||||
|
], 'instructions': [
|
||||||
|
{'accounts': [], 'data': 'JPb7uH', 'programId': 'ComputeBudget111111111111111111111111111111', 'stackHeight': None
|
||||||
|
},
|
||||||
|
{'accounts': [], 'data': '3VbWNdv4R831', 'programId': 'ComputeBudget111111111111111111111111111111', 'stackHeight': None
|
||||||
|
},
|
||||||
|
{'parsed': {'info': {'base': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'lamports': 2039280, 'newAccount': 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'owner': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'seed': '1728035372645', 'source': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'space': 165
|
||||||
|
}, 'type': 'createAccountWithSeed'
|
||||||
|
}, 'program': 'system', 'programId': '11111111111111111111111111111111', 'stackHeight': None
|
||||||
|
},
|
||||||
|
{'parsed': {'info': {'account': 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'mint': 'So11111111111111111111111111111111111111112', 'owner': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'rentSysvar': 'SysvarRent111111111111111111111111111111111'
|
||||||
|
}, 'type': 'initializeAccount'
|
||||||
|
}, 'program': 'spl-token', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'stackHeight': None
|
||||||
|
},
|
||||||
|
{'accounts': ['7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', '8Ggb8th8pZv7eJbRmwkoyrDbSvwLPvMQN7QuHwjm113z', 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'So11111111111111111111111111111111111111112', 'CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK', '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', '8Ggb8th8pZv7eJbRmwkoyrDbSvwLPvMQN7QuHwjm113z', 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'A1BBtTYJd4i3xU8D6Tc2FzU6ZN4oXZWXKZnCxwbHXr8x', '7LVHkVPVosXoWgH1PykWa5PjsfnyBviCdxC8ZUHJDy5U', 'BAxX7eMuSoxF8E4s1Xz5ukcLPHjvfC8Wv9JjSZci7tZ7', 'Gvjgjv63zcQxLbcG2iYF3vcJ2nudRLEffN6hoo8p6Ewy', 'HtsJ5S6K4NM2vXaWZ8k49JAggBgPGrryJ21ezdPBoUC6', 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb', 'MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr', 'Faf89929Ni9fbg4gmVZTca7eW6NFg877Jqn6MizT3Gvw', 'So11111111111111111111111111111111111111112', 'DeRo9XMsizey3KWBWS3LHomFC7ZDny1NkFMZUEHgyX8a', 'E6ef1fYRvZ8ejtbdwaK1CDNAgpJxkWZ2pQsL4jaShjNU', '423toqoYT7obTRx8qmwVAeYZfMFRxkwwDzRAwJBd86K3', '11111111111111111111111111111111'
|
||||||
|
], 'data': '3sRDYcTeC9Apf4dwtR12F5tp2Pc4P5tDNYNtKqVRGjUmVJ4pEyVYZdwph4vkfkgyChXffRuiYRUXchviqNRXfd5ok6ub9PQK', 'programId': '6m2CDdhRgxpH4WjvdzxAYbGxwdGUz5MziiL5jek2kBma', 'stackHeight': None
|
||||||
|
},
|
||||||
|
{'parsed': {'info': {'account': 'icV5K6iC8J7yyeP9YnJLH2jPRJYT7dBmzm844STxHkP', 'destination': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV', 'owner': '7QXGLRjvyFAmxdRaP9Wk18KwWTMfspF4Na2sr3o3PzxV'
|
||||||
|
}, 'type': 'closeAccount'
|
||||||
|
}, 'program': 'spl-token', 'programId': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'stackHeight': None
|
||||||
|
}
|
||||||
|
], 'recentBlockhash': 'C2H99uuxKQRWeTngCRZoNHbQ2nDBAA2Uhk2USp7tDX9Z'
|
||||||
|
}, 'signatures': ['3PZLedLDQTb7ddor3XmwbQQycBCgFfMDXHWBRd9rK7gekWTHWetnEGEGpZb6XFep7EbMZFrJweM3q1tkGygZDthB'
|
||||||
|
]
|
||||||
|
}, 'version': 0
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user