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
70
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
2k
JMUG #9
ken_hikita
2
510
EMS(Intune)で色々なデバイスをセットアップしてみた
ken_hikita
0
440
Other Decks in Technology
See All in Technology
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
390
「エーアイ」をバズワードにしないために RPA 導入経験と Kiro 上での Claude モデル利用経験から
kazzpapa3
0
120
フィンテック養成勉強会#68
finengine
0
210
Steerable Visual Representations
sansantech
PRO
0
140
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
370
Turning Repos into the Product Second Brain with an LLM Wiki
linedevth
0
130
Metadata - Section 2: Simple Metadata & Meta Tags
mohab1
0
110
アカウント統制の健康診断
kenichinakamura
1
120
dbt Semantic Layerで進めるenechainのデータ民主化
akizhou
1
210
~最速でビジネスインパクトを創出する~ Sansanのデータ基盤と活用事例
sansantech
PRO
0
110
野蛮なアジャイル [サイボウズ発!]組織の常識を覆した反骨のスクラム実践記 / Barbaric Agile - Enterprise Agile Study Group
ama_ch
0
120
QAエンジニアがSoutherを使ってみたの〜10分でわかるSouther〜
mhlyc
0
110
Featured
See All Featured
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
1k
Statistics for Hackers
jakevdp
799
230k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Designing for humans not robots
tammielis
254
26k
Code Reviewing Like a Champion
maltzj
529
40k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
310
Agile that works and the tools we love
rasmusluckow
331
22k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
GraphQLとの向き合い方2022年版
quramy
50
15k
Optimizing for Happiness
mojombo
378
71k
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