From 0349ebac2025e56d8740150ca4079a1b21bbff87 Mon Sep 17 00:00:00 2001 From: Jannis R Date: Fri, 18 Nov 2022 19:04:50 +0100 Subject: [PATCH] =?UTF-8?q?remove=20HVV=20profile=20=F0=9F=92=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit closes #262 closes #261 --- docs/writing-a-profile.md | 2 +- p/hvv/base.json | 17 --- p/hvv/example.js | 46 ------ p/hvv/index.js | 31 ---- p/hvv/products.js | 94 ------------ p/hvv/readme.md | 18 --- p/readme.md | 1 - test/e2e/hvv.js | 249 -------------------------------- test/fixtures/hvv-stop.json | 1 - tools/pull-profile-base-data.sh | 1 - 10 files changed, 1 insertion(+), 459 deletions(-) delete mode 100644 p/hvv/base.json delete mode 100644 p/hvv/example.js delete mode 100644 p/hvv/index.js delete mode 100644 p/hvv/products.js delete mode 100644 p/hvv/readme.md delete mode 100644 test/e2e/hvv.js delete mode 100644 test/fixtures/hvv-stop.json diff --git a/docs/writing-a-profile.md b/docs/writing-a-profile.md index d831f782..010d98bf 100644 --- a/docs/writing-a-profile.md +++ b/docs/writing-a-profile.md @@ -91,7 +91,7 @@ You may want to start with the [profile boilerplate](profile-boilerplate.js). - **Identify the `locale`.** Basically guess work; Use the date & time formats as an indicator. - **Identify the `timezone`.** This may be tricky, a for example [Deutsche Bahn](https://en.wikipedia.org/wiki/Deutsche_Bahn) returns departures for Moscow as `+01:00` instead of `+03:00`. - **Copy the authentication** and other meta fields, namely `ver`, `ext`, `client` and `lang`. - - You can find these fields in the root of each request JSON. Check [a HVV request](https://gist.github.com/derhuerst/5a9d29a556b54182f9d30202f7244bfd#file-journeys-http-L11-L54) and [the corresponding HVV profile](https://github.com/public-transport/hafas-client/blob/99142acf8b156599daa69f2e1470901088827982/p/hvv/index.js#L5-L23) for an example. + - You can find these fields in the root of each request JSON. Check [a VBB request](https://gist.github.com/derhuerst/ea5d6482b61aeb7384a2c788f43dc11d#file-0-serverinfo-http-L11-L33) and [the corresponding VBB profile](https://github.com/public-transport/hafas-client/blob/2baf2f6f0444ffc67317f8bafe0fe05f687e5fae/p/vbb/base.json#L2-L11) for an example. - Add a function `transformReqBody(ctx, body)` to your profile, which adds the fields to `body`. todo: adapt this - Some profiles have a `checksum` parameter (like [here](https://gist.github.com/derhuerst/2a735268bd82a0a6779633f15dceba33#file-journey-details-1-http-L1)) or two `mic` & `mac` parameters (like [here](https://gist.github.com/derhuerst/5fa86ed5aec63645e5ae37e23e555886#file-1-http-L1)). If you see one of them in your requests, jump to the [*Authentication* section of the `mgate.exe` docs](hafas-mgate-api.md#authentication). Unfortunately, this is necessary to get the profile working. diff --git a/p/hvv/base.json b/p/hvv/base.json deleted file mode 100644 index 0e267a21..00000000 --- a/p/hvv/base.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "auth": { - "type": "AID", - "aid": "andcXUmC9Mq6hjrwDIGd2l3oiaMrTUzyH" - }, - "salt": "pqjM3iKEGOAhYbX76k9R5zutv", - "client": { - "type": "AND", - "id": "HVV", - "v": "4020100", - "name": "HVVPROD_ADHOC" - }, - "endpoint": "https://hvv-app.hafas.de/bin/mgate.exe", - "ext": "HVV.1", - "ver": "1.18", - "defaultLanguage": "de" -} diff --git a/p/hvv/example.js b/p/hvv/example.js deleted file mode 100644 index df5db1e3..00000000 --- a/p/hvv/example.js +++ /dev/null @@ -1,46 +0,0 @@ -import {inspect} from 'util' -import {createClient} from '../../index.js' -import {profile} from './index.js' - -const client = createClient(profile, 'hafas-client-example') - -// client.journeys('116', '5900', {results: 1, polylines: true}) -// client.departures('116', {duration: 1}) -// client.arrivals('116', {duration: 10, linesOfStops: true}) -client.locations('dammtor', {results: 2}) -// client.stop('116', {linesOfStops: true}) // Dammtor -// client.nearby({ -// type: 'location', -// latitude: 53.554422, -// longitude: 9.977934 -// }, {distance: 60}) -// client.radar({ -// north: 53.55, -// west: 9.95, -// south: 52.51, -// east: 10 -// }, {results: 10}) -// client.reachableFrom({ -// type: 'location', -// address: 'Hamburg, Holstenwall 9', -// latitude: 53.553766, -// longitude: 9.977514 -// }, { -// when: new Date('2019-05-16T10:00:00+0200'), -// maxDuration: 8 -// }) - -// .then(({journeys}) => { -// const [journey] = journeys -// const leg = journey.legs[0] -// return client.trip(leg.tripId, {polyline: true}) -// }) - -// .then(({journeys}) => { -// const [journey] = journeys -// return client.refreshJourney(journey.refreshToken, {stopovers: true, remarks: true}) -// }) -.then((data) => { - console.log(inspect(data, {depth: null, colors: true})) -}) -.catch(console.error) diff --git a/p/hvv/index.js b/p/hvv/index.js deleted file mode 100644 index b65a008b..00000000 --- a/p/hvv/index.js +++ /dev/null @@ -1,31 +0,0 @@ -// todo: use import assertions once they're supported by Node.js & ESLint -// https://github.com/tc39/proposal-import-assertions -import {createRequire} from 'module' -const require = createRequire(import.meta.url) - -const baseProfile = require('./base.json') -import {products} from './products.js' - -const profile = { - ...baseProfile, - locale: 'de-DE', - timezone: 'Europe/Berlin', - // baseProfile.salt is interpreted as hex by hafas-client - salt: Buffer.from('pqjM3iKEGOAhYbX76k9R5zutv', 'utf8'), - addMicMac: true, - - products, - - departuresGetPasslist: true, - departuresStbFltrEquiv: true, - trip: true, - radar: true, - refreshJourney: true, - reachableFrom: true, - remarksGetPolyline: false, - lines: false, // fails with `FAIL` "HCI Service: request failed" -} - -export { - profile, -} diff --git a/p/hvv/products.js b/p/hvv/products.js deleted file mode 100644 index 45992d74..00000000 --- a/p/hvv/products.js +++ /dev/null @@ -1,94 +0,0 @@ -const products = [ // todo: what is `512`? - { - id: 'subway', - mode: 'train', - bitmasks: [1], - name: 'U-Bahn', - short: 'U', - default: true - }, - { - id: 'suburban', - mode: 'train', - bitmasks: [2], - name: 'S-Bahn', - short: 'S', - default: true - }, - { - id: 'akn', - mode: 'train', - bitmasks: [4], - name: 'AKN', - short: 'A', - default: true - }, - { - id: 'regional-express-train', - mode: 'train', - bitmasks: [8], - name: 'RegionalExpress', - short: 'RE', - default: true - }, - { - id: 'regional-train', - mode: 'train', - bitmasks: [16], - name: 'Regionalbahn', - short: 'RB', - default: true - }, - { - id: 'ferry', - mode: 'watercraft', - bitmasks: [32], - name: 'Fähre', - short: 'F', - default: true - }, - { - id: 'bus', - mode: 'bus', - bitmasks: [128], - name: 'Bus', - short: 'Bus', - default: true - }, - { - id: 'express-bus', - mode: 'bus', - bitmasks: [256], - name: 'Schnellbus', - short: 'Schnellbus', - default: true - }, - { - id: 'anruf-sammel-taxi', - mode: null, // todo - bitmasks: [1024], - name: 'Anruf-Sammel-Taxi', - short: 'AST', - default: true - }, - { - id: 'long-distance-train', - mode: 'train', - bitmasks: [4096, 64], - name: 'Fernzug', - short: 'ICE/IC/EC/EN', - default: false - }, - { - id: 'long-distance-bus', - mode: 'bus', - bitmasks: [2048], - name: 'Fernbus', - short: 'Fernbus', - default: false - } -] - -export { - products, -} diff --git a/p/hvv/readme.md b/p/hvv/readme.md deleted file mode 100644 index 787aa1fc..00000000 --- a/p/hvv/readme.md +++ /dev/null @@ -1,18 +0,0 @@ -# HVV profile for `hafas-client` - -[*Hamburger Verkehrsverbund (HVV)*](https://en.wikipedia.org/wiki/Hamburger_Verkehrsverbund) is the major local transport provider in [Hamburg](https://en.wikipedia.org/wiki/Hamburg). This profile adds *HVV*-specific customizations to `hafas-client`. - -## Usage - -```js -import {createClient} from 'hafas-client' -import {hvvProfile} from 'hafas-client/p/hvv/index.js' - -// create a client with HVV profile -const client = createClient(hvvProfile, 'my-awesome-program') -``` - - -## Customisations - -- parses *HVV*-specific products (such as *AKN*) diff --git a/p/readme.md b/p/readme.md index d22a0df9..c3614013 100644 --- a/p/readme.md +++ b/p/readme.md @@ -25,7 +25,6 @@ HAFAS endpoint | wrapper library | docs | example code | profile name [*S-Bahn München*](https://en.wikipedia.org/wiki/Munich_S-Bahn) | - | [docs](sbahn-muenchen/readme.md) | [example](sbahn-muenchen/example.js) | [`sbahn-muenchen`](sbahn-muenchen) *Saarfahrplan*/VGS ([Saarland](https://en.wikipedia.org/wiki/Saarland)) | - | [docs](saarfahrplan/readme.md) | [example](saarfahrplan/example.js) | [`saarfahrplan`](saarfahrplan) [Société Nationale des Chemins de Fer Luxembourgeois (CFL)](https://en.wikipedia.org/wiki/Société_Nationale_des_Chemins_de_Fer_Luxembourgeois) | - | [docs](cfl/readme.md) | [example](cfl/example.js) | [`cfl`](cfl) -[Hamburg public transport (HVV)](https://en.wikipedia.org/wiki/Hamburger_Verkehrsverbund) | - | [docs](hvv/readme.md) | [example](hvv/example.js) | [`hvv`](hvv) [*Nordhessischer Verkehrsverbund (NVV)*](https://en.wikipedia.org/wiki/Nordhessischer_Verkehrsverbund) ([Hesse](https://en.wikipedia.org/wiki/Hesse)) | - | [docs](nvv/readme.md) | [example](nvv/example.js) | [`nvv`](nvv) [*mobil.nrw*](https://www.mobil.nrw) | - | [docs](mobil-nrw/readme.md) | [example](mobil-nrw/example.js) | [`mobil-nrw`](mobil-nrw) *DB Busradar NRW* ([DB Regio Bus](https://en.wikipedia.org/wiki/DB_Regio#Bus_division_(DB_Regio_Bus))) | - | [docs](db-busradar-nrw/readme.md) | [example](db-busradar-nrw/example.js) | [`db-busradar-nrw`](db-busradar-nrw) diff --git a/test/e2e/hvv.js b/test/e2e/hvv.js deleted file mode 100644 index 8d97636d..00000000 --- a/test/e2e/hvv.js +++ /dev/null @@ -1,249 +0,0 @@ -import tap from 'tap' -import isRoughlyEqual from 'is-roughly-equal' - -import {createWhen} from './lib/util.js' -import {createClient} from '../../index.js' -import {profile as hvvProfile} from '../../p/hvv/index.js' -import {createValidateFptfWith as createValidate} from './lib/validate-fptf-with.js' -import {testJourneysStationToStation} from './lib/journeys-station-to-station.js' -import {journeysFailsWithNoProduct} from './lib/journeys-fails-with-no-product.js' -import {testJourneysStationToAddress} from './lib/journeys-station-to-address.js' -import {testJourneysStationToPoi} from './lib/journeys-station-to-poi.js' -import {testEarlierLaterJourneys} from './lib/earlier-later-journeys.js' -import {testDepartures} from './lib/departures.js' -import {testDeparturesInDirection} from './lib/departures-in-direction.js' -import {testArrivals} from './lib/arrivals.js' - -const T_MOCK = 1641897000 * 1000 // 2022-01-11T11:30:00+01 -const when = createWhen(hvvProfile.timezone, hvvProfile.locale, T_MOCK) - -const cfg = { - when, - // stationCoordsOptional: false, - products: hvvProfile.products, - // minLatitude: 50.7, - // maxLatitude: 53.2, - // minLongitude: 10.25, - // maxLongitude: 13.4 -} - -const validate = createValidate(cfg, {}) - -const client = createClient(hvvProfile, 'public-transport/hafas-client:test') - -const tiefstack = '4117' -const barmbek = '4933' -const altona = '20626' -// const hasselbachplatzSternstrasse = '6545' -// const stendal = '8010334' -// const dessau = '8010077' - -tap.skip('journeys – Hamburg Tiefstack to Hamburg Barmbek', async (t) => { - const res = await client.journeys(tiefstack, barmbek, { - results: 4, - departure: when, - stopovers: true - }) - - await testJourneysStationToStation({ - test: t, - res, - validate, - fromId: tiefstack, - toId: barmbek - }) - t.end() -}) - -// todo: journeys, only one product - -tap.skip('journeys – fails with no product', async (t) => { - await journeysFailsWithNoProduct({ - test: t, - fetchJourneys: client.journeys, - fromId: tiefstack, - toId: barmbek, - when, - products: hvvProfile.products, - }) - t.end() -}) - -tap.skip('Hamburg Tiefstack to Gilbertstr. 30, Hamburg', async (t) => { - const gilbertstr30 = { - type: 'location', - id: '970026640', - address: 'Hamburg, Gilbertstraße 30', - latitude: 53.554791, - longitude: 9.95781 - } - - const res = await client.journeys(tiefstack, gilbertstr30, { - results: 3, - departure: when - }) - - await testJourneysStationToAddress({ - test: t, - res, - validate, - fromId: tiefstack, - to: gilbertstr30 - }) - t.end() -}) - -tap.skip('Hamburg Tiefstack to Hamburger Meile', async (t) => { - const meile = { - type: 'location', - id: '980001841', - poi: true, - name: 'Hamburger Meile', - latitude: 53.572455, - longitude: 10.030541 - } - const res = await client.journeys(tiefstack, meile, { - results: 3, - departure: when - }) - - await testJourneysStationToPoi({ - test: t, - res, - validate, - fromId: tiefstack, - to: meile - }) - t.end() -}) - -// todo: via works – with detour -// todo: via works – without detour - -tap.skip('earlier/later journeys', async (t) => { - await testEarlierLaterJourneys({ - test: t, - fetchJourneys: client.journeys, - validate, - fromId: tiefstack, - toId: barmbek, - when - }) - - t.end() -}) - -tap.skip('trip details', async (t) => { - const res = await client.journeys(tiefstack, barmbek, { - results: 1, departure: when - }) - - const p = res.journeys[0].legs.find(l => !l.walking) - t.ok(p.tripId, 'precondition failed') - t.ok(p.line.name, 'precondition failed') - - const tripRes = await client.trip(p.tripId, {when}) - - validate(t, tripRes, 'tripResult', 'res') - t.end() -}) - -tap.skip('departures at Hamburg Barmbek', async (t) => { - const res = await client.departures(barmbek, { - duration: 5, when, - }) - - await testDepartures({ - test: t, - res, - validate, - id: barmbek - }) - t.end() -}) - -tap.skip('departures with station object', async (t) => { - const res = await client.departures({ - type: 'station', - id: tiefstack, - name: 'Hamburg Tiefstack', - location: { - type: 'location', - latitude: 1.23, - longitude: 2.34 - } - }, {when}) - - validate(t, res, 'departuresResponse', 'res') - t.end() -}) - -tap.skip('departures at Barmbek in direction of Altona', async (t) => { - await testDeparturesInDirection({ - test: t, - fetchDepartures: client.departures, - fetchTrip: client.trip, - id: barmbek, - directionIds: [altona], - when, - validate - }) - t.end() -}) - -tap.skip('arrivals at Hamburg Barmbek', async (t) => { - const res = await client.arrivals(barmbek, { - duration: 5, when - }) - - await testArrivals({ - test: t, - res, - validate, - id: barmbek - }) - t.end() -}) - -// todo: nearby - -tap.skip('locations named Elbphilharmonie', async (t) => { - const elbphilharmonie = '6242' - const locations = await client.locations('Elbphilharmonie', { - results: 20 - }) - - validate(t, locations, 'locations', 'locations') - t.ok(locations.length <= 20) - - t.ok(locations.find(s => s.type === 'stop' || s.type === 'station')) - t.ok(locations.find(s => s.poi)) // POIs - t.ok(locations.some((l) => { - return l.station && l.station.id === elbphilharmonie || l.id === elbphilharmonie - })) - - t.end() -}) - -tap.skip('station Hamburg Barmbek', async (t) => { - const s = await client.stop(barmbek) - - validate(t, s, ['stop', 'station'], 'station') - t.equal(s.id, barmbek) - - t.end() -}) - -tap.skip('radar', async (t) => { - const res = await client.radar({ - north: 53.569, - west: 10.022, - south: 53.55, - east: 10.0436 - }, { - duration: 5 * 60, when, results: 10 - }) - - validate(t, res, 'radarResult', 'res') - t.end() -}) diff --git a/test/fixtures/hvv-stop.json b/test/fixtures/hvv-stop.json deleted file mode 100644 index 62caeb04..00000000 --- a/test/fixtures/hvv-stop.json +++ /dev/null @@ -1 +0,0 @@ -{"ver":"1.16","ext":"HVV.1","lang":"eng","id":"ki22itti2igig6w8","svcResL":[{"meth":"LocDetails","err":"OK","res":{"common":{"locL":[{"lid":"A=1@O=Bf. Dammtor@X=9990315@Y=53561048@U=80@L=116@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"116","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989721@Y=53560949@U=80@L=163@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"163","state":"F","crd":{"x":9989721,"y":53560949,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386},{"lid":"A=1@O=Hamburg Dammtor@X=9989407@Y=53560787@U=80@L=8050@","type":"S","name":"Hamburg Dammtor","icoX":5,"extId":"8050","state":"F","crd":{"x":9989407,"y":53560787,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":220},{"lid":"A=1@O=Bf. Dammtor@X=9990449@Y=53561659@U=80@L=8860@","type":"S","name":"Bf. Dammtor","icoX":3,"extId":"8860","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":256,"pRefL":[4],"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9990117@Y=53560841@U=80@L=8861@","type":"S","name":"Bf. Dammtor","icoX":2,"extId":"8861","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":384,"pRefL":[3,4],"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9990063@Y=53561308@U=80@L=8862@","type":"S","name":"Bf. Dammtor","icoX":2,"extId":"8862","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":128,"pRefL":[3],"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991555@Y=53561111@U=80@L=8863@","type":"S","name":"Bf. Dammtor","icoX":2,"extId":"8863","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":128,"pRefL":[3],"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991303@Y=53560850@U=80@L=8884@","type":"S","name":"Bf. Dammtor","icoX":2,"extId":"8884","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":128,"pRefL":[3],"entry":true,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989569@Y=53560904@U=80@L=20500@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"20500","state":"F","crd":{"x":9989721,"y":53560949,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989721@Y=53560958@U=80@L=20501@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"20501","state":"F","crd":{"x":9989721,"y":53560949,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Hamburg Dammtor@X=9989569@Y=53560751@U=80@L=51666@","type":"S","name":"Hamburg Dammtor","icoX":1,"extId":"51666","state":"F","crd":{"x":9989569,"y":53560751,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":88,"pRefL":[1,2,5],"entry":true,"mMastLocX":2},{"lid":"A=1@O=Hamburg Dammtor@X=9989569@Y=53560751@U=80@L=51667@","type":"S","name":"Hamburg Dammtor","icoX":4,"extId":"51667","state":"F","crd":{"x":9989569,"y":53560751,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":64,"pRefL":[5],"entry":true,"mMastLocX":2},{"lid":"A=1@O=Bf. Dammtor@X=9991088@Y=53560679@U=80@L=59870@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"59870","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991088@Y=53560679@U=80@L=59871@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"59871","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991088@Y=53560679@U=80@L=59872@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"59872","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991088@Y=53560679@U=80@L=59873@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"59873","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991088@Y=53560679@U=80@L=59893@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"59893","state":"F","crd":{"x":9990315,"y":53561048,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989613@Y=53560913@U=80@L=59928@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"59928","state":"F","crd":{"x":9989613,"y":53560913,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989757@Y=53560958@U=80@L=59929@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"59929","state":"F","crd":{"x":9989757,"y":53560958,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989613@Y=53560913@U=80@L=62065@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"62065","state":"F","crd":{"x":9989613,"y":53560913,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9990126@Y=53560850@U=80@L=80717@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"80717","state":"F","crd":{"x":9990126,"y":53560850,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9991492@Y=53561021@U=80@L=88834@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"88834","state":"F","crd":{"x":9991492,"y":53561021,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9990288@Y=53561057@U=80@L=88835@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"88835","state":"F","crd":{"x":9990288,"y":53561057,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Bf. Dammtor@X=9990360@Y=53561596@U=80@L=89006@","type":"S","name":"Bf. Dammtor","icoX":0,"extId":"89006","state":"F","crd":{"x":9990360,"y":53561596,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":386,"entry":true,"mMastLocX":1},{"lid":"A=1@O=Hamburg Dammtor@X=9989569@Y=53560751@U=80@L=96361@","type":"S","name":"Hamburg Dammtor","icoX":5,"extId":"96361","state":"F","crd":{"x":9989569,"y":53560751,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":220,"entry":true,"mMastLocX":2},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989721@Y=53560958@U=80@L=107530@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"107530","state":"F","crd":{"x":9989721,"y":53560949,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":2,"pRefL":[0],"entry":true,"mMastLocX":1},{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989569@Y=53560904@U=80@L=107531@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"107531","state":"F","crd":{"x":9989721,"y":53560949,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":2,"pRefL":[0],"entry":true,"mMastLocX":1},{"lid":"A=1@O=U Stephansplatz@X=9989056@Y=53558126@U=80@L=107@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"107","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"mMastLocX":28},{"lid":"A=1@O=Stephansplatz (Oper/CCH)@X=9989353@Y=53558809@U=80@L=151@","type":"S","name":"Stephansplatz (Oper/CCH)","icoX":6,"extId":"151","state":"F","crd":{"x":9989353,"y":53558809,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385},{"lid":"A=1@O=U Stephansplatz@X=9989092@Y=53557848@U=80@L=8839@","type":"S","name":"U Stephansplatz","icoX":2,"extId":"8839","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":384,"pRefL":[3,4],"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9988652@Y=53557614@U=80@L=8840@","type":"S","name":"U Stephansplatz","icoX":2,"extId":"8840","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":384,"pRefL":[3,4],"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9988310@Y=53558072@U=80@L=8845@","type":"S","name":"U Stephansplatz","icoX":2,"extId":"8845","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":384,"pRefL":[3,4],"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9988517@Y=53558351@U=80@L=8846@","type":"S","name":"U Stephansplatz","icoX":2,"extId":"8846","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":128,"pRefL":[3],"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9988768@Y=53557587@U=80@L=8900@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"8900","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=Stephansplatz (Oper/CCH)@X=9989101@Y=53558935@U=80@L=16293@","type":"S","name":"Stephansplatz (Oper/CCH)","icoX":6,"extId":"16293","state":"F","crd":{"x":9989353,"y":53558809,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":1,"pRefL":[6],"entry":true,"mMastLocX":28},{"lid":"A=1@O=Stephansplatz (Oper/CCH)@X=9989245@Y=53558989@U=80@L=16294@","type":"S","name":"Stephansplatz (Oper/CCH)","icoX":6,"extId":"16294","state":"F","crd":{"x":9989353,"y":53558809,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":1,"pRefL":[6],"entry":true,"mMastLocX":28},{"lid":"A=1@O=Hamburg Dammtor@X=9989569@Y=53560751@U=80@L=21131@","type":"S","name":"Hamburg Dammtor","icoX":5,"extId":"21131","state":"F","crd":{"x":9989407,"y":53560787,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":196,"pRefL":[7,3,5],"entry":true,"mMastLocX":2},{"lid":"A=1@O=U Stephansplatz@X=9989110@Y=53558090@U=80@L=54890@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"54890","state":"F","crd":{"x":9989110,"y":53558090,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9989110@Y=53558090@U=80@L=59854@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"59854","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9989110@Y=53558090@U=80@L=59855@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"59855","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9989110@Y=53558090@U=80@L=59858@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"59858","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9989110@Y=53558090@U=80@L=59859@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"59859","state":"F","crd":{"x":9989056,"y":53558126,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=Stephansplatz (Oper/CCH)@X=9989299@Y=53558845@U=80@L=61803@","type":"S","name":"Stephansplatz (Oper/CCH)","icoX":6,"extId":"61803","state":"F","crd":{"x":9989299,"y":53558845,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=Stephansplatz (Oper/CCH)@X=9989299@Y=53558845@U=80@L=61804@","type":"S","name":"Stephansplatz (Oper/CCH)","icoX":6,"extId":"61804","state":"F","crd":{"x":9989299,"y":53558845,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=Stephansplatz (Oper/CCH)@X=9989299@Y=53558845@U=80@L=62047@","type":"S","name":"Stephansplatz (Oper/CCH)","icoX":6,"extId":"62047","state":"F","crd":{"x":9989299,"y":53558845,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9988517@Y=53558297@U=80@L=80716@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"80716","state":"F","crd":{"x":9988517,"y":53558297,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=U Stephansplatz@X=9989110@Y=53558090@U=80@L=88470@","type":"S","name":"U Stephansplatz","icoX":6,"extId":"88470","state":"F","crd":{"x":9989110,"y":53558090,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":385,"entry":true,"mMastLocX":28},{"lid":"A=1@O=Hamburg Dammtor@X=9989569@Y=53560751@U=80@L=96355@","type":"S","name":"Hamburg Dammtor","icoX":5,"extId":"96355","state":"F","crd":{"x":9989569,"y":53560751,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":220,"entry":true,"mMastLocX":2}],"prodL":[{"name":"","icoX":0,"cls":2},{"name":"","icoX":1,"cls":8},{"name":"","icoX":1,"cls":16},{"name":"","icoX":2,"cls":128},{"name":"","icoX":3,"cls":256},{"name":"","icoX":4,"cls":64},{"name":"","icoX":6,"cls":1},{"name":"","icoX":5,"cls":4}],"polyL":[],"layerL":[{"id":"standard","name":"standard","index":0,"annoCnt":0}],"crdSysL":[{"id":"standard","index":0,"type":"WGS84","dim":2}],"opL":[],"remL":[],"icoL":[{"res":"prod_comm_t","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":38,"g":169,"b":72,"a":255},"shp":"RES","shpRes":"oval"},{"res":"prod_reg","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":0,"g":0,"b":0,"a":255},"shp":"RES","shpRes":"rect_invert"},{"res":"prod_bus","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":211,"g":22,"b":29,"a":255},"shp":"RES","shpRes":"hexa"},{"res":"prod_bus_s","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":211,"g":22,"b":29,"a":255},"shp":"RES","shpRes":"hexa_s"},{"res":"prod_gen","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":0,"g":130,"b":193,"a":255}},{"res":"prod_reg_akn","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":228,"g":119,"b":34,"a":255},"shp":"RES","shpRes":"oval"},{"res":"prod_sub_t","fg":{"r":255,"g":255,"b":255,"a":255},"bg":{"r":0,"g":100,"b":164,"a":255},"shp":"RES","shpRes":"rect"}]},"locL":[{"lid":"A=1@O=Dammtor (Messe/CCH)@X=9989721@Y=53560949@U=80@L=163@","type":"S","name":"Dammtor (Messe/CCH)","icoX":0,"extId":"163","state":"F","crd":{"x":9989721,"y":53560949,"type":"WGS84","layerX":0,"crdSysX":0},"pCls":474,"pRefL":[0,1,2,3,4,5],"stopLocL":[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],"entryLocL":[18,17,26,25,23,22,21,20,19,16,15,14,13,12,9,8,7,6,5,4,3]}]}}]} \ No newline at end of file diff --git a/tools/pull-profile-base-data.sh b/tools/pull-profile-base-data.sh index 98ce9540..5d17ece8 100755 --- a/tools/pull-profile-base-data.sh +++ b/tools/pull-profile-base-data.sh @@ -35,7 +35,6 @@ node -p "$query" "$src/lu/cfl-hafas-mgate.json" >../p/cfl/base.json node -p "$query" "$src/us/cmta-hafas-mgate.json" >../p/cmta/base.json node -p "$query" "$src/de/db-hafas-mgate.json" >../p/db/base.json node -p "$query" "$src/de/db-busradar-nrw-hafas-mgate.json" >../p/db-busradar-nrw/base.json -node -p "$query" "$src/de/hvv-hafas-mgate.json" >../p/hvv/base.json node -p "$query" "$src/de/nasa-hafas-mgate.json" >../p/insa/base.json node -p "$query" "$src/de/invg-hafas-mgate.json" >../p/invg/base.json node -p "$query" "$src/ie/iarnrod-eireann-hafas-mgate.json" >../p/irish-rail/base.json