1.2.1 • Published 6 years ago
sbahn-berlin-tweets v1.2.1
sbahn-berlin-tweets
Fetch & parse @SBahnBerlin tweets on the operating status of S-Bahn Berlin. Caveats:
- It guesses lines and stations just by their name. This is brittle.
- It relies on specific phrases & keywords commonly used by the SBahnBerlintwitter account.
Installation
npm install sbahn-berlin-tweetsUsage
fetching & parsing tweets
const fetchAndParseTweets = require('sbahn-berlin-tweets')
const [tweet] = await fetchAndParseTweets(1, {
	formatLine: l => l.id,
	formatStation: s => s.id
})
console.log(tweet){
	id: '1169225032700239872',
	cause: 'medical-emergency',
	effect: 'disruptions',
	affected: ['S3', 'S5', 'S7', 'S9'],
	runsOnlyBetween: null,
	stations: ['900000024204'], // Savignyplatz
	useLines: []
}parsing tweets
const parse = require('sbahn-berlin-tweets/parse')
console.log(parse({
	id: '1169246704291524608',
	text: [
		{type: 'hashtag', content: 'S7'},
		{type: 'plain', content: ': Wegen einer Weichenstörung in '},
		{type: 'hashtag', content: 'Olympiastadion'},
		{type: 'plain', content: ' verkehrt die S7 nur zwischen '},
		{type: 'hashtag', content: 'Ahrensfelde'},
		{type: 'plain', content: ' <> '},
		{type: 'hashtag', content: 'Westkreuz'},
		{type: 'plain', content: '. Der 10-Minutentakt kann nur zwischen Ahrensfelde <> '},
		{type: 'hashtag', content: 'Charlottenburg'},
		{type: 'plain', content: ' angeboten werden. Von/nach Olympiastadion/Spandau nutzen Sie bitte die Züge der '},
		{type: 'hashtag', content: 'S3'},
		{type: 'plain', content: ' und '},
		{type: 'hashtag', content: 'S9'},
		{type: 'plain', content: '.'}
	]
})){
	cause: 'switch-failure',
	effect: 'skipped-stops',
	affected: [
		// from the `vbb-lines` npm package
		{id: '10162_109', name: 'S7'}
	],
	stations: [
		// from the `vbb-stations` npm package
		{id: '900000025321', name: 'S Olympiastadion'}
	],
	useLines: [
		// from the `vbb-lines` npm package
		{id: '10148_109', name: 'S3'},
		{id: '10170_109', name: 'S9'}
	],
	runsOnlyBetween: null
}Related
- augment-vbb-hafas– Augment VBB HAFAS responses with realtime data from other channels.
- vbb-disruptions– Disruptions in VBB public transport.
Contributing
If you have a question or need support using sbahn-berlin-tweets, please double-check your code and setup first. If you think you have found a bug or want to propose a feature, refer to the issues page.