lushdog@outlook.com 1 týždeň pred
rodič
commit
b84cc61b4b
1 zmenil súbory, kde vykonal 13 pridanie a 4 odobranie
  1. 13 4
      src/solana/openPositionListener.ts

+ 13 - 4
src/solana/openPositionListener.ts

@@ -167,17 +167,26 @@ export function listenOpenPosition(
 			}
 		}
 
-		// 如果没找到,使用默认索引 7 作为后备
+		// 如果没找到,使用默认索引 8 作为后备
 		if (!positionAccount && accounts && accounts.length > 7) {
-			positionAccount = accounts[6]
-			positionAccountIndex = 6
+			positionAccount = accounts[8]
 		}
 
 		// 如果有 positionAccount,通过 API 获取详细信息
 		// 延迟100秒后获取,因为positionAccount可能还没被写入 
 		await new Promise(resolve => setTimeout(resolve, 100 * 1000))
 
-		const positionDetails = positionAccount ? await fetchPositionDetails(positionAccount) : undefined
+		let positionDetails = positionAccount ? await fetchPositionDetails(positionAccount) : undefined
+		// 如果positionDetails为空,则分别尝试accounts[6]和accounts[7] accounts[9] 
+		if (!positionDetails && accounts && accounts.length > 6) {
+			positionDetails = await fetchPositionDetails(accounts[6])
+		}
+		if (!positionDetails && accounts && accounts.length > 7) {
+			positionDetails = await fetchPositionDetails(accounts[7])
+		}
+		if (!positionDetails && accounts && accounts.length > 9) {
+			positionDetails = await fetchPositionDetails(accounts[9])
+		}
 		if (!positionDetails) {
 			console.log('positionAccountIndex', positionAccountIndex)
 			// console.log('找不到地址', JSON.stringify(tx, null, 2))