LoginSignup
2
0

More than 1 year has passed since last update.

Node-REDで郵便番号から住所情報を表示するbotを作成

Last updated at Posted at 2021-07-31

目的

郵便番号の7桁を入力すると、それに対応する住所と読み方を表示する。

製作の理由

申請書類に住所や住所のカナを記載する業務がある。
読み方を郵便局のホームページから検索すると県、市、それ以下読み方がバラバラに表示されるため簡単にコピー&ペーストができない。
更に複数の住所情報を調べる必要があるのに、郵便局のホームページでは最初の画面に戻されてしまうため作業に手間がかかる。

また申込の意思確認で住所を正しく伝えなければならない事があり、その読み方が誤っていると再度確認して折り返すように言われてしまう。
常に持ち歩いているスマホからでも簡単に調べられると効率が良いと感じ、今回Node-RED とLINEBOTを使用して作成した。

利用したAPI:Zipcloud

動作①7桁の数字で郵便番号を入力した場合

存在する住所を入力.png
住所と読み方がメッセージに表示される。

動作②7桁の数字以外の入力をした場合

桁数が間違っている.png
7桁の数字を入れるようにメッセージが表示される。
「Yahoo」の様に文字を入れても同様。

動作③存在しない郵便番号を入力した場合

存在しない住所を入力.png
情報が存在しないメッセージが表示される。

フロー

全体のフロー.png

①7桁の数字を判別する


image.png
image.png
chzipcodeというパラメータを設定し、それを100倍する事で001-0010の様な住所も判別できるように設定。
image.png
image.png
chzipcodeの値が1000000~1000000000の間の数値になっていれば、住所を探しにAPIへデータを送信する。
しかしと数字が7桁であると素直に判定に利用した方がバグにならないはず。
もっとスマートなやり方があれば教えてほしい。

②住所の存在をチェックする

image.png
image.png
resultsがnullであれば、住所が存在しないメッセージをLINEに返す。
存在していれば住所とカナを表示する。
image.png

終わり

初めてLINEBOTとAPIを利用したプログラムを作ったが、変数の定義が簡単である事に驚いた。
かなり古いプログラムを経験してきたため、宣言をしなくても使えてしまうので戸惑ったが慣れるとこちらの方が便利だと思う。
この機能を普段申請書類を出してくれるメンバーに渡したところ、便利なツールとの評価を得られた。

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0