Amazon Echoから送金指示する→Ethereum上で寄付できる!


未完です。すみません。すみません。

やりたいこと

  • スマートコントラクトを実行したい
    • 実行者(機械、プログラム)自身がウォレットを持たずに。
  • 選んだユースケース

実装方針

  • 基本機能は、lambdaで
  • OAuthのAPIと送金指示のAPIを持つウォレットを外部に用意
    • bitgoを利用
  • アレクサスキルを触ってみる
    • アカウントリンク機能
    • lambdaとの連携

他案

  • lambda上にウォレット(鍵)を持つ必要があるかもしれない
  • ウォレットやライブラリの選定
    • MyEthWallet
      • APIが貧相
    • blockoneID
      • OAuthない

このくらいを想定して手をつけ始めました。

alexaの情報収集

  • https://developer.amazon.com/ja/alexa-skills-kit/training/building-a-skill
    • だいたいこれで用が足りる
  • 必要なこと
    • amazon 開発者コンソールで、アレクサスキルの開発
    • AWS console でlambda の開発
    • s3との連携
      • lanbda の関数コードは、bitgo, alexa-sdkでだいぶん大きくなるので、zipにしてs3からlambdaへ
  • 注意
    • 第5回のアカウントリンク機能のテストにおいて、説明が飛んでいるが、iphoneなどのalexaアプリに、アレクサスキルの開発を行っているアカウントでログインすると
    • 有効なスキルにDEVスキルというタブがあるので、そこで公開していないスキルもアクセスできる
    • ここでアカウントリンク(OAuth)の動作及びテストを行える
    • サービスシミュレータはアカウントリンク機能には未対応

bitgoの情報収集

  • https://www.bitgo.com/api/v2/
    • API v2
    • eth扱える
    • 日本語訳コミットしたい
  • https://bitgo.github.io/bitgo-docs/
  • テスト環境
    • https://test.bitgo.com/login
    • テスト環境では、webインターフェースでethが扱える(TETH表記)
    • ethereumのネットワークは、kovan-testnet
  • Ethの扱い
    • ethereumはウォレット作成からfeeが必要なので、アカウントにダイレクトにひもづくEnterprise(組織、くらいの意味)の設定をし、残高を持つ必要がある
  • 注意
    • kovan-testnetでのethの取得
      • https://github.com/kovan-testnet/faucet
      • Icarus Faucet
        • parityをインストールし、productionでアカウント認証をすると、testnetのethをもらえる
        • が、ここが大変 - parityのインストールからproduction との同期→半日以上かかる - productionでのアカウント認証に、リアルなEthが必要 - ハマるので避けるが吉
      • Gitter Channel
        • こちらにbotがいるので、アドレスを発言するとethをくれる。
    • OAuthのclient_idの取得
      • ここで止まっている。webインターフェースにOAuth設定の項目がありそうなものだが、見当たらない。
      • 問い合わせ回答待ち