EGO-LOG

40代2児の父。主にプログラム学習と開発、仮想通貨、メタバース、たまに関係ないことを綴る。

discordのbotを作ってみるよ【環境構築編】

ジェネラティブNFTの学習もままならないのに、 Discordのbotづくりを軽率に試してみようかなと。 まずは決められた文言に返信するbotから。 参考サイトは↓ gafuburo.net qiita.com Botのアカウント作成 discordapp.com アプリケーション名(bot名)を入力し…

【Discord】bot [Carl Bot]でロール一括管理

今回もDiscordのbotの話。 前回、MEE6のレベル機能を導入した。 で、ある程度のレベルに達したらロールを付与して、そのロールを持っていたらURLを書き込めるようになる。 これは、新規ユーザがむやみにURLを貼らせないようにするため。 レベルアップ時に自…

【Discord】bot [MEE6]でレベル制導入

前置き 先日Discordにbot MEE6を導入した。 目的はいくつかあるが、1つは認証ロール。 サーバに参加した時に、認証ボタンを押さないと他のチャンネルが見えない場合があったら、そのサーバは認証ロールの設定がされている。(MEE6とは限らない) その手順に…

【Discord】CollabLandの設定の見直し(openseaの場合)

ちょっと前に、DiscordでCollablandというBotを使用して、 NFTホルダーのみがアクセスできるチャンネル設定を記事にした。 tenomeuonome.hateblo.jp この中でCommandCenterで、ロールに対して対象となるNFTを設定したのだが、 設定が誤っていたのでここで訂…

【NFT】ジェネラティブNFTを学ぶ - 4.コントラクト作成(テストネット版) -

前回は生成した画像データをPinataというサービスにアップロードした。 アップロードで取得したアドレスからメタデータを作成し同様にアップロードした。 tenomeuonome.hateblo.jp 今回はNFT発行やMintのルールを定義する「コントラクト」の作成を行う。 目…

【NFT】ジェネラティブNFTを学ぶ - 3.画像、メタデータアップロード -

前回、ジェネラティブ画像作成のための設定と、実際の生成までテストを行った。 tenomeuonome.hateblo.jp 今回は生成した画像をアップロードする。 一緒にメタデータもアップロードする。 今回も、というかずっとこちらのサイトを参考にというかなぞってます…

【NFT】ジェネラティブNFTを学ぶ - 2.ジェネラティブ画像を生成 -

前回 ジェネラティブNFT開発の準備として環境構築を行った。 tenomeuonome.hateblo.jp 今回も以下のページを参考にしていきます。 (誰でもできる!ジェネラティブNFT開発 第2章) crypto-code.jp 目次 1.プロジェクトの初期設定 VSCodeでArt Engineのプロ…

【NFT】ジェネラティブNFTを学ぶ - 1.環境構築編 -

ジェネラティブNFT発行できるように勉強していきます。 参考サイトはこちら crypto-code.jp まずは環境構築から。 目次 1.必要になる開発環境 HashLips Node.js Visual Studio Code Remix - Etherium IDE Pinata 2.HashLipsプログラムのダウンロード 3…

【NFT】Soul Bound Tokenでは魂を縛れない【SBT】

NFTといえば、通常は購入したものを転売して二次流通することができる。 これにより転売のロイヤリティから利益を得られる。 だが、最近提唱された新しいNFTのカタチとして「Soul Bound Token」というものがある。 nft-japan.works これは、一度受け取ったら…

【thirdweb】ミントサイト作成

前置き ミントサイトを作りたい。 ググっていたら以下のページが参考になりそう。 nf-times.com thirdwebを使うらしい。以前ちょっと触ってみたけど1ミリも理解できず。 今回は参考ページを元にやっていきたい。 目次 前置き ウォレットの準備 ガス代 コレク…

DiscordとBotを学ぶ - NFTホルダーのみ入れるチャンネルの設定 -

はじめに コミュニケーションツールにDiscordというのがあって、 管理者がサーバを自由に作成でき、 メインはチャットでの書き込み、音声でのやり取りもできる。 テーマごとにチャンネルを分けて、話題の管理も可能。 discord.com 目的 今回は、特定のNFTを…

リボーク(revoke)でNFTを守ろうの回(未遂)

NFT

大事なNFTをハッキングから守るためにできることの一つがrevoke。 目次 参考サイト approveとは approveの初期設定 revoke revokeしてみる ウォレット接続 NFTsを選択 見知らぬNFTがhiddenに 参考サイト omochi-bigaku.com www.youtube.com おもち先生の声が…

Laravel投稿サイト構築.91 -音声キャスト機能実装 1.録音機能確認-

今回から音声による読みあげ機能(キャストと呼ぶ)を実装していく。 仕様はこんな感じ。 テーマのタイトル、テーマの内容、返信の内容について音声を読み上げる。 投稿した本人はキャストできない。 複数のユーザがキャスト投稿できる(いずれ承認制にする…

Laravel投稿サイト構築.90 -IPアドレスによるアクセス制限-

前回、お題機能の実装を完了。 音声機能に入る前に、IPアドレスでのアクセス制御を組み込む。 Botによる書き込みが見られるようなので。 参考サイト leben.mobi ミドルウェア作成 ----- php artisan make:middleware BlockIpAddressMiddleware ----- ↓に作成…

Laravel投稿サイト構築.89 -お題機能 表示-

前回、管理画面でのお題登録、削除を実装した。 今回はトップ画面にお題を表示する。 Modelに関数追加 現在日時が有効期限を過ぎていないお題のみ取得する関数 ----- public function get_themes_limit(){ $themes = Theme::select([ 't.id as theme_id', 't…

Laravel投稿サイト構築.88 -お題機能 管理画面-

前置き 前回調整周りの作業を行った。 今回からいよいよ音声機能へーと予告していたのだが、 もう1機能追加したい。 それがはてなブログにもある「お題」機能。 サイトに何か書き込んでと言われても、おおまかなお題がないと、 書き込んでもらいにくいので…

Laravel投稿サイト構築.87 -パスワード再設定メール調整/書き込みIP記録/通信制限-

前回はパスワードを忘れた際の画面のデザイン調整、日本語化を行った。 目次 パスワードリセット用メールの文言を日本語化 書き込んだユーザのIPアドレスを記録 migration model Controller 連続アクセスの抑制 パスワードリセット用メールの文言を日本語化 …

Laravel投稿サイト構築.86 -パスワード再設定画面の調整-

ちょっと空いてしまいましたが、開発してた投稿サイトの構築を再開。 tenomeuonome.hateblo.jp 友人にサイトを紹介して、そこでテーマを投稿してほしい、 要はサクラになってほしいとお願いしたのですが。 しばらくしてこんな連絡がきた。 「パスワードが違…

CryptoZombiesにSolidityを学ぶ Lesson.3 (完)

スマートコントラクトを構築するための言語solidity 言語をブラウザで遊びながら学ぶCryptoZombie 前回はLesson.3 Chapter.5まで。 tenomeuonome.hateblo.jp 続きやっていきます。 目次 Lesson.3 Chapter.6 structを引数として渡す Lesson.3 Chapter.7 Lesso…

CryptoZombiesにSolidityを学ぶ Lesson.3 (chapter.5まで)

スマートコントラクトを構築するための言語solidity 言語をブラウザで遊びながら学ぶCryptoZombie 前回でLesson2を終えた。 tenomeuonome.hateblo.jp 今回はLesson.3をやっていきます。 目次 ガイドライン Lesson.3 Chapter.1 イミュータブル 外部依存関係 L…

CryptoZombiesにSolidityを学ぶ Lesson.2(完)

スマートコントラクトを構築するための言語solidity 言語をブラウザで遊びながら学ぶCryptoZombie 前回はLesson2. chapter.8まで tenomeuonome.hateblo.jp 続きをやっていきます。 目次 Lesson2 / Chapter9 internal external Lesson2 / Chapter10 interface…

CryptoZombiesにSolidityを学ぶ Lesson.2(chapter.8まで)

スマートコントラクトを構築するための言語solidity 言語をブラウザで遊びながら学ぶCryptoZombie 前回の学習記録は4月末なので3が月半ほど空いてしまった。 tenomeuonome.hateblo.jp 思い出しついでにLesson2以降をやっていきます。 あんまり細かく記録して…

ジェネラティブNFTを試してみる [step.1 thirdwebを使ってみる]

NFT

件名の通り。 専門知識が無くてもできるもんなのか?やってみる。 目次 参考サイト Thirdweb テストネットでThirdwebを試す 参考サイト www.ine-oke.com hide.ac Thirdweb ジェネラティブNFTの生成にはThirdwebを使用する。 ThirdWebの概要 ユーザーが「一行…

NFTオークションのプレッシャーで首を寝違えた話

NFTオークションにまつわるしょうもないエピソード。 目次 はじまり 熱意と落札予想 開始直後の動き 膠着状態 悪夢と身体的ダメージ 安堵と新たな焦り ついに動きが、ジャブを放つ 勝利への妄想 大型動物の群れに曳かれる 最後のあがき K.O. 感想 今後 はじ…

【NFT】Discordコミュニティは作品への偏見を溶かす場【DAO】

NFT関連でいくつかのDiscordコミュニティに入っていて。 最初からNFTコレクションの作風が好きだったり、 音声配信で紹介されていたり、 WL目当てだったりと入るきっかけは様々。 入っても最初に挨拶したっきりで何も発言しないところもあれば、 毎朝必ず挨…

Laravel投稿サイト構築.85 -いいね機能の実装.5(いいね数の表示)-

前回は、いいねのON/OFFの切り替えを実装した。 今回はおまけみたいなものだけど、いいね数の表示を実装する。 いいね機能についてはこれで終了とする。 目次 モデルファイル修正 bladeファイル修正 javascriptファイル修正 動作確認 まとめ モデルファイル…

Laravel投稿サイト構築.84 -いいね機能の実装.4(いいね切替)-

前回 いいねボタンを押したら、非同期でいいねテーブルにいいね情報を登録する。 解除はまだできない。 目次 bladeファイル修正 js ファイル修正 動作確認 bladeファイル修正 ----- @if( $thread->isLike($thread->thread_id) ) {{-- いいね済 --}} <a class="toggle_like" thread_id="{{$thread->thread_id}}" like_val="1"><img src="{{ asset('image\like_on.svg') }}" class="icon_like" /></a>@else…

Laravel投稿サイト構築.83 -いいね機能の実装.3(ボタン配置・基礎動作確認)-

前回は、いいね機能実装でコントローラ作成とルーティングの追記。 まだいいね機能の動作確認はできていない。 目次 基本動作確認 ボタン配置 javascript関数作成 まとめ 基本動作確認 まず、単純にボタンを配置して機能を確認する。 ボタン配置 bladeファイ…

MoveToEarn体験 中間報告

現在、アプリに入っているmove to earn のアプリは sweatcoin Aglet の2つ。 それぞれ数か月試した感触を書いてみる。 目次 sweatcoin 特徴 上場時期 開始日 経過期間 取得コイン 感想 Aglet 特徴 上場時期 開始日 経過期間 取得コイン 感想 まとめ sweatco…

Laravel投稿サイト構築.82 -いいね機能の実装.2(コントローラ作成)-

前回はイイネ機能実装のための準備。 テーブルの作成とモデルの作成。 目次 モデル関数追加 コントローラー作成 ルーティング追記 モデル関数追加 イイネした際に、likesテーブルにデータ追加する。 イイネ解除した際に、likesテーブルからデータを削除する…