completed
Blocklog linked Leader status and Epoch leader notification service - Multilingual Support and Maintenance.
Current Project Status
Complete
Amount
Received
₳73,810
Amount
Requested
₳80,520
Percentage
Received
91.67%
Solution

Detect updates of Guild-db (sqlite3) with a python script and notify the status to any platform (Discord/Telegram/Slack/LINE).

Problem

When checking the leader status of the “blocklog” developed by Guild Operators (block generation result or next epoch slot leader), it is necessary to log in to the server and check it each time.

Feasibility
Value for money
Impact / Alignment

Team

3 members

Blocklog linked Leader status and Epoch leader notification service - Multilingual Support and Maintenance.

Please describe your proposed solution.

<u>Development Background</u>

The existing block generation notification Telegram Bot (Pooltool Bot and cexplorer Bot) only notifies the user of those that have been adopted into the blockchain, so it was necessary to log in to the server each time to check for missed, stolen, or ghosted transactions.

SPO always checks the generation results according to the block generation schedule, which is very time-consuming when the number of schedules is large.

Automatic notification eliminates this time-consuming task.

Also, even if you are out of the office or at work and cannot log in to the server, you can always check the status of block generation by receiving notifications on your smartphone.

We developed the Japanese version for SPO JAPAN GUILD (Japanese SPO community) two years ago, and now we are proposing to make it multilingual so that SPOs around the world can use it and offer one-year maintenance.

<u>Script Specifications</u>

We have created a script that detects updates to Guild-db (sqlite3) by an always-on Python script and notifies any platform (Discord/Telegram/Slack/LINE).

<u>Leader Status Notification</u>

Approximately 10 minutes after the assigned schedule, Guild-db will detect an update and notify the following

Status.

Time.

Block No.

Slot No.

PootTool URL.

Next scheduled time.

Status > confirmed

Image file

Status > stolen

Image file

Status > ghosted

Image file

Status > missed (Sample)

Image file

<u>Next Epoch Leader Schedule List Notification</u>

If the acquisition of leader logs by koios API is set to “Y”(Yes) in cncli.sh, the next epoch schedule is automatically acquired and the list is notified when a randomly assigned Slot after 302400 slots has passed.

Image file

<u>開発背景</u>

既存のブロック生成通知Telegram Bot(Pooltool Botやcexplorer Bot)は、ブロックチェーンに採用されたもののみ通知するため、ギルドオペレーターズが開発したブロックログのリーダーステータス(ブロック生成結果や次エポックのスロットリーダー)を確認する場合、missed、Stolen、Ghostedについては毎回サーバーにログインして確認する必要がありました。

SPOは常にブロック生成スケジュールに沿って生成結果を確認するため、スケジュール数が多い場合はとても手間がかかります。

自動的に通知することでこの作業の手間を省きます。

また、外出中や仕事中などサーバーにログイン出来ない場合でも、スマートフォンに通知することで常にブロック生成状態を確認することが出来ます。

2年前にSPO JAPAN GUILD(日本人SPOコミュニティ)向けに日本語版で開発しましたが、今回多言語化して世界中のSPOが使えるようにし、1年間のメンテナンスを提案します。

<u>スクリプト仕様</u>

常時起動されたPythonスクリプトでGuild-db(sqlite3)の更新を検知し、任意のプラットフォーム(Discord/Telegram/Slack/LINE)に通知するスクリプトを作成しました。

<u>リーダーステータス通知</u>

割り当てられたスケジュールの約10分後、Guild-dbの更新を検知して以下の内容を通知します。

Status

時間

ブロックNo

スロットNo

PootTool URL

次のスケジュール時間

Status > confirmed

Image file

Status > stolen

Image file

Status > ghosted

Image file

Status > missed (Sample)

Image file

<u>次エポックリーダースケジュール一覧通知</u>

cncli.shにてkoios APIによるリーダーログ取得がYesになっている場合、302400スロット以降でランダムに割り当てられたSlotを過ぎると自動的に次のエポックスケジュールを取得し、一覧を通知します。

Image file

How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?

Automatically retrieving the status of each slot reader schedule eliminates the need to log in to the server and improves the daily maintenance of the SPO.

スロットリーダースケジュールごとのステータスを自動的に取得することで、サーバーへログインする手間を省き、SPOの日々のメンテナンス性を向上させます。

How do you intend to measure the success of your project?

We will receive requests from the community regarding implementation of new functions and feedback on bugs on Github and perform maintenance.

Githubでコミュニティからの新機能実装に関する要望や、バグのフィードバックを受け付けメンテナンスを実行していきます。

Please describe your plans to share the outputs and results of your project?

We will share the results on our website, Github, and Twitter.

Github、Twitterで成果を共有します。

<https://twitter.com/spojapanguild>

What is your capability to deliver your project with high levels of trust and accountability?

This tool has already been used by SPO JAPAN GUILD for the past two years.

BTBF, the operator SPO JAPAN GUILD, began stake pool operations on July 30, 2020 and launched this community in August of the same year, three years ago this year.

<https://docs.spojapanguild.net/changelogs/>

In the past, documentation has always been kept up-to-date.

(The information here is based on changes made after the transition to the new platform.)

Other Experience

Server Engineering 6 years

Web system development 18 years

このツールはすでにSPO JAPAN GUILDで過去2年間使用されています。

このコミュニティの運営者であるBTBFは2020年7月30日にステークプール運営を開始し、同年8月に当コミュニティを立ち上げ今年で3年が経ち

これまで、ドキュメントは常に最新の状態に保たれてきました。

(ここでの情報は新プラットフォームへの移行後に変更されたものを掲載しています)

<https://docs.spojapanguild.net/changelogs/>

その他の経験

サーバーエンジニアリング 6年

WEBシステム開発 18年

What are the main goals for the project and how will you validate if your approach is feasible?

Creation of English version of installation guide.

Notification content multilingual implementation

Developing and Implementing new feature requests from the community.

Regular maintenance.

Pre-release verification.

インストールガイド英語版の作成

通知内容多言語化実装

コミュニティからの新機能要望の開発と実装

定期メンテナンス

リリース前の検証

Please provide a detailed breakdown of your project’s milestones and each of the main tasks or activities to reach the milestone plus the expected timeline for the delivery.

<u>Major Tasks</u>

Multilingual implementation

  • Code improvement by implementing multilingualization of notification content.
  • Pre-release verification.
  • Creation of English version of installation guide.

Annual maintenance

  • Implementation of new feature requests from the community.(Including English support)
  • Regular maintenance(Bug fixes)
  • Pre-release validation.

<u>Milestones</u>

Milestone 1: Month 1 Multilingual implementation and Annual maintenance Maintenance

Milestone 2: Month 2 Continuation of the Annual maintenance

Milestone 3: Month 3 Continuation of the Annual maintenance

Milestone 4: Month 4 Continuation of the Annual maintenance

Milestone 5: Month 5 Continuation of the Annual maintenance

Milestone 6: Month 6 Continuation of the Annual maintenance

Milestone 7: Month 7 Continuation of the Annual maintenance

Milestone 8: Month 8 Continuation of the Annual maintenance

Milestone 9: Month 9 Continuation of the Annual maintenance

Milestone 10: Month 10 Continuation of the Annual maintenance

Milestone 11: Month 11 Continuation of the Annual maintenance

Milestone 12: Month 12 Continuation of the Annual maintenance

<u>主なタスク</u>

多言語化実装

  • 通知内容多言語化実装によるコード改善
  • リリース前検証
  • インストールガイド英語版の作成

年間メンテナンス

  • コミュニティからの新機能要望実装(英語サポート含む)
  • 定期メンテナンス(バグ対応など)
  • リリース前の検証

<u>マイルストーン</u>

マイルストーン1:1ヶ月目 多言語化実装と年間メンテナンス

マイルストーン2:2ヶ月目 年間メンテナンスの継続

マイルストーン3:3ヶ月目 年間メンテナンスの継続

マイルストーン4:4ヵ月目 年間メンテナンスの継続

マイルストーン5:5ヶ月目 年間メンテナンスの継続

マイルストーン6:6ヵ月目 年間メンテナンスの継続

マイルストーン7:7ヵ月目 年間メンテナンスの継続

マイルストーン8:8ヶ月目 年間メンテナンスの継続

マイルストーン9:9ヵ月目 年間メンテナンスの継続

マイルストーン10:10ヵ月目 年間メンテナンスの継続

マイルストーン11:11ヵ月目 年間メンテナンスの継続

マイルストーン12:12ヶ月目 年間メンテナンスの継続

Please describe the deliverables, outputs and intended outcomes of each milestone.

<u>Milestone 1</u>

  • Version control on Github.
  • Create an installation and usage guide on Github
  • Announce the release on Twitter.
  • Submit Monthly Report
  • Submit Proof of Achievement

<u>Milestone 2~11</u>

  • Version control on Github.
  • Announce the release on Twitter.
  • Submit Monthly Report
  • Submit Proof of Achievement

<u>Milestone 12</u>

  • Version control on Github.
  • Announce the release on Twitter.
  • Submit Monthly Report
  • Submit Proof of Achievement
  • Submit Proof of Project Report
  • Submit Proof of Demonstration Video

<u>マイルストーン 1</u>

  • Githubでバージョン管理
  • Githubでインストール・使用ガイドの作成
  • Twitterでリリースアナウンス
  • Monthly Reportの送信
  • Proof of Achievementの送信

<u>マイルストーン 2~11</u>

  • Githubでバージョン管理
  • Twitterでリリースアナウンス
  • Monthly Reportの送信
  • Proof of Achievementの送信

<u>マイルストーン 12</u>

  • Githubでバージョン管理
  • Twitterでリリースアナウンス
  • Monthly Reportの送信
  • Proof of Achievementの送信
  • Proof of Project Reportの送信
  • Proof of Demonstration Videoの送信

Please provide a detailed budget breakdown of the proposed work and resources.

Breakdown of major tasks :

<u>Multilingualization implementation $1,925</u>

Code improvement 30hrs * $35 = $1,050

Pre-release verification 20hrs * $35 = $700

Creation of English version of installation guide 5hrs * $35 = $175

<u>Annual maintenance $17,400</u>

New feature requests from the community ( 20hrs per Month * $35 *) **12 Months = $8,400

Regular Maintenance ( 10hrs per Month * $35 ) *12 Months = $4,200

Pre-release validation ( 10hrs per Month * $35 *) **12 Months = $4,200

1 validation server $50 * 12 Months = $600

Total budget $19,325

Total budget in ADA: 80,520

At a price of $0.24 per ADA

Labor cost per hour $35

主なタスクの内訳

<u>多言語化実装 $1,925</u>

コード改良 30時間 * $35 = $1,050

リリース前検証 20時間 * $35 = $700

インストールガイド英語版の作成 5時間 * $35 = $175

<u>年間メンテナンス $17,400</u>

コミュニティからの新機能要望実装 ( 20時間/月 * $35 ) * 12 Months = $8,400

定期メンテナンス ( 10時間/月 $35 ) 12 ヶ月間= $4,200

リリース前の検証 ( 10時間/月 * $35 ) * 12 ヶ月間 = $4,200

検証サーバー1台 $50 * 12 Months = 600

総予算 $19,325

ADAの総予算: 80,520

ADAあたり0.24ドル計算

時間あたりの人件費 $35

Who is in the project team and what are their roles?

<u>Project execution and management</u>

BTBF X-StakePool

More than 2 years of experience as an SPO.

Developer of this Tool.

<u>Verification and tester</u>

Sakakibara 日本壱プール(1JPN)

AKYO AKYO🥁(AKYO)

More than 2 years of experience as an SPO.

He supports numerous SPOs within the discord community and also verify new technologies and work with a high degree of contribution.

<u>プロジェクト実行・管理</u>

BTBF X-StakePool

SPOとして2年以上の経験。当ツールの開発者。

<u>検証・テスター</u>

Sakakibara 日本壱プール(1JPN)

AKYO AKYO🥁(AKYO)

SPOとして2年以上の経験。

ディスコード・コミュニティ内で数多くのSPOをサポートするほか、新技術の検証や貢献度の高い仕事も行っています。

How does the cost of the project represent value for money for the Cardano ecosystem?

The average hourly wage for freelance server engineers in Japan is $28.

This project requires specialized knowledge of Cardano and translation, so we estimate $35 per hour.

This tool has already been used by dozens of SPOs and has reduced maintenance time.

日本でのフリーランスサーバーエンジニアの平均時給は$28です。

このプロジェクトはカルダノにおける専門的な知識と翻訳が必要なため 1時間あたり$35と設定しました。

このツールは既に数十名のSPOが活用しており、メンテナンス時間の削減を実現しています。

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00