cyberstation

package module
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 15, 2019 License: BSD-3-Clause Imports: 11 Imported by: 0

README

cyberstation-cli

JR の指定席の空席案内 (JR サイバーステーション) をコマンドラインで問い合わせます。

Go の標準ライブラリと golang.org/x/text だけでがんばります。

Install

go get -u github.com/mikan/cyberstation-cli/cmd/cyberstation

Usage

cyberstation -date YYYY/MM/DD -time HH:MM -from <乗車駅> -to <降車駅> -group <列車種別>

在来線の例:

cyberstation -date 2019/12/30 -time 10:00 -from 品川 -to 大垣

新幹線の例:

cyberstation -date 2019/12/30 -time 10:00 -from かみのやま温泉 -to さくらんぼ東根 -group 3

-group の数値は以下のルールに従って指定する必要があります:

  • 1: 東海道・山陽・九州新幹線 (のぞみ, ひかり, みずほ, さくら, つばめ)
  • 2: 東海道・山陽新幹線 (こだま)
  • 3: 東北・北海道・山形・秋田新幹線 (はやぶさ, はやて, やまびこ, なすの, つばさ, こまち)
  • 4: 上越・北陸新幹線 (とき, たにがわ, かがやき, はくたか, あさま, つるぎ)

Limitation

  • 利用可能時間は 6:30 から 22:30 の間のみです
  • 駅名の候補が複数ある場合は未対応、完全一致する駅名をサイトで調べて渡してください

License

サービスの利用に関する注意書きが以下の URL にあります:

http://www.jr.cyberstation.ne.jp/license.html

本プログラムのソースコードは BSD License です。

Documentation

Index

Constants

View Source
const (
	// Available は予約可能であることを示します。
	Available = Availability("○")
	// LittleAvailable は残席が少ないことを示します。
	LittleAvailable = Availability("△")
	// NotAvailable は満席であることを示します。
	NotAvailable = Availability("×")
	// NotReservable は予約対象外であることを示します。
	NotReservable = Availability("-")
	// UseSmokingRoom は座席は禁煙ですが、喫煙ルームがあることを示します。
	UseSmokingRoom = Availability("*")
	// NozomiGroup は "のぞみ" 系 (東海道・山陽・九州新幹線) の列車種別を示します。
	NozomiGroup = TrainGroup(1)
	// KodamaGroup は "こだま" 系 (東海道・山陽新幹線) の列車種別を示します。
	KodamaGroup = TrainGroup(2)
	// HayabusaGroup は "はやぶさ" 系 (東北・北海道・山形・秋田新幹線) の列車種別を示します。
	HayabusaGroup = TrainGroup(3)
	// TokiGriup は "とき" 系 (上越・北陸新幹線) の列車種別を示します。
	TokiGroup = TrainGroup(4)
	// ZairaiGriup は在来線の列車種別を示します。
	ZairaiGroup = TrainGroup(5)
)

Variables

This section is empty.

Functions

func SafeClose added in v0.0.2

func SafeClose(closer io.Closer, tag string)

SafeClose はリソースをクローズし、エラーがあればログに記録します。

Types

type Availability added in v0.0.2

type Availability string

Availability は予約可能状態を示します。

func (Availability) Emoji added in v0.0.2

func (a Availability) Emoji() string

Emoji は絵文字に変換します。

type Train

type Train struct {
	TrainName          string
	DepartureTime      string
	ArriveTime         string
	StandardNoSmoking  Availability
	StandardSmoking    Availability
	GreenNoSmoking     Availability
	GreenSmoking       Availability
	SleeperANoSmoking  Availability
	SleeperASmoking    Availability
	SleeperBNoSmoking  Availability
	SleeperBSmoking    Availability
	GranClassNoSmoking Availability
}

Train は1列車あたりの予約状況を示します。

func Vacancy added in v0.0.2

func Vacancy(target time.Time, departure, arrival string, group TrainGroup) ([]Train, error)

Vacancy は空席情報を照会します。

func (Train) IsAvailable added in v0.0.2

func (t Train) IsAvailable() bool

IsAvailable はこの列車の任意の席タイプで空席があるか調べます。

func (Train) IsSleeperReservable added in v0.0.2

func (t Train) IsSleeperReservable() bool

IsSleeperReservable はこの列車の寝台席が予約対象かどうか調べます。

type TrainGroup added in v0.0.2

type TrainGroup int

TrainGroup は列車種別を示します。

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL