Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Office 365を利用して GPS Botもどきをつくろう
Search
hikky
August 03, 2019
Technology
69
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Office 365を利用して GPS Botもどきをつくろう
hikky
August 03, 2019
More Decks by hikky
See All by hikky
Entra IDとJamfで実現する金融業界のセキュリティ対策 〜デバイストラストへの道のり〜
ken_hikita
3
1.9k
JMUG #9
ken_hikita
2
510
EMS(Intune)で色々なデバイスをセットアップしてみた
ken_hikita
0
440
Other Decks in Technology
See All in Technology
AIに賢く動いてもらうためのコンテキスト〜Snowflake女子会 vol.8
snowwmn0824
0
160
事業課題から技術的負債に向き合う
sansantech
PRO
2
2.3k
リアーキテクチャ後の障害ゼロを目指したShadow Testingの取り組み
nihonbuson
PRO
1
170
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
26
17k
2026_devsumi_ozono.pdf
o3
3
580
おい、エージェントを使って終わらせろ
nwiizo
3
870
人間はどの意思決定を手放せるのか
kawasima
15
8k
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
540
Issue 駆動でスペシャリストの意図を届ける、AI 実装のアクセシビリティ向上
thkt
0
140
開発投資の期待値を上げるプロダクトロードマップづくり ~プロダクトエンジニアが越境して事業を伸ばす~
kekekenta
1
240
[Kiro Meetup #7] Kiro Crew Dive Deep
konippi
0
260
AI時代、データエンジニアが一番おもろい
genshun9
0
690
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
530
Evolving SEO for Evolving Search Engines
ryanjones
0
300
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
340
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
770
The Curious Case for Waylosing
cassininazir
1
520
エンジニアに許された特別な時間の終わり
watany
109
250k
Transcript
Sensitivity: Confidential #jpemsug Office 365を利用して GPS Botもどきをつくろう hikky(@ken_hikita) 2019/08/03 Home365祭り
Sensitivity: Confidential # h365ug 2 自己紹介 hikky(@ken_hikita) 某会社のコーポレートエンジニアやってます(SIer経験も有) やってきたこと •
オフコン・プリンタ保守、官公庁システムリプレイス、オフィス移転増床閉鎖、 NW構築、サーバ構築、ISMS、PMS、ASP SaaS認証、M&Aプロマネ、CRM/ERP導入 ヘルプデスク、コールセンター構築 今やってること • 8月から別会社 イノベーションテックやデザイン思考テストなどAIの会社です 好きなOffice 365サービス • OneDrive 保持免許 • 第一種大型自動車免許 • 第一種けん引自動車免許 ブログ:https://blog.intracker.net/ 3児の父(見えないって大体言われる) Japan EMS User Group運営メンバーを一応やってます
Sensitivity: Confidential # h365ug 3 本題に行く前に・・・ home365だからこっちが本題じゃね? 逸般的な誤家庭内の会話です すべて実話です。 嫁
誤家庭 3 そう嫁さんの話し
Sensitivity: Confidential # h365ug 4 本題 逸般的な誤家庭内の会話です すべて実話です。 嫁 このスマホよくない?
Snapdragon 625だって そんなCPUじゃ嫌だ CPU大事 UMIDIGI A5 Proもよさそうだよねぇ TypeCじゃないから認めない 自宅ラック欲しい っていったらどうする? 場所がない 4 場所あったらいいの? 構わない
Sensitivity: Confidential # h365ug 5 本題 逸般的な誤家庭内の会話です すべて実話です。 5 1984ギガバイト
いやゴーストバスターズの略でしょw これご存知ですか?↓
Sensitivity: Confidential # h365ug 6 こっちがおまけ(という名の本題) 小学生のお子さんがいらっしゃる方挙手! Forms + PowerBIなんか使わないよw
6
Sensitivity: Confidential # h365ug 7 どうしてますか? お子さんの帰宅時のお迎え 7 14時だったり15時だったり・・・ 下校班の集まりやふざけて帰る子がいて
時間通りに帰ってこなかったり・・・
Sensitivity: Confidential # h365ug 8 こんな手紙きません? 8
Sensitivity: Confidential # h365ug 9 よくあるソリューション 1. キッズ携帯 2. 使い古しスマホ持たせる
3. GPS製品 4. 帰宅時間の手紙に合わせてお迎え 9
Sensitivity: Confidential #h365ug GPS BoT 10
Sensitivity: Confidential # h365ug 11 GPS BoTは何ができるのか 1. 居場所がわかる 2.
指定領域に入ったら通知 3. 指定領域をでたら通知 4. 行動エリアから飛び出したら通知 11 とっても便利!
Sensitivity: Confidential # h365ug 12 こんな感じで移動履歴も見える 12
Sensitivity: Confidential # h365ug 13 13 GPS BoT の宣伝がしたいわけじゃない
Sensitivity: Confidential # h365ug 14 Office 365(達)でやらないと! 14 必要なものと利用するアプリたち ➢
Microsoft Flow ➢ Azure Automation ➢ Xamarin ➢ Firebase CloudMessage (ほんとはAzure SNS使いたかった・・・) ➢ Android端末(開発者モードをONにしてね)
Sensitivity: Confidential # h365ug 15 どうやってやるの?コードかかないとだめなの? 15 以下の手順 1. XamarinでAndroidアプリを作成する
2. 端末へアプリをインストールする 3. Firebase Cloud Message 4. Microsoft Flowの位置トリガーを利用する 5. Azure Automationから通知APIを実行する 6. アプリをインストールした端末全てに通知が届く
Sensitivity: Confidential # h365ug 16 16 ものすごい難しそう!
Sensitivity: Confidential # h365ug 17 コードかかないとだめなの? 17 私もコードほとんど書けません。 docsにあるコードをまるっとコピペでつくります ↓これをそのままやります
https://docs.microsoft.com/ja-jp/xamarin/android/data-cloud/google- messaging/remote-notifications-with-fcm?tabs=windows
Sensitivity: Confidential # h365ug 18 Android端末へアプリインストール 18 Visual Studio でビルド時に指定すればアプリが端末に入るよ!
Sensitivity: Confidential # h365ug 19 Firebase Cloud Message 19 これも↓のdocsをまるこぴ
https://docs.microsoft.com/ja-jp/xamarin/android/data-cloud/google- messaging/firebase-cloud-messaging
Sensitivity: Confidential # h365ug 20 なんでAzure Automation使うの? 20 FlowのHTTPコネクタが有料になっちゃったから・・・ Azure
Automationなら500時間/月までタダ!最高! PowerShellやPythonが利用できるので大抵のことはできる ハイブリッド構成でオンプレミスのサーバに指示を出すことも可能 https://blog.intracker.net/archives/1762
Sensitivity: Confidential #h365ug PowerShellで書くコードはこれだけ! 21 param ( [Parameter(Mandatory=$false)] [String] $param_location
) $location_message = $param_location + "付近にな りました" $authKey = Get-AutomationVariable -Name 'fcmApiKey' $location_message $postText=@" { "to": "/topics/all", "data": { "url": "https://www.yahoo.jp" }, "notification": { "title": "$($location_message)", "body": "近づきました" } } "@ $postBody = [Text.Encoding]::UTF8.GetBytes($postText) $headers = @{ 'Content-Type' = 'application/json' 'Authorization' = $authKey } $postText $postBody = [Text.Encoding]::UTF8.GetBytes($postText) $postUri = "https://fcm.googleapis.com/fcm/send" $Response = Invoke-RestMethod -Method POST - Headers $headers -Uri $postUri -Body $postBody $Response
Sensitivity: Confidential # h365ug 22 Azure Automation 22
Sensitivity: Confidential # h365ug 23 ようやく出番! 2 3
Sensitivity: Confidential # h365ug 24 位置情報トリガー 24
Sensitivity: Confidential # h365ug 25 ジョブの作成 25 Power Shellで指定したパラメータを設定することが可能 ジョブの待機を“はい”にするとジョブ実行完了まで次のフローが実行されないので
ジョブ完了後に次のアクションを実行させることもできる
Sensitivity: Confidential # h365ug 26 実行結果 26 位置情報トリガー ↓ Azure
Automationジョブ作成 ↓ Azure Automationジョブ実行 と動作するので、タイムラグが多少でます 位置情報トリガーの範囲を少し大きめに設定し ておくといい感じ
Sensitivity: Confidential # h365ug 27 FlowのSend me a mobile notificationでよくない?
27 Flowアプリがない端末でも受信できる 複数端末に同じメッセージを飛ばせる ので、FCMを使ってみました。 Flowって同一アカウントで別端末って何台まで いけるんでしょうか・・・?
Sensitivity: Confidential # h365ug 28 なんでそんなことしたの? 28 製品名 初期費用 月
額 GPS BoT ¥4,800(税別) ¥480(税別) キッズ携帯(キャリア) 約¥10,000 ¥500~¥980(2年縛りとかある) Office 365 Business Premium ¥0 ¥1,360(税別)年間契約の場合 Office 365の契約があるし、Flowで位置情報トリガーもでたし どうにかしてGPS BoTみたいなものがつくれないかなと思ったのがきっかけです でも、Flowの位置情報トリガー最近全然反応してくれない・・・orz
Sensitivity: Confidential # h365ug 29 まとめ 29 Office365を契約している逸般の誤家庭であればo365利用料金内で構築可能 Officeソフトも使えて、お子様のお迎えも無駄なくいける! (位置情報トリガーが動いてくれれば・・・)
Office 365を契約して誤家庭で使い倒そう!!
Sensitivity: Confidential #h365ug https://blog.intracker.net/ @ken_hikita hank ou! 30