SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
Copyright @ NIFTY Corporation All Rights
ニフティクラウド

mobile backend
とIoTの良い関係
ニフティクラウド mobile backend
エヴァンジェリスト 中津川篤司
Copyright @ NIFTY Corporation All Rights
自己紹介
2
@moongift
fb.me/moongift.fan
中津川 篤司
株式会社MOONGIFT 代表取締役
ニフティクラウド mobile backend
          エヴァンジェリスト
2004年1月よりオープンソース・ソフトウェアを毎
日紹介するブログ MOONGIFT を運営。
http://www.moongift.jp/
Copyright @ NIFTY Corporation All Rights
ニフティクラウド mobile backnend
について
3
@niftycloud_mb
fb.me/niftycloudmb
ニフティクラウド mobile backend
ニフティ株式会社の提供するmBaaS
スマートフォン/Webアプリのバックエンド(サー
バサイド)の仕組みを一括提供
http://mb.cloud.nifty.com/
Copyright @ NIFTY Corporation All Rights
mBaaSとは?
4
スマートフォン/Webアプリのバックエンド(サー
バサイド)の仕組みを一括提供
 → mobile Backend as a Serviceの略
Copyright @ NIFTY Corporation All Rights
アプリとサーバの現状
5
Copyright @ NIFTY Corporation All Rights
アプリとサーバの現状
6
Copyright @ NIFTY Corporation All Rights
アプリとサーバの現状
7
アプリ サーバ
・認証
・結果
・データ(テキスト/バイナリ)
・プッシュ通知
だいたい同じ
Copyright @ NIFTY Corporation All Rights
サーバに求められるもの
8
・安定性
・セキュリティ対策
・定期的なアップデート
絶対に落ちないこと!
高速に動き続けること!
クラックされないこと!
Copyright @ NIFTY Corporation All Rights
mBaaSに置き換えてみる
9
アプリ
・認証
・結果
・データ(テキスト/バイナリ)
・プッシュ通知
ニフティクラウド
mobile backend
アプリの開発に集中!
Copyright @ NIFTY Corporation All Rights
ニフティクラウド mobile
backendの主な機能
10
プッシュ通知
データ
ストレージ
ファイル
ストレージ
SNS連携 認証
位置情報
検索
Copyright @ NIFTY Corporation All Rights
対応プラットフォーム
11
Objective-C

(2014年12月より64bit対応)
Android
JavaScript

(2014年12月よりnodeサポート!)
Unity
Copyright @ NIFTY Corporation All Rights
Web API
12
RESTfulなAPI
・データの追加、更新、削除、検索
・バイナリファイルの追加、更新、削除、検索
・認証
・プッシュ通知の追加、更新、削除、検索
https://github.com/moongift/ncmb-ruby-client
Copyright @ NIFTY Corporation All Rights
本題
13
IoT と mBaaS をいかに組み合わせるか?
Copyright @ NIFTY Corporation All Rights
IoTデバイスの問題点1
14
小型=小バッテリー
 常時電源が使えるとは限らない
小さなメモリ/ストレージ
 蓄積したデータを廃棄?
Copyright @ NIFTY Corporation All Rights
よくない利用
15
IoTデバイス
デスクトップ
スマートフォン
Webサーバ
Copyright @ NIFTY Corporation All Rights
よくない利用
16
デスクトップ
スマートフォン
Copyright @ NIFTY Corporation All Rights
mBaaSを使った例
17
IoTデバイス
デスクトップ
スマートフォン
ニフティクラウド
mobile backend
SDK
REST API
IoTデバイス
Copyright @ NIFTY Corporation All Rights
IoTの問題2
18
IoTデバイスに何かあった時、通知したい
今ならプッシュ通知がスムーズ
 → APNs、GCMに接続する必要あり
 → デバイストークンの管理
Copyright @ NIFTY Corporation All Rights
よくない利用
19
IoTデバイス スマートフォンAPNs/GCM
Copyright @ NIFTY Corporation All Rights 20
IoTデバイス スマートフォンAPNs/GCM
mBaaSを使った例
!
ニフティクラウド
mobile backend
Copyright @ NIFTY Corporation All Rights
プッシュ通知を使った例
21
Copyright @ NIFTY Corporation All Rights 22
IoTデバイス
スマートフォン APNs/GCM
mBaaSを使った例
!
ニフティクラウド
mobile backend
プッシュ作成サーバ
Copyright @ NIFTY Corporation All Rights
プッシュ作成サーバ
23
require 'sinatra/base'
require 'ncmb'
class Server < Sinatra::Base
get '/' do
NCMB.initialize application_key: ENV['APPLICATION_KEY'] ¦¦ "", client_key: ENV['CLIENT_KEY'] ¦¦ ""
@push = NCMB::Push.new
@push.immediateDeliveryFlag = true
@push.target = ['ios']
@push.message = params["m"]
@push.deliveryExpirationTime = "3 day"
if @push.save
status 201
body ''
else
status 403
body ''
end
end
end
https://github.com/moongift/push_server/
Copyright @ NIFTY Corporation All Rights
MQTTに対応させる場合
24
require 'mqtt'
require 'uri'
require 'ncmb'
# Create a hash with the connection parameters from the URL
uri = URI.parse ENV['CLOUDMQTT_URL'] ¦¦ 'mqtt://localhost:1883'
conn_opts = {
remote_host: uri.host,
remote_port: uri.port,
username: uri.user,
password: uri.password,
}
MQTT::Client.connect(conn_opts) do ¦c¦
NCMB.initialize application_key: ENV['APPLICATION_KEY'] ¦¦ "", client_key: ENV['CLIENT_KEY'] ¦¦ ""
loop do
# The block will be called when you messages arrive to the topic
c.get(ENV['TOPIC']) do ¦topic, message¦
@push = NCMB::Push.new
@push.immediateDeliveryFlag = true
@push.target = ['ios']
@push.message = message.force_encoding('utf-8')
@push.deliveryExpirationTime = "3 day"
@push.save
end
end
end
https://github.com/moongift/push_server_mqtt
Copyright @ NIFTY Corporation All Rights
IoTの問題3
25
M2M(Machine to Machine)とは言うけど
そもそもプロトコルを合わせられない…
Copyright @ NIFTY Corporation All Rights
良くない利用
26
IoTデバイス IoTデバイス
プロコトルの違い
仕様のすりあわせ
NAT越の必要あり
Copyright @ NIFTY Corporation All Rights 27
mBaaSを使った例
IoTデバイス IoTデバイスニフティクラウド
mobile backend
M2C2M
Copyright @ NIFTY Corporation All Rights 28
mBaaSを使った例
IoTデバイス IoTデバイスニフティクラウド
mobile backend
Copyright @ NIFTY Corporation All Rights
M2C2Mの例
29
お父さんいまどこメーター
via http://qiita.com/
kazunori279/items/
7dbbb525ab0cf6d5d9b5
Copyright © NIFTY Corporation All Rights Reserved. ‹#›
料金プラン
Copyright © NIFTY Corporation All Rights Reserved. ‹#›
Basicプラン
200万!
200万!
5GB!
月額
無料
Copyright © NIFTY Corporation All Rights Reserved. ‹#›
mikan 最速の英単語 リスニングもマスター
https://www.youtube.com/watch?v=5ujG-0zrtrw
Copyright © NIFTY Corporation All Rights Reserved. ‹#›
開発で困ったら?
bit.ly/ncmb-community
Copyright @ NIFTY Corporation All Rights
@niftycloud_mb
https://fb.me/niftycloudmb

Weitere ähnliche Inhalte

Andere mochten auch

The Internet of Things - Software is eating the world, Industry, and everythi...
The Internet of Things - Software is eating the world, Industry, and everythi...The Internet of Things - Software is eating the world, Industry, and everythi...
The Internet of Things - Software is eating the world, Industry, and everythi...Martin Spindler
 
Mobile adhoc network
Mobile adhoc networkMobile adhoc network
Mobile adhoc networkSubiya Nadar
 
GetShift - IoT Devices Done Right.
GetShift - IoT Devices Done Right.GetShift - IoT Devices Done Right.
GetShift - IoT Devices Done Right.Sean Greenhalgh
 
Internet of Things- Applications
Internet of Things- ApplicationsInternet of Things- Applications
Internet of Things- ApplicationsRavindra Dastikop
 
Lecture 1 mobile and adhoc network- introduction
Lecture 1  mobile and adhoc network- introductionLecture 1  mobile and adhoc network- introduction
Lecture 1 mobile and adhoc network- introductionChandra Meena
 
IoT applications for connected vehicle and ITS
IoT applications for connected vehicle and ITSIoT applications for connected vehicle and ITS
IoT applications for connected vehicle and ITSShashank Dhaneshwar
 
An introduction to M2M / IoT technologies
An introduction to M2M / IoT technologiesAn introduction to M2M / IoT technologies
An introduction to M2M / IoT technologiesPascal Bodin
 
Zinnov Zones for IoT Services 2017
Zinnov Zones for IoT Services 2017Zinnov Zones for IoT Services 2017
Zinnov Zones for IoT Services 2017Zinnov
 
Internet of Things (IoT): More Opportunity than Risk
Internet of Things (IoT): More Opportunity than RiskInternet of Things (IoT): More Opportunity than Risk
Internet of Things (IoT): More Opportunity than RiskStefan Ferber
 
What exactly is the "Internet of Things"?
What exactly is the "Internet of Things"?What exactly is the "Internet of Things"?
What exactly is the "Internet of Things"?Dr. Mazlan Abbas
 
5 questions about the IoT (Internet of Things)
5 questions about the IoT (Internet of Things) 5 questions about the IoT (Internet of Things)
5 questions about the IoT (Internet of Things) Deloitte United States
 
Internet of Things (IOT) - Technology and Applications
Internet of Things (IOT) - Technology and ApplicationsInternet of Things (IOT) - Technology and Applications
Internet of Things (IOT) - Technology and ApplicationsDr. Mazlan Abbas
 
Internet of Things and its applications
Internet of Things and its applicationsInternet of Things and its applications
Internet of Things and its applicationsPasquale Puzio
 
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-gInternet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-gMohan Kumar G
 
IoT - IT 423 ppt
IoT - IT 423 pptIoT - IT 423 ppt
IoT - IT 423 pptMhae Lyn
 

Andere mochten auch (17)

The Internet of Things - Software is eating the world, Industry, and everythi...
The Internet of Things - Software is eating the world, Industry, and everythi...The Internet of Things - Software is eating the world, Industry, and everythi...
The Internet of Things - Software is eating the world, Industry, and everythi...
 
Mobile adhoc network
Mobile adhoc networkMobile adhoc network
Mobile adhoc network
 
GetShift - IoT Devices Done Right.
GetShift - IoT Devices Done Right.GetShift - IoT Devices Done Right.
GetShift - IoT Devices Done Right.
 
Internet of Things- Applications
Internet of Things- ApplicationsInternet of Things- Applications
Internet of Things- Applications
 
Lecture 1 mobile and adhoc network- introduction
Lecture 1  mobile and adhoc network- introductionLecture 1  mobile and adhoc network- introduction
Lecture 1 mobile and adhoc network- introduction
 
Iot support technologies
Iot support technologiesIot support technologies
Iot support technologies
 
IoT applications for connected vehicle and ITS
IoT applications for connected vehicle and ITSIoT applications for connected vehicle and ITS
IoT applications for connected vehicle and ITS
 
An introduction to M2M / IoT technologies
An introduction to M2M / IoT technologiesAn introduction to M2M / IoT technologies
An introduction to M2M / IoT technologies
 
Zinnov Zones for IoT Services 2017
Zinnov Zones for IoT Services 2017Zinnov Zones for IoT Services 2017
Zinnov Zones for IoT Services 2017
 
Internet of Things (IoT): More Opportunity than Risk
Internet of Things (IoT): More Opportunity than RiskInternet of Things (IoT): More Opportunity than Risk
Internet of Things (IoT): More Opportunity than Risk
 
What exactly is the "Internet of Things"?
What exactly is the "Internet of Things"?What exactly is the "Internet of Things"?
What exactly is the "Internet of Things"?
 
5 questions about the IoT (Internet of Things)
5 questions about the IoT (Internet of Things) 5 questions about the IoT (Internet of Things)
5 questions about the IoT (Internet of Things)
 
IoT architecture
IoT architectureIoT architecture
IoT architecture
 
Internet of Things (IOT) - Technology and Applications
Internet of Things (IOT) - Technology and ApplicationsInternet of Things (IOT) - Technology and Applications
Internet of Things (IOT) - Technology and Applications
 
Internet of Things and its applications
Internet of Things and its applicationsInternet of Things and its applications
Internet of Things and its applications
 
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-gInternet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
Internet-of-things- (IOT) - a-seminar - ppt - by- mohan-kumar-g
 
IoT - IT 423 ppt
IoT - IT 423 pptIoT - IT 423 ppt
IoT - IT 423 ppt
 

Ähnlich wie ニフティクラウド Mobile backendとio tの良い関係

Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」
Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」
Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」ニフクラ mobile backend
 
ニフティクラウド
 mobile backend とIoTの良い関係
ニフティクラウド
 mobile backend とIoTの良い関係ニフティクラウド
 mobile backend とIoTの良い関係
ニフティクラウド
 mobile backend とIoTの良い関係ニフクラ mobile backend
 
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」Atsushi Nakatsugawa
 
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますプッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますAtsushi Nakatsugawa
 
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますAtsushi Nakatsugawa
 
ニフティクラウド mobile backendのREST APIについて
ニフティクラウド mobile backendのREST APIについてニフティクラウド mobile backendのREST APIについて
ニフティクラウド mobile backendのREST APIについてニフクラ mobile backend
 
ニフティクラウド mobile backend 北海道ハンズオン
ニフティクラウド mobile backend 北海道ハンズオンニフティクラウド mobile backend 北海道ハンズオン
ニフティクラウド mobile backend 北海道ハンズオンニフクラ mobile backend
 
IoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptxIoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptxTakashi Yamanoue
 
KituraとサーバーサイドSwift
KituraとサーバーサイドSwiftKituraとサーバーサイドSwift
KituraとサーバーサイドSwiftYUSUKE MORIZUMI
 
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Yuji Takayama
 
"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and dockerHiroshi Miura
 
Ibm bluemix を使ってモバイルのセンサーデータを利用する
Ibm bluemix を使ってモバイルのセンサーデータを利用するIbm bluemix を使ってモバイルのセンサーデータを利用する
Ibm bluemix を使ってモバイルのセンサーデータを利用するMasaya Fujita
 
"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and dockerHiroshi Miura
 
"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン
"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン
"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオンsoftlayerjp
 
ハンズオン:Bluemix とスマホでゲームを作ろう!
ハンズオン:Bluemix とスマホでゲームを作ろう! ハンズオン:Bluemix とスマホでゲームを作ろう!
ハンズオン:Bluemix とスマホでゲームを作ろう! softlayerjp
 
モバイル開発@symfony
モバイル開発@symfonyモバイル開発@symfony
モバイル開発@symfonyDaichi Kamemoto
 
SORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティス
SORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティスSORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティス
SORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティスSORACOM,INC
 

Ähnlich wie ニフティクラウド Mobile backendとio tの良い関係 (20)

Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」
Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」
Edisonユーザ会「ニフティクラウド mobile backendとIoTの良い関係」
 
ニフティクラウド
 mobile backend とIoTの良い関係
ニフティクラウド
 mobile backend とIoTの良い関係ニフティクラウド
 mobile backend とIoTの良い関係
ニフティクラウド
 mobile backend とIoTの良い関係
 
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
 
Cordova × NCMB
Cordova × NCMBCordova × NCMB
Cordova × NCMB
 
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますプッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
 
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
 
ニフティクラウド mobile backendのREST APIについて
ニフティクラウド mobile backendのREST APIについてニフティクラウド mobile backendのREST APIについて
ニフティクラウド mobile backendのREST APIについて
 
ニフティクラウド mobile backend 北海道ハンズオン
ニフティクラウド mobile backend 北海道ハンズオンニフティクラウド mobile backend 北海道ハンズオン
ニフティクラウド mobile backend 北海道ハンズオン
 
Whats service mesh & istio ?
Whats service mesh & istio ?Whats service mesh & istio ?
Whats service mesh & istio ?
 
IoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptxIoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptx
 
KituraとサーバーサイドSwift
KituraとサーバーサイドSwiftKituraとサーバーサイドSwift
KituraとサーバーサイドSwift
 
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
 
"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and docker
 
Ibm bluemix を使ってモバイルのセンサーデータを利用する
Ibm bluemix を使ってモバイルのセンサーデータを利用するIbm bluemix を使ってモバイルのセンサーデータを利用する
Ibm bluemix を使ってモバイルのセンサーデータを利用する
 
"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and docker
 
5jCup WebRTC賞
5jCup WebRTC賞5jCup WebRTC賞
5jCup WebRTC賞
 
"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン
"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン
"クラウド × IoT 勉強会" Bluemix とスマホでゲームを作ろう!ハンズオン
 
ハンズオン:Bluemix とスマホでゲームを作ろう!
ハンズオン:Bluemix とスマホでゲームを作ろう! ハンズオン:Bluemix とスマホでゲームを作ろう!
ハンズオン:Bluemix とスマホでゲームを作ろう!
 
モバイル開発@symfony
モバイル開発@symfonyモバイル開発@symfony
モバイル開発@symfony
 
SORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティス
SORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティスSORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティス
SORACOM Conference Discovery 2017 | E2. IoTデバイス・デザインパターン ベストプラクティス
 

Kürzlich hochgeladen

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 

Kürzlich hochgeladen (9)

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 

ニフティクラウド Mobile backendとio tの良い関係

  • 1. Copyright @ NIFTY Corporation All Rights ニフティクラウド
 mobile backend とIoTの良い関係 ニフティクラウド mobile backend エヴァンジェリスト 中津川篤司
  • 2. Copyright @ NIFTY Corporation All Rights 自己紹介 2 @moongift fb.me/moongift.fan 中津川 篤司 株式会社MOONGIFT 代表取締役 ニフティクラウド mobile backend           エヴァンジェリスト 2004年1月よりオープンソース・ソフトウェアを毎 日紹介するブログ MOONGIFT を運営。 http://www.moongift.jp/
  • 3. Copyright @ NIFTY Corporation All Rights ニフティクラウド mobile backnend について 3 @niftycloud_mb fb.me/niftycloudmb ニフティクラウド mobile backend ニフティ株式会社の提供するmBaaS スマートフォン/Webアプリのバックエンド(サー バサイド)の仕組みを一括提供 http://mb.cloud.nifty.com/
  • 4. Copyright @ NIFTY Corporation All Rights mBaaSとは? 4 スマートフォン/Webアプリのバックエンド(サー バサイド)の仕組みを一括提供  → mobile Backend as a Serviceの略
  • 5. Copyright @ NIFTY Corporation All Rights アプリとサーバの現状 5
  • 6. Copyright @ NIFTY Corporation All Rights アプリとサーバの現状 6
  • 7. Copyright @ NIFTY Corporation All Rights アプリとサーバの現状 7 アプリ サーバ ・認証 ・結果 ・データ(テキスト/バイナリ) ・プッシュ通知 だいたい同じ
  • 8. Copyright @ NIFTY Corporation All Rights サーバに求められるもの 8 ・安定性 ・セキュリティ対策 ・定期的なアップデート 絶対に落ちないこと! 高速に動き続けること! クラックされないこと!
  • 9. Copyright @ NIFTY Corporation All Rights mBaaSに置き換えてみる 9 アプリ ・認証 ・結果 ・データ(テキスト/バイナリ) ・プッシュ通知 ニフティクラウド mobile backend アプリの開発に集中!
  • 10. Copyright @ NIFTY Corporation All Rights ニフティクラウド mobile backendの主な機能 10 プッシュ通知 データ ストレージ ファイル ストレージ SNS連携 認証 位置情報 検索
  • 11. Copyright @ NIFTY Corporation All Rights 対応プラットフォーム 11 Objective-C
 (2014年12月より64bit対応) Android JavaScript
 (2014年12月よりnodeサポート!) Unity
  • 12. Copyright @ NIFTY Corporation All Rights Web API 12 RESTfulなAPI ・データの追加、更新、削除、検索 ・バイナリファイルの追加、更新、削除、検索 ・認証 ・プッシュ通知の追加、更新、削除、検索 https://github.com/moongift/ncmb-ruby-client
  • 13. Copyright @ NIFTY Corporation All Rights 本題 13 IoT と mBaaS をいかに組み合わせるか?
  • 14. Copyright @ NIFTY Corporation All Rights IoTデバイスの問題点1 14 小型=小バッテリー  常時電源が使えるとは限らない 小さなメモリ/ストレージ  蓄積したデータを廃棄?
  • 15. Copyright @ NIFTY Corporation All Rights よくない利用 15 IoTデバイス デスクトップ スマートフォン Webサーバ
  • 16. Copyright @ NIFTY Corporation All Rights よくない利用 16 デスクトップ スマートフォン
  • 17. Copyright @ NIFTY Corporation All Rights mBaaSを使った例 17 IoTデバイス デスクトップ スマートフォン ニフティクラウド mobile backend SDK REST API IoTデバイス
  • 18. Copyright @ NIFTY Corporation All Rights IoTの問題2 18 IoTデバイスに何かあった時、通知したい 今ならプッシュ通知がスムーズ  → APNs、GCMに接続する必要あり  → デバイストークンの管理
  • 19. Copyright @ NIFTY Corporation All Rights よくない利用 19 IoTデバイス スマートフォンAPNs/GCM
  • 20. Copyright @ NIFTY Corporation All Rights 20 IoTデバイス スマートフォンAPNs/GCM mBaaSを使った例 ! ニフティクラウド mobile backend
  • 21. Copyright @ NIFTY Corporation All Rights プッシュ通知を使った例 21
  • 22. Copyright @ NIFTY Corporation All Rights 22 IoTデバイス スマートフォン APNs/GCM mBaaSを使った例 ! ニフティクラウド mobile backend プッシュ作成サーバ
  • 23. Copyright @ NIFTY Corporation All Rights プッシュ作成サーバ 23 require 'sinatra/base' require 'ncmb' class Server < Sinatra::Base get '/' do NCMB.initialize application_key: ENV['APPLICATION_KEY'] ¦¦ "", client_key: ENV['CLIENT_KEY'] ¦¦ "" @push = NCMB::Push.new @push.immediateDeliveryFlag = true @push.target = ['ios'] @push.message = params["m"] @push.deliveryExpirationTime = "3 day" if @push.save status 201 body '' else status 403 body '' end end end https://github.com/moongift/push_server/
  • 24. Copyright @ NIFTY Corporation All Rights MQTTに対応させる場合 24 require 'mqtt' require 'uri' require 'ncmb' # Create a hash with the connection parameters from the URL uri = URI.parse ENV['CLOUDMQTT_URL'] ¦¦ 'mqtt://localhost:1883' conn_opts = { remote_host: uri.host, remote_port: uri.port, username: uri.user, password: uri.password, } MQTT::Client.connect(conn_opts) do ¦c¦ NCMB.initialize application_key: ENV['APPLICATION_KEY'] ¦¦ "", client_key: ENV['CLIENT_KEY'] ¦¦ "" loop do # The block will be called when you messages arrive to the topic c.get(ENV['TOPIC']) do ¦topic, message¦ @push = NCMB::Push.new @push.immediateDeliveryFlag = true @push.target = ['ios'] @push.message = message.force_encoding('utf-8') @push.deliveryExpirationTime = "3 day" @push.save end end end https://github.com/moongift/push_server_mqtt
  • 25. Copyright @ NIFTY Corporation All Rights IoTの問題3 25 M2M(Machine to Machine)とは言うけど そもそもプロトコルを合わせられない…
  • 26. Copyright @ NIFTY Corporation All Rights 良くない利用 26 IoTデバイス IoTデバイス プロコトルの違い 仕様のすりあわせ NAT越の必要あり
  • 27. Copyright @ NIFTY Corporation All Rights 27 mBaaSを使った例 IoTデバイス IoTデバイスニフティクラウド mobile backend M2C2M
  • 28. Copyright @ NIFTY Corporation All Rights 28 mBaaSを使った例 IoTデバイス IoTデバイスニフティクラウド mobile backend
  • 29. Copyright @ NIFTY Corporation All Rights M2C2Mの例 29 お父さんいまどこメーター via http://qiita.com/ kazunori279/items/ 7dbbb525ab0cf6d5d9b5
  • 30. Copyright © NIFTY Corporation All Rights Reserved. ‹#› 料金プラン
  • 31. Copyright © NIFTY Corporation All Rights Reserved. ‹#› Basicプラン 200万! 200万! 5GB! 月額 無料
  • 32. Copyright © NIFTY Corporation All Rights Reserved. ‹#› mikan 最速の英単語 リスニングもマスター https://www.youtube.com/watch?v=5ujG-0zrtrw
  • 33. Copyright © NIFTY Corporation All Rights Reserved. ‹#› 開発で困ったら? bit.ly/ncmb-community
  • 34. Copyright @ NIFTY Corporation All Rights @niftycloud_mb https://fb.me/niftycloudmb