3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

InCaaaan:印鑑マシーンの作り方 超概要編

Posted at

#InCaaaanとは?
こちらの動画でどんなことができるかを解説しているのでご確認ください(雑)
ヒーローズリーグ広島予選にて、運良く?勝ち抜き、決勝で東京に行くも無冠に終わるという悔しさの反動で本記事を書きつつ、作品の説明よりもどう作られたか、を中心に書いていきます。

#全体的なシステム構成は?
スクリーンショット 2019-12-06 12.33.04.png
##部下が使うツール

  1. LINE上でWebを表示して精算申請を行う
    • **部1-1.**IBM CloudのNode-REDで、リクエストをうけたらHTMLコンテンツをレスポンスする
    • **部1-2.**LINE Front-end Frameworkを活用して、部1-1のコンテンツを表示する
  2. LINE上でWebに入力されて、送信されたデータを扱う
    • **部2-1.**IBM CloudのNode-REDで、部1で申請されたリクエストを受信する。その後、Kintone APIを経由してKintone上に作成した帳票に保存する

##上司が使うツール

  1. 電子型押印に申請があったことを通知する
    • **上1-1.**KintoneにWebhoookを設定し、レコードが追加されたWebhookでAWS API Gatewayを呼び出す
    • **上1-2.**AWS API GatewayからLamdaファンクションを呼び出し、リクエストに格納されているKintoneに保存されたレコードのレコードID、申請したユーザのLINE名、LINE ID、申請金額などを取得して、IBM CloudのNode-REDにデータをPOSTする
    • **上1-3.**IBM CloudのNode-REDでリクエストを受付、CloudMQTTを使ってレコードIDとLINE名をパブリッシュする
    • **上1-4.**M5StickCをCloudMQTTに接続し、特定のタイトルでパブリッシュされたメッセージを受信した場合に、メッセージをLCDに表示する
  2. 押印するモーションで承認を行う
    • **上2-1.**M5StickCに加速度Y軸1.5Gの重力が加わると、CloudMQTTを使ってLCDに表示されているレコードIDとLINE名をパブリッシュする
    • **上2-2.**IBM CloudのNode-REDで特定のタイトルでパブリッシュされたメッセージを受信する。メッセージの受信後、ObnizのWebhookとKintone APIにリクエストを送信する
  3. サーボモーターを動かし、物理的な印鑑を押す
    • **上3-1.**ObnizのWebhookで、サーボを動かすコマンドが書かれているプログラムを実行する
  4. Kintoneのレコードを更新して、承認キーを付与する
    • **上4-1.承認キーを発行して(承認キーの発行のメカニズムはブロックチェーン編を別途記事として書きます)、IBM CloudのNode-REDからKintone APIで対象のレコードに承認キーを設定して更新する。更新するレコードは部2-1.**で登録されたレコードキーをデバイス、クラウドをまたがって引き継いでいる為、更新を可能としている。
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?