| 
									
										
										
										
											2022-05-07 16:17:37 +02:00
										 |  |  | import {inspect} from 'util' | 
					
						
							|  |  |  | import {createClient} from '../../index.js' | 
					
						
							| 
									
										
										
										
											2022-11-22 21:08:08 +01:00
										 |  |  | import {profile as dbProfile} from './index.js' | 
					
						
							| 
									
										
										
										
											2017-11-13 00:38:09 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | // Pick a descriptive user agent! hafas-client won't work with this string.
 | 
					
						
							| 
									
										
										
										
											2022-11-22 21:08:08 +01:00
										 |  |  | const client = createClient(dbProfile, 'hafas-client-example') | 
					
						
							| 
									
										
										
										
											2017-11-13 00:38:09 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | const berlinJungfernheide = '8011167' | 
					
						
							|  |  |  | const münchenHbf = '8000261' | 
					
						
							|  |  |  | const regensburgHbf = '8000309' | 
					
						
							| 
									
										
										
										
											2021-04-18 19:18:41 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | let data = await client.locations('Berlin Jungfernheide') | 
					
						
							|  |  |  | // let data = await client.locations('Atze Musiktheater', {
 | 
					
						
							|  |  |  | // 	poi: true,
 | 
					
						
							|  |  |  | // 	addressses: false,
 | 
					
						
							|  |  |  | // 	fuzzy: false,
 | 
					
						
							|  |  |  | // })
 | 
					
						
							|  |  |  | // let data = await client.nearby({
 | 
					
						
							| 
									
										
										
										
											2018-06-28 12:08:54 +02:00
										 |  |  | // 	type: 'location',
 | 
					
						
							|  |  |  | // 	latitude: 52.4751309,
 | 
					
						
							|  |  |  | // 	longitude: 13.3656537
 | 
					
						
							|  |  |  | // }, {results: 1})
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | // let data = await client.reachableFrom({
 | 
					
						
							| 
									
										
										
										
											2018-08-26 18:35:27 +02:00
										 |  |  | // 	type: 'location',
 | 
					
						
							|  |  |  | // 	address: '13353 Berlin-Wedding, Torfstr. 17',
 | 
					
						
							|  |  |  | // 	latitude: 52.541797,
 | 
					
						
							|  |  |  | // 	longitude: 13.350042
 | 
					
						
							|  |  |  | // }, {
 | 
					
						
							|  |  |  | // 	when: new Date('2018-08-27T10:00:00+0200'),
 | 
					
						
							|  |  |  | // 	maxDuration: 50
 | 
					
						
							|  |  |  | // })
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | // let data = await client.stop(regensburgHbf)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // let data = await client.departures(berlinJungfernheide, {duration: 1})
 | 
					
						
							|  |  |  | // let data = await client.arrivals(berlinJungfernheide, {duration: 10, linesOfStops: true})
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // let data = await client.journeys(berlinJungfernheide, münchenHbf, {
 | 
					
						
							|  |  |  | // 	results: 1,
 | 
					
						
							|  |  |  | // 	tickets: true,
 | 
					
						
							|  |  |  | // })
 | 
					
						
							|  |  |  | // {
 | 
					
						
							|  |  |  | // 	const [journey] = data.journeys
 | 
					
						
							|  |  |  | // 	const leg = journey.legs[0]
 | 
					
						
							|  |  |  | // 	data = await client.trip(leg.tripId, {polyline: true})
 | 
					
						
							|  |  |  | // }
 | 
					
						
							|  |  |  | // {
 | 
					
						
							|  |  |  | // 	const [journey] = data.journeys
 | 
					
						
							|  |  |  | // 	data = await client.refreshJourney(journey.refreshToken, {
 | 
					
						
							|  |  |  | // 		stopovers: true,
 | 
					
						
							|  |  |  | // 		remarks: true,
 | 
					
						
							|  |  |  | // 	})
 | 
					
						
							|  |  |  | // }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // let data = await client.radar({
 | 
					
						
							| 
									
										
										
										
											2019-07-20 12:47:32 +02:00
										 |  |  | // 	north: 52.52411,
 | 
					
						
							|  |  |  | // 	west: 13.41002,
 | 
					
						
							|  |  |  | // 	south: 52.51942,
 | 
					
						
							|  |  |  | // 	east: 13.41709
 | 
					
						
							|  |  |  | // }, {results: 10})
 | 
					
						
							| 
									
										
										
										
											2017-12-17 18:16:04 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | // let data = await client.journeys('8011113', '8000261', {
 | 
					
						
							| 
									
										
										
										
											2018-10-08 21:10:24 +02:00
										 |  |  | // 	departure: Date.now() - 2 * 60 * 60 * 1000,
 | 
					
						
							|  |  |  | // 	results: 1, stopovers: true, transfers: 1
 | 
					
						
							|  |  |  | // })
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | // {
 | 
					
						
							| 
									
										
										
										
											2018-10-08 21:10:24 +02:00
										 |  |  | // 	const leg = journeys[0].legs.find(l => l.line && l.line.product === 'nationalExpress')
 | 
					
						
							|  |  |  | // 	const prevStopover = leg.stopovers.find((st) => {
 | 
					
						
							|  |  |  | // 		return st.departure && Date.parse(st.departure) < Date.now()
 | 
					
						
							|  |  |  | // 	})
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | // 	data = await client.journeysFromTrip(leg.tripId, prevStopover, '8000207')
 | 
					
						
							|  |  |  | // }
 | 
					
						
							| 
									
										
										
										
											2018-10-08 21:10:24 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-07-28 21:35:56 +02:00
										 |  |  | console.log(inspect(data, {depth: null, colors: true})) |