My Node Description(α)
まだα版です。正式版になる予定は特にありません。
表示などで不具合があったらそのうち対応する可能性はあります。
My Node Descriptionとは?
Symbol / dHealthのノードの紹介を表示します。
大きく分けて、以下の点を表示します。
- ノード情報
- ノードからのメッセージ
- 委任ハーベスターのアドレス
なお、委任ハーベスターのアドレス横に、各Book……Book?サービスへのリンクが付与されています。
SymbolネットワークであればXEMBook、dHealthであればdHealth Bookへのリンクとなります。
(ごめんなさい。問題があれば撤去します)
指定ノードの表示方法について。
アドレスの末尾に?host=ホスト名を指定します。
また、対応ノードはさきの通り、SymbolまたはdHealthのメインネットのみ対応です。
例えば、SIXISで運用するノード(Symbol、dHealth)であれば、以下の指定方法で表示されます。
🏴☠️Symbol Node
https://mnd.sixis.xyz/?host=node.sixis.xyz
🚩dHealth Node
https://mnd.sixis.xyz/?host=dhealth.sixis.xyz
※ただし、dHealthはmetadataの設定が対応していないため、今のところ項目の取得予定はありません。
項目の意味について。
アプリケーション自体に説明がほぼないのと、僕の英語力は幼卒レベルです。
それにより申し訳ないですが、ここで項目の説明をします。
Node information.項目について。
項目名 | 意味 |
Host. | Host。そのまま。 |
Friendly name. | Friendly name.そのまま。 |
Network. | network種類が表示されます。 |
SSL. | SSL対応について。Alreadyが対応済みです。 |
Maximum harvesters. | 最大ハーベスター数。 |
Priority policy. | 重要度(IMP)か、先着順(AGE)か。 英語表現がこれでいいかはわかりません。 |
Introduction. | 短文の紹介メッセージを表示します。 |
Detail URL. | ノードの詳細を記したURLです。 |
Receipt speed. | レシート取得スピードをHighかNormalで表しています。 レシート取得スピードについて欄外にて。 |
SNS | SNSのアイコンとリンクを表示します。 現在はTwitterとNEMLOGに対応しています。 |
Mail. | 連絡用メールアドレスが表示されます。 |
※ Receipt speedについて。
「もしノードを再構築するようなことがあればMongoDBインデックスの見直しをお願いします」が適用されているかどうかの指標です。
具体的な判定基準は、1秒以内に回答されるかどうかで判断しています。
Node message.項目について。
ノード運用者からの自由メッセージを表示します。
Markdown形式のテキストファイルのあるパスを指定してください。
Harvester addresses.について。
委任しているハーベスターのアドレスを表示します。
画像の例の通り、各アドレスの横に○○Bookのリンクを表示しています。
SymbolネットワークであればXEMBook、dHealthであればdHealthBookが表示されます。
その他、Address filter:の欄にアドレスを入力することで、絞り込み表示が可能です。
各データの設定方法について。
ここまで登場した各項目などの設定方法についてです。
ノードの/node/metadataにアクセスした際、json形式のメタデータを返す必要があります。
/node/metadataについては
RESTゲートウェイに任意のJSON拡張情報をもたせるnodeMetadata設定
REST「ゲートウェイに任意のJSON拡張情報をもたせるnodeMetadata設定」のすくりぷとをつくってみたのぉ🌺
RESTゲートウェイのnodeMetadata設定を楽にするツールを作ってみた
このあたりの参照をお願いします。
MNDでは、この中で”mnd”以下に定義したものを対象としています。
まずは設定例として以下(弊ノード)。
ex. https://node.sixis.xyz/node/metadata
書式としては以下の通りとなります。
※画像項目のみ、長いため空欄にしてあります。
{ “mnd”: { “maxHarvesterQ”: 9999, “twitterID”: “lynx2lion”, “introduction”: “ブロックチェーンの未来を夢見て、何かしらの活動を行います。”, “detailUrl”: “https://www.sixis.xyz/?p=31”, “delePrioritizationPoricy”: “IMP”, “nemlogProfileUrl”: “https://nemlog.nem.social/profile/3837”, “profileImgBase64”: “”, “headerImgBase64”: “”, “detailMDUrl”: “https://nodeinfo.sixis.xyz/nodeDetail.md”, “mailAddress”: “node@sixis.xyz” } } |
項目名 | 型 | 値 |
maxHarvestersQ | 数値 | 委任ハーベスターの受け入れ最大数。 Node information.のMaximum harvesters. |
twitterID | 文字 | TwitterID。 Node information.のSNS.に表示。 |
introduction | 文字 | 紹介文。 Node information.のIntroduction.。 |
detailUrl | 文字 | 詳細URL。 Node information.のdetail URL.。 |
delePrioritizationPoricy | 文字 | 委任ハーベスターの優先度。 Node information.のPriority policy.。 IMPかAGE。がいい。 |
nemlogProfileUrl | 文字 | nemlogのプロフィールURL。 Node information.のSNS.に表示。 |
profileImgBase64 | 文字 | 後述。 |
headerImgBase64 | 文字 | 後述。 |
detailMDUrl | 文字 | Node message.に表示するMarkdownファイルパス。 |
mailAddress | 文字 | メールアドレス。 Node information.のMail.。 |
profileImgBase64, headerImgBase64について。
My Node Descriptionの画面上部には画像が表示されています。
基本画像はこんな感じです。
設定するとこのようになります。
キャラクターのアイコンがprofileImgBase64、背景がheaderImgBase64です。
各内容に、表示したい画像のBase64化したものを指定してください。
それだけです。ええ、それだけです。。。
その他注意事項について。
現状はこの設定(/node/metadataの設定)をしていただく以外の設定方法はありません。
他の設定方法を取るかどうかも未定です。
また、/node/metadataはhttpsでアクセスされた場合はhttpsで拾いにいきますし、httpでアクセスされた場合はhttpで拾いにいきます。
リクエストがあれば、こちらの試行方法の変更を行います。
すべてはやる気と状況次第。
最後に。
閲覧いただきありがとうございます。
本アプリケーションはFlutterで構築されました。
何かありましたら、Twitterでお知らせください。