駅すぱあと API BLOG

駅すぱあと APIの開発チームが作るブログです。

鉄道運行情報が便利になります!!

f:id:kumatira:20190408110042j:plain

みなさんこんにちは!! 熊野です。

本日のアップデートで、鉄道運行情報機能が進化しもっと便利になりました!! これまでと何が違うのか解説していきます。

これまでの鉄道運行情報機能

まずは鉄道運行情報機能のおさらいから。鉄道運行情報機能では鉄道路線の遅延や運休、平常運転への復旧などの情報を取得することができます。 これまでは /rail/service/rescuenow/information というパスで利用することができました。

例えばこんな感じ。ある日の運行情報です。

https://api.ekispert.jp/v1/json/rail/service/rescuenow/information?key=YOUR_API_KEY
//略

    "provider": "レスキューナウ",
    "status": "列車遅延",
    "Line": {
        "corporationIndex": "1",
        "Name": "JR総武線",
        "Detail": {
            "Area": {
                "code": "3",
                "Name": "関東"
            },
            "Section": "全域"
        }
    },
    "Title": "中央総武線(各停) 列車遅延",
    "Comment": [
        {
            "text": "錦糸町駅で発生した旅客転落の影響で、現在も一部列車に遅れが出ています。",
            "status": "long"
        },
//略

ここで注目していただきたいのが、 $ResultSet.Information[*].Line.Nameにある路線名が入った要素です(上の例ではJR総武線)。 この路線名は「鉄道運行情報路線」といって、「駅すぱあとWebサービス」の他の機能や「駅すぱあと路線図」で使われている「運行路線」や「平均路線」とは異なるテーブルで管理された路線名です。試しに運行路線情報機能で「総武」が入った運行路線にはどんなものがあるか見てみましょう。

https://api.ekispert.jp/v1/json/operationLine?nameMatchType=partial&name=総武&key=YOUR_API_KEY

すると JR総武本線 JR総武線快速 JR中央・総武線各駅停車 という3つの運行路線があることがわかります。さきほど取得した鉄道運行情報路線名 JR総武線 とはいずれも一致しませんね😭

この路線テーブルのずれのため、鉄道運行情報を他の機能、例えば経路探索とマッチングさせることに難がありました。

(運行路線情報/operationLinenameMatchTypeパラメータについてはこちらもチェック!!) blog.ekispert.com

新しくなった鉄道運行情報機能🎉

今回新しくなった鉄道運行情報機能、実は開発中は 「運行路線版運行情報」と呼んでいました。その名の通り、今回リリースした新しい鉄道運行情報機能は運行路線に基づいた運行情報を取得することができます。 (なおこれまでの鉄道運行情報機能は「鉄道運行情報機能(旧版)」となります。)

先ほどと同様に運行情報を取得してみましょう。新しいパスは /operationLine/service/rescuenow/information です!!

https://api.ekispert.jp/v1/json/operationLine/service/rescuenow/information?key=YOUR_API_KEY
//略
    "provider": "レスキューナウ",
    "status": "列車遅延",
    "Line": {
        "corporationIndex": "1",
        "code": "110",
        "Name": "JR中央・総武線各駅停車"
    },
    "Title": "中央総武線(各停) 列車遅延",
    "Comment": [
        {
            "text": "錦糸町駅で発生した旅客転落の影響で、現在も一部列車に遅れが出ています。",
            "status": "long"
        },
//略

先ほどのレスポンス例と今回の$ResultSet.Information[*].Line要素を見比べてみてください。

旧版 これから
"Line": {
    "corporationIndex": "1",
    "Name": "JR総武線",
    "Detail": {
        "Area": {
           "code": "3",
            "Name": "関東"
        },
        "Section": "全域"
    }
}
"Line": {
    "corporationIndex": "1",
    "code": "110",
    "Name": "JR中央・総武線各駅停車"
}

Name要素に入っている路線名が変わっていることがわかります。新しい機能のレスポンス例にある JR中央・総武線各駅停車運行路線情報機能で得られた路線名と一致しています!! 運行路線は路線コードも持っているためcode110で紐づけることも可能です。このコードは路線名が変わっても原則保持されるものなので、コードでの連携や保管をお勧めします。

何がいいの?

各路線の運行情報が「運行路線」で取得できるようになったことで、他の機能との連携がスムーズになります!!

経路探索との連携

その一つが経路探索機能(/search/course/extreme)です。経路探索機能ではaddOperationLinePatternパラメータにtrueを指定することで、経路探索結果に通過する運行路線の情報を付与することができます。これと今回新しくなった鉄道運行路線情報を組み合わせることで、ユーザーに利用路線に関するアラートを出すことができるように!!

f:id:kumatira:20190404120205p:plain
イメージ

mixwayやスマホ向け「駅すぱあと」をはじめ、弊社サービスでも利用中ですφ(・

「駅すぱあと路線図」との連携

f:id:kumatira:20190405114223p:plain
JR中央・総武線各駅停車 をハイライトしてみる

グラフィカルでシームレスな路線図を表示できる「駅すぱあと路線図」とも連携できます!! RosenオブジェクトのhighlightLine(lineCode)で、lineCodeに運行絵路線コードを指定して実行すると上の図のように、運行路線をハイライトすることができます。

これで運行情報が出ている路線を路線図状に表示する、といったこともできそうですね!!

詳しくはサンプル集やリファレンスをご覧ください↓↓

駅すぱあと路線図 | 路線を強調する

Rosen JS API リファレンス

フリープランでは無料でお試しいただけます。

駅すぱあと路線図

まとめ

今回のリリースで鉄道運行情報機能/operationLine/service/rescuenow/information へとリニューアルしました!! 今後開発される方はこちらをお使いください。またこれまでの鉄道運行情報/rail/service/rescuenow/informationは「鉄道運行情報(旧版)」へと名称変更します。とはいえ継続して使っていただくことも可能ですのでご安心ください!!

なお、鉄道運行情報機能のご利用には、スタンダードプランのオプションである運行情報コースの契約が別途必要となります。詳しくはお問い合わせください。

ekiworld.net

今回参考になる「駅すぱあとWebサービス」のドキュメントページはこちら↓↓↓

鉄道運行情報(レスキューナウ)
運行路線情報
鉄道運行情報(レスキューナウ)(旧版)