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
電話番号を扱う技術
Search
Shota Iguchi
October 21, 2017
Technology
14k
21
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
電話番号を扱う技術
Shota Iguchi
October 21, 2017
More Decks by Shota Iguchi
See All by Shota Iguchi
Webpacker移行ガイド / Migrating from Webpacker to Simpacker
iguchi1124
1
610
cookpadLiveのライブ配信基盤
iguchi1124
0
1.3k
師弟登壇 2018 クックパッドで弟子入りした話
iguchi1124
1
3.2k
RackでWEBアプリケーション開発入門
iguchi1124
0
340
Other Decks in Technology
See All in Technology
Road to SRE NEXTの今までとこれから
hiroyaonoe
0
170
依頼文化をやめる日 EM視点で語るPlatform EngineeringとInclusive SRE / Discussing Platform Engineering and Inclusive SRE from an EM's Perspective
shin1988
4
3.4k
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
0
130
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
0
130
Baseline対応のDOMの型定義を作った
uhyo
3
710
生成AIの活用/high_school2026
okana2ki
0
110
4人目のSREはAgent
tanimuyk
0
400
プライバシー保護の理論と実践
lycorptech_jp
PRO
1
240
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
0
2.7k
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
290
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
200
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
220
Done Done
chrislema
186
16k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
380
Paper Plane
katiecoart
PRO
1
52k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Facilitating Awesome Meetings
lara
57
7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Unsuck your backbone
ammeep
672
58k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
280
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
600
Transcript
ి൪߸Λѻ͏ٕज़ @iguchi1124
͢͜ͱ ి൪߸ΛWebαʔϏεͰར༻͢ΔͨΊʹߟྀ͢Δ͜ͱ ి൪߸ύʔαʔͷհ
MFA (Multi Factor Authentication) ࿈བྷઌͷొ ϢʔβʔID ి൪߸ΛͬͨΑ͋͘Δػೳ
໌Β͔ʹ͓͔͍͠ͷόϦσʔγϣϯ ࣮ࡍʹଘࡏ͠ಘΔి൪߸͔Ͳ͏͔ w w w w w SMS͕ૹ৴Մೳ͔Ͳ͏͔ ຊࠃ֎ͷܞଳిΛ͍ͬͯΔਓ͍Δ ి൪߸ΛαʔϏεͰར༻͍ͨ͠
ࠃࡍن֨ E164 ITU-T ͕ඪ४Խ͍ͯ͠Δి൪߸ׂܭը ి൪߸͕িಥ͠ͳ͍Α͏ʹ͢ΔΈ ి൪߸Ͳ͏ׂͬͯΒΕΔ͔
ి൪߸Ͳ͏ׂͬͯΒΕΔ͔ https://www.itu.int/rec/T-REC-E.164/
ࣾձੑ༷ ࠃҬͰి൪߸͕িಥ͠ͳ͍Α͏ʹࠃ൪߸Λ࠾൪ ࠃҬ͝ͱͰిΛ͔͚ΔͨΊͷΈ ి൪߸Ͳ͏ׂͬͯΒΕΔ͔
Ϣʔβʔ͕ೝ͍ࣝͯ͠Δి൪߸ͱ ਖ਼نԽ͞Εͨి൪߸શ͘ผ ϢʔβʔʹΑͬͯೖྗ͢Δ ి൪߸ͷϑΥʔϚοτ͕ҧ͏ +
ਖ਼نԽ͞Εͨࠃࡍి൪߸ +81 80 XXXX XXXX Country code National number ࠃίʔυΛڞ༗͍ͯ͠ΔࠃͰҰҙʹͳΔ
Ϣʔβʔ͕ೝ͍ࣝͯ͠Δి൪߸ 080 XXXX XXXX ࠃͰిSMSΛૹ৴͢Δͱ͖಄ʹ͚ͭΔ ࠃʹΑ༷͕ͬͯҟͳΔ National prefix
֤ࠃͰ࠾༻͍ͯ͠ΔࠃϓϨϑΟΫεͱࠃίʔυ ͦͷଞͷಠࣗͰ࠾༻͍ͯ͠Δ༷ SMS͕ૹ৴Ͱ͖Δి൪߸͔Ͳ͏͔ ϢʔβʔͷίϯςΩετ͕Θ͔Δ ݡ͍ύʔαʔ͕ඞཁ ి൪߸ΛόϦσʔγϣϯ͢Δ
ͦ͜Ͱ libphonenumber github.com/googlei18n/libphonenumber
libphonenumberͷίί͕ੌ͍ Google͕ϝϯςφϯε͍ͯ͠Δి൪߸ύʔαʔ ֤ࠃͷి൪߸ͷಠ༷ࣗΛௐਚͨ͘͠࠷ڧͷϝλσʔλ Λ༻ҙ͍ͯ͠Δ ͋ΒΏΔݴޠͰѻ͑ΔΑ͏ʹͳ͍ͬͯΔ Javascript, Ruby, PHP, PostgreSQL, Go,
C++Ͱར༻Ͱ͖Δ
libphonenumberͷίί͕ੌ͍ TelephoneNumber.valid?('8180XXXXXXXX') # => true TelephoneNumber.valid?('+81 80 XXXX XXXX') #
=> true TelephoneNumber.valid?('080 XXXX XXXX', 'JP') # => true require 'telephone_number' telephone_number = TelephoneNumber.parse('8180XXXXXXXX') telephone_number.e164_number # => +8180XXXXXXXX telephone_number.national_number # => 080-XXXX-XXXX telephone_number.country.country_id # => JP telephone_number.valid_types # => [:mobile] github.com/mobi/telephone_number github.com/iguchi1124/global_phone_number ruby port library (WIP)
✅ ֤ࠃͰ࠾༻͍ͯ͠ΔࠃϓϨϑΟΫεͱࠃίʔυ ✅ ͦͷଞͷಠࣗͰ࠾༻͍ͯ͠Δ༷ ✅ SMS͕ૹ৴Ͱ͖Δి൪߸͔Ͳ͏͔ ి൪߸ΛόϦσʔγϣϯ͢Δ ࣮༻ஈ֊
͓ΘΓ