1.3.1 • Published 2 years ago
@opensphere-inc/symbol-service v1.3.1
Symbol Service library
Symbol ブロックチェーン用の簡易ライブラリです。
内部的には Symbol SDK を使用します。
1. SymbolService クラス
コンストラクタ
const config: SymbolServiceConfig = {
node_url: "https://example.jp:3001",
fee_ratio: 0.0,
deadline_hours: 5,
batch_size: 100,
max_parallels: 10,
repo_factory_config: repoFactoryConfig as RepositoryFactoryConfig,
repo_factory: repoFactory as RepositoryFactoryHttp,
};
const symbolService = new SymbolService(config)引数
config: SymbolServiceConfignode_url: string- (Required) ノードURLfee_ratio: number- (Optional) トランザクション手数料率 (0.0 ~ 1.0, デフォルト 0.0)deadline_hours: number- (Optional) トランザクション有効期限(デフォルト 5 時間)batch_size: number- (Optional) Aggregate インナートランザクション最大数(デフォルト 100)max_parallels: number- (Optional) トランザクションアナウンス並列数(デフォルト 10)repo_factory_config: RepositoryFactoryConfig- (Optional) Symbol SDK の RepositoryFactoryHttp コンストラクタに渡すコンフィグrepo_factory: RepositoryFactoryHttp- (Optional) RepositoryFactoryHttp インスタンスそのもの
2. NecromancyService クラス
Aggregate Undead Transaction を取り扱うクラス
コンストラクタ
const config: NecromancyServiceConfig = {
deadlineUnitHours: 5,
deadlineMarginHours: 1,
};
const necromancyService = new NecromancyService(symbolService, config);引数
symbolService: SymbolService- SymbolService インスタンスconfig: NecromancyServiceConfig- 任意指定deadlineUnitHours: number- (Optional) Deadline を時分割する際の単位あたりの時間 (default:5)deadlineMarginHours: number- (Optional) Pick する際に持たせる余裕時間。 deadlineUnitHours + deadlineMarginHours がネットワークの制限を超えない事 (default:1)
3. NodeTracker クラス
コンストラクタ
const options: NodeTrackerServiceOptions = {
cachedNodes: [] as NodeStatistics,
cacheTimestamp: 12345678,
noWebSocketChallenge: false,
webSocketTimeout: 60000,
maxParallels: 10,
};
const nodeTracker = new NodeTrackerService(statsServiceURL, networkType, options);引数
statsServiceURL: string- Symbol Statistics Service の URL。Testnet:https://testnet.symbol.services/nodes, Mainnet:https://symbol.services/nodesnetworkType: NetworkType- Testnet:152, Mainnet:104option: NodeTrackerServiceOptions- (Optional)cachedNodes: NodeStatistics[]- (Optional)availableNodesをローカルキャッシュしていた場合はここで渡すcacheTimestamp: number- (Optional) ローカルキャッシュ作成日時(Unix時間ミリ秒)noWebSocketChallenge: boolean- (Optional) WebSocket 接続のチェックを行わない(その分高速)。デフォルトはfalsewebSocketTimeout: number- (Optional) WebSocket 接続のタイムアウト時間をミリ秒で指定。デフォルトは60秒maxParallels: number- (Optional) ヘルスチェックの同時実行数。デフォルトは10。 値を大きくするとヘルスチェックがスピードアップしますが、やりすぎると接続エラーが頻発する場合があります。 試した限りだと50位が限度かもしれません。
4. Logger ネームスペース
初期化
const config = {
log_level: Logger.LogLevel.INFO,
force_stderr: false,
}
Logger.init(config);引数
config- 任意指定log_level: Logger.LogLevel- (Optional) ログレベル(指定したレベル以上のログが出力)Logger.LogLevel.DEBUG- 全てのログLogger.LogLevel.INFO-info以上(デフォルト)Logger.LogLevel.WARN-warn以上Logger.LogLevel.ERROR-errorのみLogger.LogLevel.NONE- ログ出力無し
force_stderr: boolean- (Optional) 全ログの出力先を stderr に強制する(デフォルト false)
ビルド
yarn
yarn buildテスト
dot.env.test を編集して .env.test にリネームする。
ブロックチェーンにアクセスします。
NODE_URL=Replace your node URL
SIGNER1_PRIVATE_KEY=Replace your private key
PAYER_PRIVATE_KEY=Replace your private key
BATCH_SIZE=100
FEE_RATIO=0.35
MAX_PARALLELS=10yarn testライセンス
MIT ライセンスです。
1.3.1
2 years ago
1.3.0
2 years ago
1.2.11
2 years ago
1.2.9
3 years ago
1.2.10
3 years ago
1.2.0
3 years ago
1.2.8
3 years ago
1.2.7
3 years ago
1.2.6
3 years ago
1.2.5
3 years ago
1.2.4
3 years ago
1.2.3
3 years ago
1.2.2
3 years ago
1.2.1
3 years ago
1.1.5
3 years ago
1.1.4
3 years ago
1.1.3
3 years ago
1.1.2
3 years ago
1.1.1
3 years ago
1.1.0
3 years ago
1.0.9
3 years ago
1.0.8
3 years ago