21

2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

  • Upload
    -

  • View
    43

  • Download
    1

Embed Size (px)

Citation preview

Page 1: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер
Page 2: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Introduction to IoT Foosball

2

Page 3: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Electrical circuit

3

Gate A

Gate B

Page 4: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Arduino Firmware

4

Page 5: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Table modification

5

Page 6: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Platform IO

6

Page 7: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Introduction to Smart Foosball

7

Page 8: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Firebase - backend as service

8

Page 9: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Firebase Authentication

9

Page 10: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Firebase Realtime Database

10

Page 11: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Firebase Storage

11

Page 12: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Android app

12

Page 13: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Android and Firebase

13

1 public interface ChildEventListener { 2 void onChildAdded(DataSnapshot var1, String var2); 3 4 void onChildChanged(DataSnapshot var1, String var2); 5 6 void onChildRemoved(DataSnapshot var1); 7 8 void onChildMoved(DataSnapshot var1, String var2); 9 10 void onCancelled(DatabaseError var1); 11 }

1 DatabaseReference database; 2 database = FirebaseDatabase.getInstance().getReference(); 3 DatabaseReference databaseReference = database.getRef().child("/games/");

… … …

30 databaseReference.addChildEventListener(childEventListener);

Page 14: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Slackbot

14

Page 15: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Digital Ocean

15

Page 16: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Let’s Encrypt

16

Page 17: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Botkit

17

1 var Botkit = require(‘botkit'); 2 3 var slackBot = Botkit.slackbot({ 4 debug: false 5 }); 6 7 slackBot.spawn({ 8 token: process.env.token 9 }).startRTM(function(err) { 10 if (err) { 11 throw new Error(err); 12 } 13 }); 14 15 slackBot.hears(['game', 'play'], ['direct_message', 'direct_mention'], function (bot, message) { 16 bot.reply(message, "Cool, I'm in!"); 17 });

Page 18: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Node.js and Firebase

18

1 var Firebase = require('firebase'); 2 var firebaseDatabase = Firebase.database(); 3 4 firebaseDatabase.ref('/games/').on('value', function (snapshot) { 5 console.log("Value is:"); 6 console.log(JSON.stringify(snapshot.val(), "", 4)); 7 }); 8 9 firebaseDatabase.ref('/games/').on('child_added', function (snapshot) { 10 console.log("New child was added:"); 11 console.log(JSON.stringify(snapshot.val(), "", 4)); 12 });

Page 19: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Summary

Arduino app

Android Smart

Foosball IoTFirebase Slackbot

19

Hardware part

Page 20: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер

Links

20

github - Smart Foosball IoT - https://github.com/handsomecode/smart-foosball-iot

Firebase - https://firebase.google.com

Platrom IO - http://platformio.org/

Digital Ocean - https://www.digitalocean.com/ (5 $ referral https://m.do.co/c/d7d609569ff4)

github - botkit - https://github.com/howdyai/botkit

Let’s encrypt - https://letsencrypt.org/

github - firebase autovalue - https://github.com/mattlogan/auto-value-firebase

Yandex speechkit - https://tech.yandex.com/speechkit/

Page 21: 2016-10-01 02 Евгений Комаров. Как я сделал IoT-кикер