SuperAPI AI 工具集

broadcast-arc

编程与开发

查看项目

更新于 10-15 17:23

技能介绍

用途:广播已签名的 BSV 交易,通过 @bsv/sdk 使用 ARC 协议提交。ARC 是 BSV 的生产级广播器,可同时连接多个节点、接受扩展格式(EF)交易以校验脚本与费用、返回带 txStatus 的结构化状态、支持确认事件回调 webhook,并自动处理重播。

主要能力:提供两个公开端点——GorillaPool(https://arc.gorillapool.io,主网公开测试,无需 API Key,开发默认)与 TAAL(https://api.taal.com/arc,需从 console.taal.com 获取 API Key,生产可用)。支持 ArcConfig 高级配置,包括 apiKey、callbackUrl、callbackToken、deploymentId 和自定义 headers。设置 callbackUrl 后,ARC 会在交易进入内存池(SEEN_ON_NETWORK)、打包(MINED)或双花(DOUBLE_SPEND_ATTEMPTED)时 POST 回调,回调体含 txid、txStatus、blockHash、blockHeight。

使用方式:基本用法为 const result = await tx.broadcast(new ARC('https://arc.gorillapool.io')),TAAL 需传入 API Key。广播器内部调用 tx.toHexEF(),EF 包含源交易数据以便校验;若 EF 序列化失败则回退原始 hex。批量广播用 broadcaster.broadcastMany([tx1, tx2, tx3]),提交到 /v1/txs,结果可能部分成功部分失败。BEEF 交易可用 Transaction.fromBEEF(beefBytes) 或 Transaction.fromHexBEEF(beefHex) 解析后广播。脚本用法:bun run skills/broadcast-arc/scripts/broadcast.ts <tx-hex>,BEEF 加 --beef,TAAL 加 --key 与 --url。

限制与注意:错误码 200 成功、409 已存在(应视为成功)、422 无效交易、465 累计费用过低、473 双花。txStatus 取值包括 STORED、ANNOUNCED_TO_NETWORK、SEEN_ON_NETWORK、MINED、SEEN_IN_ORPHAN_MEMPOOL、DOUBLE_SPEND_ATTEMPTED。相关技能有 wallet-brc100、wallet-send-bsv、decode-bsv-transaction。