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
Google Apps Scriptで三日坊主を克服する
Search
tadaken3
October 30, 2017
Programming
2
1.3k
Google Apps Scriptで三日坊主を克服する
10/31にGaiaxさんが主催の『Google Apps Script 活用ミートアップ』で使用した資料です。
https://gaiax.connpass.com/event/69200/
tadaken3
October 30, 2017
Tweet
Share
More Decks by tadaken3
See All by tadaken3
戦略と実行を繋ぐ活用ファーストのデータ分析基盤
tadaken3
0
3
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
920
Exploratory:プロダクト活用度の話
tadaken3
0
61
[我が社のデータエンジニアリング現場]我が社が考える最強のデータ基盤・開発体制!
tadaken3
0
100
はじめてのWatchOSアプリ。はじめてのiOSアプリ
tadaken3
0
65
拡張現実を活用して幸福度をあげる方法
tadaken3
0
1.3k
LINE Notifyで作る健康習慣をサポートする仕組み
tadaken3
0
1.5k
チームづくりにおける成功法則 - LINEにおけるHR Techの取り組み- / people analytics tokyo
tadaken3
1
4.9k
Google Data Studioで イカしたダッシュボード作る
tadaken3
0
1.5k
Other Decks in Programming
See All in Programming
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
390
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
510
速いWebフレームワークを作る
yusukebe
5
1.7k
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
1.4k
AI時代のUIはどこへ行く?
yusukebe
18
8.9k
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
460
OSS開発者という働き方
andpad
5
1.7k
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
600
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
330
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Done Done
chrislema
185
16k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Raft: Consensus for Rubyists
vanstee
140
7.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Transcript
Google Apps ScriptͰ ࡾओΛࠀ͢Δ @tadaken3
ࣗݾհ • λμέϯ(@tadaken3) • ژग़ • ෳۀɿ͍ͭྡʹITͷ͓ࣄʢhttps://tonari-it.comʣ • झຯɿࣗసंɺےτϨ •
ຊۀɿσʔλΞφϦετ
ےτϨͯ͠·͔͢ʁ
ےτϨ͍ͨ͠Ͱ͢ΑͶʁ
͔ͤͬ͘δϜ௨͍Λ࢝Ί͚ͨͲɺ • ࣄ͕ͯ͘͠ • ࠓɺӍ͔ͩΒ • ҿΈձʹ༠ΘΕͨ • Δؾ͕ग़ͳ͍ ͋Δ͋Δ
Google Apps ScriptͰࡾओΛࠀ͢Δ ؍ଌ͑͞Ͱ͖ΕׯবͰ͖Δɻ ׯবͰ͖ΔͳΒɺ੍ޚͰ͖Δɻ
ᶃߦಈͷه ᶆૹ৴ࢦࣔ ᶅܭࢉ݁Ռͷ อଘ ᶄܦաͷ ܭࢉ εϓϨουγʔτ εϚʔτϑΥϯ Google Apps
ScriptͰࡾओΛࠀ͢Δ Google Apps Script LINE Notify API
Google Apps ScriptͰࡾओΛࠀ͢Δ IFTTTͰϘλϯΛ࡞Δ
Google Apps ScriptͰࡾओΛࠀ͢Δ εϓϨουγʔτʹه
Google Apps ScriptͰࡾओΛࠀ͢Δ //IFTTTͷܗ͔ࣜΒ௨ৗͷʹม function toDateFromIFTTT(str){ str = String(str); str
= str.replace(/at.*/,"")//ਖ਼نදݱͰatΑΓޙΖͷ෦Λআ d = new Date(str); return d; } IFTTTͷܗࣜ(str)Λdateʹม
Google Apps ScriptͰࡾओΛࠀ͢Δ var ss = SpreadsheetApp.getActiveSpreadsheet(); //εϓϨουγʔτΛऔಘ var sheet
= ss.getSheetByName("log"); //γʔτΛऔಘ //γʔτͷ࠷ऴߦʹܦաΛܭࢉ͢ΔࣜΛηοτ͢Δ function setFormuraLastRow(){ //γʔτͷ༻ൣғͷ͏ͪ࠷ऴߦΛऔಘ var maxRow = sheet.getDataRange().getLastRow(); //Aྻͷ࠷ऴߦͷΛऔಘ var str = sheet.getRange(maxRow,1).getValue(); //εϓϨουγʔτ༻ͷࣜ var code = '=TODAY() - TO_DATE(B'+ maxRow+')'; //ϑΥʔϚοτͨ͠Ληοτ sheet.getRange(maxRow,2).setValue(toDateFromIFTTT(str)); //ࣜΛηοτ͢Δ sheet.getRange(maxRow,3).setFormula(code); } ܦաΛܭࢉ͢Δ
Google Apps ScriptͰࡾओΛࠀ͢Δ ܦա͕ܭࢉͰ͖ͨ
Google Apps ScriptͰࡾओΛࠀ͢Δ //LINEʹ௨ΛૹΔؔ function sentToLine(message){ var token = "ઌఔऔಘͨ͠ΞΫηετʔΫϯ";
var options = { "method" : "post", "payload" : "message=" + message, "headers" : {"Authorization" : "Bearer "+ token} }; UrlFetchApp.fetch("https://notify-api.line.me/api/notify",options); } LINE NotifyʹϝοηʔδΛૹΔ
Google Apps ScriptͰࡾओΛࠀ͢Δ function main(){ setFormuraLastRow() var maxRow = sheet.getDataRange().getLastRow();
var passDate = sheet.getRange(maxRow,3).getValue(); var message =""; //ܦա͕̏͘͠7Ҏ্ͩͬͨΒLINEʹ௨ΛૹΔ if (passDate==3 || passDate>=7){ message = "࠷ऴτϨʔχϯά͔Β"+ passDate + "ܦա͠·ͨ͠"; sentToLine(message); } } Θ࣮ͤͯ͢Δ
·ͱΊ • IFTTTΛͬͯγʔτʹߦಈΛه • GASͰܦաΛܭࢉͱૹ৴ఆ • LINE NotifyͰ௨ Google Apps
ScriptͰࡾओΛࠀ͢Δ
ଞʹ • Fitbit APIͱΘͤͯઁऔΧϩϦʔͱӫཆૉΛ௨ • ΰϛͷͷલʹ௨ • ༑ਓͷੜͷ1िؒલʹ௨ ͋ͳ͚ͨͩͷ ύʔιφϧτϨʔφʔ݉Ոఉbot͕࡞ΕΔ
– tadaken3 “ ےτϨʹGoogle Apps Scriptʹ ऴΘΓ͕ͳ͍”
ϒϩάͷಡऀొ͓ئ͍͠·͢ʂ http://tadaken3.hatenablog.jp
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠