jsでnostrのbotを作るまでに躓いたこと
私について
齢18、基本的にC,C++しか書けない人です。jsについては過去にdiscordのbotを作ったことがある程度です。それと鬱なのでストレスがかかるとすぐ眠ってしまいます。
新鮮な躓き
現在進行系で躓きながら執筆しているので新鮮な躓きをお届けできると思います。なんという躓き!
08/29 12:30 環境構築に躓いた
dockerfileをFROM ubuntu:latestから書き始めました。一体何をやっているのでしょうか。結局「Hello, world!」にたどり着くまでに1時間かかりました。
08/29 13:30 小さいソースが見つからなくて躓いた
小さなソースを読んで(そしてコピペして)改造していくスタイルで進めようとしましたが、元になるソースが見つからなくて詰みました。
08/29 13:50 npm install nostr-toolsができなくて躓いた
そもそもnpmのことをよくわかってなかった。
dockerfileにて、WORKDIRしてnpm initしたら無事インストールできた。
08/29 14:00 nostr-toolsの使い方がわからなくて躓いた
サンプルの内容がわからないし、何故か投稿を探しても見つからない。
08/29 14:50 リレーサーバを間違えていて躓いた
wss://relay.nostr.wirednet.jpをwss://yabu.meに変えたら投稿が見つかった。
08/30 15:30 curlのjs版がわからなくて躓いた
PLaMoのAPIを叩こうと、curlコマンドをjsに変換するサイト(?)を使ったが動かなかった。fetchのbodyをstring型にしたら動いた。
08/31 13:10 投稿の取得で躓いた
nostr-toolsのrelay.subscribeが動かなかった。awaitをつけたら動いた。jsの並列処理(?)難しい...
08/31 14:30 投稿の重複を弾く方法がわからなくて躓いた
10秒毎にsubscribeを呼んでみた。jsのSetの仕様よくわからない。
追記:SnowCaitさんにsubscribeについて教えていただきました。どうやら仕様を勘違いしていたようです。まじで助かりました。ありがとうございます。
終わりに
色々と躓きましたが、最終的には完成させられたので良かったです。
私は3日間ほど掛かりましたが、優秀な人なら躓かずに数時間で作れたんだろうなあと思ったりしました。
この記事が気に入ったらサポートをしてみませんか?