Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Office 365を利用して GPS Botもどきをつくろう
Search
hikky
August 03, 2019
Technology
64
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
500
EMS(Intune)で色々なデバイスをセットアップしてみた
ken_hikita
0
420
Other Decks in Technology
See All in Technology
2026.06.13_AI時代に事業会社が「SIer出身エンジニア」を求める理由 / Why Businesses Seek Engineers with a System Integrator Background in the AI Era
jumtech
0
900
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
3
1.1k
運用を見据えたAIエージェント設計実践
amacbee
1
3.2k
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
440
探して_入れて_作って_使う_Agent_Skills___LT.pdf
peintangos
2
180
生成 AI × MCP で切り拓く次世代 SRE!自律型運用への挑戦と開発者体験の進化
_awache
0
170
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
570
LLMにもCAP定理があるという話
harukasakihara
0
190
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development
yoshidashingo
1
380
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
1
240
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
0
390
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
2.2k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
KATA
mclloyd
PRO
35
15k
Deep Space Network (abreviated)
tonyrice
0
170
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
160
A Tale of Four Properties
chriscoyier
163
24k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
600
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
Optimizing for Happiness
mojombo
378
71k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
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