意識と感情
はじめに@yutakikuchi_です。 人間の心は非常に複雑で、多くのことに感動したり、悲しんだり。または目標を持って自分の意志で行動するなど、心にも多くの要素があるかと思います。この投稿では心の中でも特に「意識」と「感情」の要素について僕自身が普段考えていることを書きます。特に僕自身の経験で書いている部分が多く、学術的に何かを参考にして書いたものではないので、言葉の使い方や解釈が誤っている可能性はあります。意識と感情の違いと関係意識と感情の2つは関連があるものの、基本的には異なるものであると考えています。それぞれをWikipediaで調べてみると、 意識とは「起きている状態にあること(覚醒)」または「自分の今ある状態や、周囲の状況などを認識できている状態のこと」を指す。 日本語では、「ある物事について注意を払っている」という意味で「意識する」、「考え方や取り組み方について努力が行われている」といったことを表す場合「意識が高い(または低い)」といった言い方がなされる感情とはヒトなどの動物がものごとや対象に対して抱く気持ちのこと。喜び、悲しみ、怒り、諦め、驚き、嫌悪、恐怖などがあ...
Polygon ScanのAPI調査
はじめに@yutakikuchi_ です。 BlockChainのTransaction履歴を見れる xxscanは見たことある方多いと思いますが、履歴を見るだけではなく、Transactionのデータを自動で引っ張ってきて処理を行うなど後続の処理を自動化したい場合はAPIを利用する良いと思います。 ETHとPolygonのAPIは下記がDocumentとなっています。ざっとAPI Documentを見た感じ、EndpointのBaseとなるURLは異なるものの、EndpointのPath, Interfaceともに同じ構成になっているようです。 https://docs.etherscan.io/api-endpoints/accounts https://docs.polygonscan.com/api-endpoints/accountsPolygon ScanのAPIで特定ContractのEvent listを取得するまずはじめに、Polygon ScanのAPIを利用するには、下記の作業を行う必要があります。Polygon scan上にアカウント登録。こちらからAPI...
- Yuta Kikuchi(菊池佑太) - Do&Do., inc. - https://corp.doando.club/
意識と感情
はじめに@yutakikuchi_です。 人間の心は非常に複雑で、多くのことに感動したり、悲しんだり。または目標を持って自分の意志で行動するなど、心にも多くの要素があるかと思います。この投稿では心の中でも特に「意識」と「感情」の要素について僕自身が普段考えていることを書きます。特に僕自身の経験で書いている部分が多く、学術的に何かを参考にして書いたものではないので、言葉の使い方や解釈が誤っている可能性はあります。意識と感情の違いと関係意識と感情の2つは関連があるものの、基本的には異なるものであると考えています。それぞれをWikipediaで調べてみると、 意識とは「起きている状態にあること(覚醒)」または「自分の今ある状態や、周囲の状況などを認識できている状態のこと」を指す。 日本語では、「ある物事について注意を払っている」という意味で「意識する」、「考え方や取り組み方について努力が行われている」といったことを表す場合「意識が高い(または低い)」といった言い方がなされる感情とはヒトなどの動物がものごとや対象に対して抱く気持ちのこと。喜び、悲しみ、怒り、諦め、驚き、嫌悪、恐怖などがあ...
Polygon ScanのAPI調査
はじめに@yutakikuchi_ です。 BlockChainのTransaction履歴を見れる xxscanは見たことある方多いと思いますが、履歴を見るだけではなく、Transactionのデータを自動で引っ張ってきて処理を行うなど後続の処理を自動化したい場合はAPIを利用する良いと思います。 ETHとPolygonのAPIは下記がDocumentとなっています。ざっとAPI Documentを見た感じ、EndpointのBaseとなるURLは異なるものの、EndpointのPath, Interfaceともに同じ構成になっているようです。 https://docs.etherscan.io/api-endpoints/accounts https://docs.polygonscan.com/api-endpoints/accountsPolygon ScanのAPIで特定ContractのEvent listを取得するまずはじめに、Polygon ScanのAPIを利用するには、下記の作業を行う必要があります。Polygon scan上にアカウント登録。こちらからAPI...
Share Dialog
Share Dialog
- Yuta Kikuchi(菊池佑太) - Do&Do., inc. - https://corp.doando.club/

Subscribe to Y's note

Subscribe to Y's note
<100 subscribers
<100 subscribers
ab3株式会社で代表をやっています、菊池佑太(@yutakikuchi_)と申します。 Mirrorでのblog投稿は初めてになりますが、これからはガンガン利用していきたいと思っています。
ab3株式会社ではリアルライフのログに着目したtoC向けのアプリとPlatformを開発しています。開発中の「BeLife」というアプリで普段の行動に関するデータを登録すると、そのデータをBlockChainに書き込んだり、データからNFTアートを生成したり、纏めるとlog to earnのような世界を目指しています。
BeLifeというアプリはPC, Smartphoneなど、様々なデバイスからアクセス可能なアプリとして提供予定で、Flutterで開発しており、2022/06月中には正式にリリース予定となっています。
BeLifeはある意味Dappsという位置づけになり、(厳密に言うと違いますが) ユーザーがSmartPhoneで使うことを想定しています。このSmartPhone向けのDappsから任意のWalletをDeepLinkなどで呼び出して、NFTのmintなどをBlockChainに対して行う例をここでは紹介します。使うものはFlutterと関連Package、WalletConnect、Metamaskになります。下記ではWalletConnectとFlutterでの実装について書きます。
WalletConnectとは一言でいうとDappsとWalletを簡単に接続するためのプロトコルであると言えます。任意のDappsから任意のWalletを呼び出すことができ、Dappsからのsessionの中でWalletを経由したsendtransactionが可能です。
例えばWallet機能が無いDappsがBlockChainに対してデータの書き込みなどを行おうとすると、一般的には特定のWalletアプリを経由して行う必要がありますが、世の中の事例的にDappsがPC版で作られるケースが多く、Google検索してもSmartPhone向けの記事はほとんど出てこないです。特に日本語でのドキュメントはほとんど無いと言えます。(PC版ChromeからMetamaskの拡張機能を呼び出す仕組みはそれなりにドキュメントで見ますが、これがNativeのアプリからMetamaskを呼び出すとなるとほとんど事例が出てきません。)
WalletConnectは 下記 walletconnect.comにて展開されるプロトコルであり、自身でサーバーなどを立てる必要がありません。HTTPとWebsocketを活用して、DappsとWalletをsessionとして接続を確立させ、このsession上でDappsからの操作をWallet側に伝達をする仕組みになっています。
なぜWalletConnectを使うのかという背景はこちらのNoteにまとまっています。一言でいうとMetamaskへの一般的なDeepLinkは簡単なtransactionしか送れないため、これをwalletconnectでsessionにして、NFT mintなど複雑なtransactionにも対応可能にします。

FlutterでWalletConnectのsessionを活用してNFT mintなどのtransactionを送る場合は下記のpackageを必要とします。
walletconnect_dartでDappsとWalletとのsessionを確立し、web3dartでsession上でtransactionを送付します。挙動的には Dapps → walletconnect → Wallet(接続確認) → Dapps → Wallet(Transaction送付確認)となります。
これらの処理を実装する上では上記2点のpackageであるpub.devに公開されているexampleが参考になります。特にweb3dartは様々なトランザクションを作成、送付できるので、実装前に一度見ておくと良いと思います。SmartContractを呼び出す部分は下記が参考になります。
https://github.com/xclud/web3dart/blob/development/example/contracts.dart
**またサンプルとなるSessionの確立とsendtransactionのソースコードの一部(すみません、全部では無いので適宜補間が必要です)**を下記のgistに貼っておきました。下記の処理WalletConnectのsession上でPolygon(Mumbai)にDeployされた独自のSmartContractを呼び出し、NFTをmintしています。
https://gist.github.com/yutakikuchi/407e1e5fc4522c57d63fe16a46c633bf
一点だけ注意が必要なこととして、上記のコードを実行するに当たり、WalletConnectEthereumCredentialsのclassが必要になるので、左記のリンクからコピペします。
質問がある方は @yutakikuchi_ までDMでお願いいたします。全てには答えられないかもしれませんが、なるべく見ます。
ab3株式会社で代表をやっています、菊池佑太(@yutakikuchi_)と申します。 Mirrorでのblog投稿は初めてになりますが、これからはガンガン利用していきたいと思っています。
ab3株式会社ではリアルライフのログに着目したtoC向けのアプリとPlatformを開発しています。開発中の「BeLife」というアプリで普段の行動に関するデータを登録すると、そのデータをBlockChainに書き込んだり、データからNFTアートを生成したり、纏めるとlog to earnのような世界を目指しています。
BeLifeというアプリはPC, Smartphoneなど、様々なデバイスからアクセス可能なアプリとして提供予定で、Flutterで開発しており、2022/06月中には正式にリリース予定となっています。
BeLifeはある意味Dappsという位置づけになり、(厳密に言うと違いますが) ユーザーがSmartPhoneで使うことを想定しています。このSmartPhone向けのDappsから任意のWalletをDeepLinkなどで呼び出して、NFTのmintなどをBlockChainに対して行う例をここでは紹介します。使うものはFlutterと関連Package、WalletConnect、Metamaskになります。下記ではWalletConnectとFlutterでの実装について書きます。
WalletConnectとは一言でいうとDappsとWalletを簡単に接続するためのプロトコルであると言えます。任意のDappsから任意のWalletを呼び出すことができ、Dappsからのsessionの中でWalletを経由したsendtransactionが可能です。
例えばWallet機能が無いDappsがBlockChainに対してデータの書き込みなどを行おうとすると、一般的には特定のWalletアプリを経由して行う必要がありますが、世の中の事例的にDappsがPC版で作られるケースが多く、Google検索してもSmartPhone向けの記事はほとんど出てこないです。特に日本語でのドキュメントはほとんど無いと言えます。(PC版ChromeからMetamaskの拡張機能を呼び出す仕組みはそれなりにドキュメントで見ますが、これがNativeのアプリからMetamaskを呼び出すとなるとほとんど事例が出てきません。)
WalletConnectは 下記 walletconnect.comにて展開されるプロトコルであり、自身でサーバーなどを立てる必要がありません。HTTPとWebsocketを活用して、DappsとWalletをsessionとして接続を確立させ、このsession上でDappsからの操作をWallet側に伝達をする仕組みになっています。
なぜWalletConnectを使うのかという背景はこちらのNoteにまとまっています。一言でいうとMetamaskへの一般的なDeepLinkは簡単なtransactionしか送れないため、これをwalletconnectでsessionにして、NFT mintなど複雑なtransactionにも対応可能にします。

FlutterでWalletConnectのsessionを活用してNFT mintなどのtransactionを送る場合は下記のpackageを必要とします。
walletconnect_dartでDappsとWalletとのsessionを確立し、web3dartでsession上でtransactionを送付します。挙動的には Dapps → walletconnect → Wallet(接続確認) → Dapps → Wallet(Transaction送付確認)となります。
これらの処理を実装する上では上記2点のpackageであるpub.devに公開されているexampleが参考になります。特にweb3dartは様々なトランザクションを作成、送付できるので、実装前に一度見ておくと良いと思います。SmartContractを呼び出す部分は下記が参考になります。
https://github.com/xclud/web3dart/blob/development/example/contracts.dart
**またサンプルとなるSessionの確立とsendtransactionのソースコードの一部(すみません、全部では無いので適宜補間が必要です)**を下記のgistに貼っておきました。下記の処理WalletConnectのsession上でPolygon(Mumbai)にDeployされた独自のSmartContractを呼び出し、NFTをmintしています。
https://gist.github.com/yutakikuchi/407e1e5fc4522c57d63fe16a46c633bf
一点だけ注意が必要なこととして、上記のコードを実行するに当たり、WalletConnectEthereumCredentialsのclassが必要になるので、左記のリンクからコピペします。
質問がある方は @yutakikuchi_ までDMでお願いいたします。全てには答えられないかもしれませんが、なるべく見ます。
No activity yet