MashupAwads2016 沖縄予選に参加したよ

はじめに

MashupAwards2016とは・・・

日本最大級の開発コンテストMashupAwardsの一次予選免除の権利をかけたハッカソンイベントです。MA2016は賞金総額約500万円!!賞もたくさんあるよ。

賞金総額500万円ですよ:exclamation: :exclamation: という金額に魅かれるところもありますが

いろいろなモノづくりを楽しめる滅多にない機会!!

「会社・学校を超えて知らない人とアイディアを練って、チームづくりをして、モノを作る」それが醍醐味です :smile:

イベント様子詳細はこちらからTogetter

紹介すること

今回参加して実際に作成したモノの技術を紹介します

MashupAwards2016 沖縄予選にて実際に作成・紹介した「MESH振る(メッシブルと読む)」を作成しました。 名称はメッシ(サッカーで有名なメッシ+MESHの掛け合わせ)と振る(Move)を合わせた造語ですw

イベント説明 :speech_balloon:

審査基準だよ。 ビジネス性や事業性は関係ないのが特徴です。

f:id:s-shota:20180129154453j:plain

提供API

Hack1日目 :computer:

既にMESHは使いたい!というのは決まっていたので、案だけはいくつか候補をあげていました。

Hackタイムが始まる前にアイスブレイク/インプットタイムで更に案をブラッシュアップ。チームも4名になりました。

チーム名:突貫boys

内容は以下のとおり

・MESH(MOVE)を交通安全お守りに入れ、車に吸盤でくっつけて揺れ幅を検知
・揺れ幅により、Slack通知・Twilioでの連絡を取り入れる

f:id:s-shota:20180129154532p:plain

まずMESHを利用するためにはiPhoneにてMESHとペアリング・動作させるためのアプリをインストールする必要があります。

iPhone MESH

MESHAppでは簡単にアプリを作ることができます。例えば「音声を検知したら写真を撮影する」

f:id:s-shota:20180129154608p:plain

MESHとslackを実際に使った場合

f:id:s-shota:20180129154901p:plain

  • 注意

MESHのタグにはSlack通知が無いのでMESH SDKと呼ばれる管理画面からJavascriptでWEBからの作成が必要となります。

//The endpoint URL of Remote API
var endPointURL = 'http://__ORIGINAL_API__/slack_notify';
 
var alert = properties.myProp;

var data = {
    "msg":alert,
    "apiToken":'xxxxxxxxxxxx',
    "channel":'#general',
}

//Puts the camera into "Shooting mode"
ajax ({
    url : endPointURL,
    type : "post",
    data : data,
    dataType : "json",
    timeout : 5000,
    error : function ( request, errorMessage ) {
        log("SlackAPI : Network error");
        callbackSuccess( {
            resultType : "continue"
        } );
    }
});
 
return {
    resultType : "pause"
};

API側は自前でよしなに作ってやればSlackに通知が行きますよー。

API実装にはMicrosoftAzureからUbuntu16.04を起動し、Nginx + Ruby on Railsで簡単に構築しますた。

Azureは無償サブスクリプション利用いたしました。MS様ありがとうございます :smile:

Hack2日目 :computer: :sweat_drops:

全体的なハッカソンとしての機能があまりにも少ないため、チーム内でブラッシュアップ案で以下のような流れを決定しました。

1.揺れの検知レベルを3段階とする
危険なレベルに合わせ連絡手段を変更
└全Lv共通にslackに報告
Lv1、安全を促す警告※運転者のslack
 - 休憩をして欲しいのでぐるなびAPIを使って近くの駐車場のあるお店(カフェ)一件を通知
Lv2、安全を促す強い警告※運転者のslack
 - 同様にお店(カフェ)を通知
Lv3、事前に登録してある、twilioを使って連絡先に連絡

出来たMESH Appでの画面図

f:id:s-shota:20180129155103p:plain

  • 注意

MESHのタグにはTwilioが無いのでMESH SDKと呼ばれる管理画面からJavascriptでWEBからの作成が必要となります。

//The endpoint URL of Remote API
var endPointURL = 'http://__ORIGINAL_API__/twilio_call';
 
var alert = properties.myProp;

var data = {
    "To":'+8190xxxxxxxx',#国際番号から電話番号を
    "key":'xxxxxx',
}

//Puts the camera into "Shooting mode"
ajax ({
    url : endPointURL,
    type : "post",
    data : data,
    dataType : "json",
    timeout : 5000,
    error : function ( request, errorMessage ) {
        log("TwilioAPI : Network error");
        callbackSuccess( {
            resultType : "continue"
        } );
    }
});
 
return {
    resultType : "pause"
};

Twilioは既にチャージされたアカウントをお借りしました!Twilio様ありがとうございます

かっ完成!

出来上がったお守りの画像※お守り袋に入れる時間ありませんでした :sob:

f:id:s-shota:20180129155243j:plain

検証環境:

ミニ四駆+MESH振る(ムダにカッコいいショット) f:id:s-shota:20180129155319j:plain

検証風景:

f:id:s-shota:20180129155404j:plain

最終設計:

f:id:s-shota:20180129155436p:plain

懇親会

美味しいお食事がいっぱい用意されてました :smile:

f:id:s-shota:20180129155810j:plain

f:id:s-shota:20180129155853j:plain

かんぱーい :tada:

f:id:s-shota:20180129155920j:plain

懇親タイム

f:id:s-shota:20180129160052j:plainf:id:s-shota:20180129160102j:plainf:id:s-shota:20180129160059j:plainf:id:s-shota:20180129160055j:plain

発表

いよいよ発表の前に!台風の前日なので、進路が気になる〜〜 :sweat: ※2016/10/2は台風前夜 915hpaまで発達した大きな台風です。。。 ※無事東京に戻れたそうです :smile:

f:id:s-shota:20180129161349j:plain

いよいよ賞の発表

Microsoft賞の発表

f:id:s-shota:20180129160212j:plain

スパイルスチーム

スーパー居留守をもじって、玄関先にMESH(Motion)とiPhoneを設置し、顔写真を撮影。事前に登録されているホワイトリストブラックリストの写真を元にiPhoneから出される表示を変えるアプリ (ホワイトリストには天使の絵を出し、また来てねを催促) (ブラックリストには本人の画像から血が滴るように見えるように表示w) ぶっ飛んだ作品だけど、本当に商品化できそうな予感のアプリでした

Twilio賞の発表

f:id:s-shota:20180129160321j:plain

Emotion Phone

エモーションフォン。ブラウザでTwilioクライアントを利用し、音声電話を実現。 ただの音声電話ではなく、PCカメラの人物が”笑顔”にならないと発信できない仕組み。こっこれはコールセンターで本当に実現できるのではないかー??

そして・・・「ぐるなび賞」「最優秀賞」は :tada: :raised_hands: :tada: (パチパチ)

MESH振ル

f:id:s-shota:20180129160453j:plain f:id:s-shota:20180129160505j:plain

12/3の2次予選権利獲得しました〜!!

まとめ

  • いいチームメンバーに囲まれました :smile: スライドを作ってくれたM/Kさん
  • プレゼンを盛り上げるために突貫で作ってくれたMovie #Cさん
  • デバッグや各MESHのフローを考えてくれたK/Aさん

いいチームワークで作成時間1分前まで安心して、発表に臨むことができました :smile:

f:id:s-shota:20180129160651j:plain

お疲れしたー!!

f:id:s-shota:20180129160744j:plain