paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。

logo

ITエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。

ノーコードでNFTやガス代を定期取得&通知できるDiscordボット開発サービス「Boto」を使ってみた!

どうも、まさとらん(@0310lan)です!

今回は、ノーコードでNFTコレクションやガス代価格などの情報を定期的に通知してくれるDiscordボットの開発サービスをご紹介します!

他にも、ウォレットのトランザクション情報を取得するなど、さまざまなデータを活用したボットを手軽に開発できるのが特徴です。ご興味ある方はぜひ参考にしてください!

Boto


■「Boto」の使い方

それでは、「Boto」をどのように使えばいいのか詳しく見ていきましょう!

まずはサイトのトップページにある【Try Boto】ボタンをクリックして無料のユーザー登録を済ませておきます。


登録フォームが表示されたら、メールアドレスとパスワードを設定しましょう。(※Googleアカウントでのログインも可)

登録したメールアドレス宛に認証リンクが送付されるので、クリックして完了させてください。


最終的に以下のようなダッシュボード画面が表示されたら準備は完了です!

この画面から独自のボット作成・管理ができるようになっています。

また、簡易的なアナリティクス機能、ボットのテンプレート、公式ドキュメントなども提供されているのでひと通り確認しておきましょう。

■「Boto」をDiscordに招待しよう!

「Boto」を利用してDiscordボットを開発するには、まず最初に「Boto」を自分のDiscordサーバーに招待する必要があります。

そこで、ダッシュボードの左メニューにある「Knowledge Center」のリンクをクリックしてください。


ユーザーガイドのリンク内に「How to add Boto into Discord?」というリンクがあるのでクリックします。


表示されたドキュメント内に「招待リンク」が記載されているので、これをクリックしてください(※あらかじめDiscordへログインしておきましょう)。


すると、自分のDiscordサーバーと「Boto」を連携する画面が表示されます。

招待したいサーバーを選択して【はい】をクリックしてから認証を完了させましょう。


認証を済ませると、以下のように「Boto」が提供するボットが常駐するようになります。


最後にDiscordのチャットからメールアドレスを認証しておきましょう。

すでに「/auth」コマンドが利用できる状態になっているので、チャット欄からコマンドを入力してメールアドレスを設定します。

ちなみに、ここで設定するメールアドレスは「Boto」のアカウントを作成したときのメールアドレスにする必要があるので注意してください。

専用のチャンネルを作成して登録するのが分かりやすくてオススメです。


コマンドを実行すると「認証が完了しました」という以下のようメッセージが表示されます。

あとは独自のボットを開発すれば、すぐにでもDiscord上から実行できるようになります。

■ガス代を通知するボットを作ってみよう!

ここからは「Boto」を利用して簡単なボットを作りながら、どのような機能が提供されているのかを詳しくご紹介していきます!

サンプル例として、Ethereumのガス代を定期的に通知してくれるDiscordボットを開発してみましょう。


最初にダッシュボード画面から【Create】ボタンをクリックして、新規ボットの作成を開始します。


【Create New Boto】を選択します。


ボット開発用の専用エディタが表示されます!

基本的な使い方としては、中央のキャンバスへさまざまな機能を提供するブロックを配置して繋げていくだけです。

ボットが通知する内容についても、ごく普通のテキストエディタで編集していくので誰でも扱えるシンプルな操作体系が大きな特徴と言えます。


今回はガス代を通知するボットを開発するので、まずは右側のメニューから【ETH Gas Tracker】というブロックをドラッグ&ドロップでキャンバスに配置します。


次に【Discord】ブロックを同じように配置しましょう。


ブロックの端に付いているポイントをドラッグ&ドロップすると、お互いのブロック同士を接続できます。

接続ができたら、これでガス代のデータが【Discord】ブロックに流れるようになります。


あとは【Discord】ブロックの設定をするだけです。

必要な設定としては2つありまして、1つ目は「Channel ID」です。これは入力ボックスをクリックして表示される英数字を選択します。

この英数字はDiscordの「チャンネルID」になっており、どのチャンネルにボットが通知をするのかを設定するわけです。先ほどDiscordのコマンドから「/auth」を実行しましたが、そのときに利用したチャンネルIDが自動的に取得される仕組みになっています。


2つ目の設定項目は「Message」です。

ここに入力した内容がDiscordへ通知されることになります。今回はひとまず3種類のガス代を表示するようにしてみましょう。

「Slow」「Average」「Fast」それぞれのガス代を取得して表示する内容です。


このテキストエディタ上で、半角英数字の # を入力してみましょう。すると取得可能なガス代のデータ候補が表示されます。

今回利用するデータとしては以下のとおりです。

  • slow_gas
  • average_gas
  • fast_gas


取得するデータの単位は「Gwei」になるので、「Message」の中身は以下のようになります。


ちなみに単位が「Gwei」だと分かりづらいので、ドルに換算した値も取得したい場合は末尾に「usd」が付与されているデータを一緒に表示するとベストです。


最後に「Title」に好きな名称を入力して、編集エディタ上部のプロジェクト名も変更しておくといいでしょう。

ここまでの作業でボットの開発は完了です!

たったこれだけの作業ですが、定期的にガス代を通知してくれるDiscordボットが完成しました。


「Boto」には簡易的なテスト機能があるので試してみましょう。

【Discord】ブロックの上部にある以下のアイコンをクリックしてください。

すると「Message」の項目に記載したテキストの内容がDiscordのチャンネルに送信されます。

このテストは、あくまでも設定したテキストが正常に送信されるかを確かめるだけなので、実際のガス代は表示されない点に注意してください。

■ボットを定期実行してみよう!

それでは先ほど作ったボットを定期的に実行させてみましょう!

エディタ上部にあるタイマー設定で、ボットが実行される間隔を変更できます。

「minutes(分)」「hours(時)」「days(日)」の3種類が提供されており、自分の好きな間隔を設定可能です。(※間隔を短くし過ぎると通知が大量に届くので要注意)


設定できたら、すぐ横にあるスイッチをONにしてみましょう。


指定した時間になったら、Discord上にガス代が通知されるようになります!

このままでも問題ありませんが、ドルの小数点が多くて見づらいので修正しましょう。


ボットの編集エディタに戻り、取得するデータの設定アイコンをクリックすると小数点以下の表示設定が可能です。


これで少し見やすくなりました。


さらに、「Boto」のテキストエディタはマークダウンのように太字を使ったり、Discordの絵文字を利用したりなどの装飾も可能です(通知のカラー設定も可)。


これで、さらに通知が見やすくなりましたね。

■お気に入りのNFTコレクションを通知する

今度は「Opensea」からの情報を取得して、お気に入りのNFTコレクションを定期的にチェックできるようにしてみましょう。

作り方は「ガス代通知ボット」のときとほとんど同じです。


まずは【OpenSea - NFT Collection】ブロックをキャンバスに配置します。


続けて【Discord】ブロックも配置しておきましょう。

2つのブロックは接続しておくことを忘れないようにしてください。


次に「Opensea」からどのNFTコレクションを取得するかを設定しなければいけません。そのためには「Slug」設定が必要です。

これは「Opensea」のNFTコレクションページを表示したときのURL末尾の英数字を意味しています。


例えば、データを取得したいNFTコレクションのページURLが以下の場合だったとします。

https://opensea.io/collection/boredapeyachtclub

上記の場合、Slugは「boredapeyachtclub」になります。


あとは、「Collection Slug」の箇所にそのまま貼り付ければOKです!


次に【Discord】ブロックですが、「Channel ID」は同じように候補から選択するだけです。

「Message」も同様に # を入力して表示される候補から、どんなデータを取得したいかを決めていきます。

NFTコレクションから取得できるデータとしては、以下のようなものがあります。

  • 名前・作成日・概要・URL
  • NFT平均価格・最低価格
  • 時価総額
  • ホルダーの総数
  • 販売数・支払平均価格・取引量
  • NFT総数・取引総量

など…


「Title」や「Title URL」などのデータも取得できるので設定しておくと便利です。

最後に実行間隔を設定して、ボットをONにすれば完成です!


以下のような感じでNFTコレクションの情報が通知されます。

ただし、取引が一切なかった場合などは実行されないので注意してください。


このように「Boto」を利用すると、誰でも手軽にユニークなボットを開発できるので非常に便利です。

「Boto」の公式ドキュメントには、ボットの作成事例もたくさん掲載されているので参考にしてみてください。以下はその一例です。

  • NFTの売上をDiscordへ通知する
  • OpenSeaのリスティングをDiscordに通知する
  • ウォレットのトランザクション情報をDiscordに通知する
  • ウォレットからトークン残高をメールで通知する
  • Uniswapの新規プール情報をDiscordに通知する
  • NFTが設定価格を下回ったらメール通知する

など…

■動画でプログラミングが学べるpaizaラーニング


動画でプログラミングが学べるpaizaラーニングでは、Python、Java、C言語、C#、PHP、Ruby、SQL、JavaScript、HTML/CSSなど、プログラミング初心者でも動画で学べる入門レッスンを公開しています。

このたび人気の「Python入門編」が全編無料となりました。他にもいろいろな動画レッスンを無料公開しておりますので、エンジニア・非エンジニアにかかわらず、プログラミングを学びたい方はぜひごらんください。

paizaラーニングについて詳しくはこちら
paizaラーニング

■まとめ

今回は、誰でも簡単にNFTやEthereumのデータを取得して通知できるボットの開発サービスをご紹介しました。

まだリリースされたばかりのサービスなので、現在も活発に改善やアップデートが行われています。新機能も追加されていくはずなので、ボット開発やNFT関連の情報収集にご興味ある方はぜひ試してみることをオススメします。

独自のボットを作成してDiscordのコミュニティを盛り上げるのも楽しいかもしれません。


<参考リンク>





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック

paizaのおすすめコンテンツ

Webセキュリティ入門 ハッカー入門 Webセキュリティ講座がスタート!CVは内田真礼さん! Python✕AI 機械学習入門講座 CVに上坂すみれさんを起用!人気の機械学習講座を公開中!
paiza転職 paiza新卒 EN:TRY paizaラーニング 記事内に記載している情報は、記事公開時点でのものとなります。 Copyright Paiza, Inc, All rights reserved.