【UmbrelでもOK】メッセージ付きKeySendで分散型コミュニケーションしてみよう!
今年に入ってLightning関係がますます盛り上がってきたなぁと思っています。あ、相場は置いといて…
お手軽なUmbrelでLightningノードを構築する人も増えてきたと思うので、せっかく独自のノードを運用していてチャネルも張っているのならばそのネットワークを活用してみよう!的な記事です。
そもそもKeySendとは何ぞや?という方はyuyaさんの記事等読んでもらえばOKです!(丸投げ)
久し振りに記事を書いてたらちょっとめんどくさくなってきたのでサクッと書きますが、自分側から一方的に相手ノードに送金ができるKeySend(相手がオンライン状態であるという制限はある)にさらにメッセージを乗っけてみようって感じです。
・追記
ちなみにメッセージ無しKeySendであればThunderHubから送金することができます。
嘘でした、ThunderHubの右上からできるそうです
以下の内容はコマンド打ちたい人向けになります。
何らかのタイミングで履歴が消える現象が有るらしいです
今回のようにKeySendにメッセージを付けて送金する場合ですが、RTL/ThunderHub等でも対応してないっぽい?のでSSHからlncliでコマンドを~…というのも一から始めるにはちょっと面倒です。
そこでUmbrelを使っている場合ならappsの中のLightning shellをインストール&起動します。
これでSSHの接続~を省けるので、Lightning ShellにKeySendのコマンドを打っていきます。
以下のコマンドで【】内は適宜変えてください。
※【】←は不要です、例を参考にしてください。
・コマンド
lncli sendpayment --dest 【送金先のノードID】 --amt 【送金するSats数】 --data 34349334=【16進数に変換したメッセージ】 --keysend
・コマンド例(あくまで例です、このまま使わないでね)
送金先→ランダムで選んだCitron?というノード
送金額→500Satoshi
メッセージ→「初めまして、いい天気ですね」
lncli sendpayment --dest 0259b771e6004c8f55665dbb54524b6a615c1cb4c50129c6c8058d3d1e32544448 --amt 500 --data 34349334=e381a9e38193e4bd8fe381bfefbc9fe381a6e3818b4c494e45e38284e381a3e381a6e3828befbc9f --keysend
--dataの後の数字「34349334」というのはカスタムTLVフィールドとかいう自分にはよく分らんやつです、件名というかデータの内容的な何かと思うのでメッセージの場合は上記の末尾334(な阪関!)で行きましょう。
肝心のメッセージ内容の16進数化ですが私は以下のサイトで変換しました。
今回はLightning Shellで試しましたがもちろんSSHで接続して同じコマンドを打っても大丈夫なはずです。
てなわけでKeySendにメッセージを乗せてノード間でのコミュニケーションが取れる?かもという記事でした。
チャネル開いてくれたけどAMBOSSなどでSNSのリンクが無くてノードIDくらいしか分からない場合にはこちらでメッセージを送ってみるのもありかも!
BOSテレグラムを導入しているノードであればテレグラムでメッセージが受け取れるので返信が期待できるかも
(BOSテレグラムに関してはDEFYOさんの記事を是非)
この他にもKeySendのメッセージを活かしたSphinxというナイスなLappsもあるのでお好きな方は是非試してみてね!
bosでやるならコマンドラインはこうなる
bos send <ノードID> --amount <金額> --message "送りたいメッセージ"