Επιστροφή

Data

Parking system Item

Parking system Item represents parking garage or parking lot typically with multiple entries/exits operated behind a barriers. The parking system Item must have class set to ParkingSystem.

Item metadata

All parking-specific data is defined inside Item meta object. It stores parking type, payment methods, parking accessibility and device list.

{
  "type": "Garage",
  "configurable": true,
  "controllable": true,
  "provider": {
    "name": "Operator Ltd.",
    "contact": "Phone 577 100 589"
  },
  "capacity": {
    "total": 120,
    "grouped": [{
      "permit": "TaxiPermit",
      "total": 10
    }]
  },
  "payments": [
    "Cash",
    "Card",
    "Sms"
  ],
  "accessibility": {
    "wheelchair": true,
    "lpg": false,
    "maxHeight": "200",
    "maxLength": "400",
    "maxWidth": "250"
  },
  "openingHours": [{
    "dayOfWeek": ["Monday", "Tuesday"],
    "opens": "09:00",
    "duration": 480
  }],
  "images": {
    "detailUri": "https://dotsoft.local/contents/donwload/507f1f77bcf86cd799439011"
  },
  "devices": [{
    "name": "et1",
    "type": "EntryTerminal",
    "level": 0,
    "description": "Entry terminal at Bay Street",
    "position": {
      "type": "Point",
      "coordinates": [
        17.991249561309814, 49.338986542414744
      ]
    }
  }],
  "floors": [{
    "level": 0,
    "name": "Ground parking",
    "polygon": {
      "type": "Polygon",
      "coordinates": [
        [
          [17.991206645965576, 49.33923820771258],
          [17.99083113670349, 49.33912635662798],
          [17.99161434173584, 49.33904246814772],
          [17.991206645965576, 49.33923820771258]
        ]
      ]
    }
  }]
}

Where:

  • type Parking type (Garage or Lot)
  • provider Provider information
  • configurable The parking system can be configured
  • controllable The parking system can be controlled
  • capacity Parking capacity
  • capacity.overall.total Number of total places
  • capacity.grouped Capacity of parking places grouped by parking permits
  • capacity.grouped.permit Parking permit (BlueZone, DisabledPermit, CarpoolingPermit, EmployeePermit, GovernmentPermit, ResidentPermit or TaxiPermit)
  • capacity.grouped.total Number of total places
  • payments Set of payment method flags (Cash, Card, Credit, Sms or Other)
  • accessibility Information about parking accessibility
  • accessibility.wheelchair True if parking is open for disabled drivers
  • accessiblity.lpg True if vehicles with LPG allowed
  • accessiblity.maxHeight Maximum vehicle height allowed (in cm)
  • accessiblity.maxLength Maximum vehicle length allowed (in cm)
  • accessiblity.maxWidth Maximum vehicle width allowed (in cm)
  • openingHours Definition of opening hours
  • openingHours.dayOfWeek List of days (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday)
  • openingHours.opens Opening time (in format hh:mm)
  • openingHours.duration Opening time duration (in minutes)
  • images Parking system images
  • images.detailUri URI of detail image
  • devices List of parking system components, eg. terminals, barriers or cashiers
  • devices.name Device name used in malfunction reporting and control commands
  • devices.type Type of device (Barrier, EntryTerminal, ExitTerminal, PaymentTerminal or Camera)
  • devices.level Device floor level (0 for ground)
  • devices.description Device description
  • devices.position Device position on map (in GeoJSON Point geometry object)
  • floors List of floors (in building)
  • floors.level Floor level (0 for ground)
  • floors.name Floor name
  • floors.polygon Floor area on map (in GeoJSON Polygon geometry object)

Occupancy data

Occupancy data describes parking occupancy state. This data is updated periodically based on processing of ParkingSystemOccupancyChangedEvent event. The occupancy data is stored in Item under the occupancy data key.

{
  "overall": {
    "total": 120,
    "free": 78
  },
  "grouped": [{
    "permit": "TaxiPermit",
    "total": 5,
    "free": 1    
  }]
}

Where:

  • overall Overall occupancy of parking lot
  • overall.total Number of total places
  • overall.free Number of free places
  • grouped Occupancy of parking places grouped by parking permits
  • grouped.permit Parking permit (BlueZone, DisabledPermit, CarpoolingPermit, EmployeePermit, GovernmentPermit, ResidentPermit or TaxiPermit)
  • grouped.total Number of total places
  • grouped.free Number of free places

Parking zone Item

Parking zone Item represents parking zone or parking street restricted by specific geographical area. It is typically used as a virtual parking zone where other parking Items like occupancy sensors or payment machines can be located. The Parking zone Item must have class set to ParkingZone.

Item metadata

All zone-specific data is defined inside Item meta object. It describes zone type, name, level and provider information.

{
  "tariffZone": "Zone A",
  "tariffInfo": "Each hour    *10 CZK*",
  "openingHours": [{
    "dayOfWeek": ["Monday", "Tuesday"],
    "opens": "09:00",
    "duration": 480
  }]
}

Where:

  • tariffZone Tariff zone name
  • tarrifInfo Tariff information (in Markdown)
  • openingHours Definition of opening hours
  • openingHours.dayOfWeek List of days (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday)
  • openingHours.opens Opening time (in format hh:mm)
  • openingHours.duration Opening time duration (in minutes)

Occupancy data

Occupancy data describes parking occupancy state. This data is updated periodically based on processing of ParkingZoneOccupancyChangedEvent event. The occupancy data is stored in Item under the occupancy data key.

{
  "overall": {
    "total": 120,
    "free": 78
  },
  "grouped": [{
    "permit": "TaxiPermit",
    "total": 5,
    "free": 1    
  }]
}

Where:

  • overall Overall occupancy of parking lot
  • grouped.total Number of total places
  • grouped.free Number of free places
  • grouped Occupancy of parking places grouped by parking permits
  • grouped.permit Parking permit (BlueZone, DisabledPermit, CarpoolingPermit, EmployeePermit, GovernmentPermit, ResidentPermit or TaxiPermit)
  • grouped.total Number of total places
  • grouped.free Number of free places

Payment machine Item

Payment machine Item represents payment machine or payment terminal dedicated parking fees collection. The Parking system Item must have class set to PaymentMachine.

Item metadata

All parking-specific data is defined inside Item meta object. It describes parking type, payment methods, parking accessibility and device list.

{
  "provider": {
    "name": "Operator Ltd.",
    "contact": "Phone 577 100 589"
  },
  "payments": [
    "Cash",
    "Card",
    "Sms"
  ],
  "openingHours": {},
  "images": {
    "detailUri": "https://dotsoft.local/contents/donwload/507f1f77bcf86cd799439011" 
  }
}

Where:

  • provider Provider information
  • payments Set of payment method flags (Cash, Card, Credit, Sms or Other)
  • openingHours Definition of opening hours
  • openingHours.dayOfWeek List of days (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday)
  • openingHours.opens Opening time (in format hh:mm)
  • openingHours.duration Opening time duration (in minutes)
  • images Parking terminal images
  • images.detailUri URI of detail image

Occupancy sensor Item

Occupancy sensor Item represents parking occupancy sensor that detects occupancy of one parking place. The Parking system Item must have class set to OccupancySensor.

Item metadata

All sensor-specific data is defined inside Item meta object. It describes level and parking permits.

{
  "level": {
    "number": 0,
    "name": "1PP"
  },
  "permits": [
    "BlueZone", 
    "DisabledPermit"  
  ],
  "overstayLimit": 120
}

Where:

  • level Level information
  • level.number Level number (eg. 0 as ground or -1 as underground)
  • level.name Level name
  • permits List of parking permits (BlueZone, EvPermit, DisabledPermit, CarpoolingPermit, EmployeePermit, GovernmentPermit, ResidentPermit or TaxiPermit )
  • overstayLimit Overstay limit (in minutes)

Occupancy data

Occupancy data describes parking sensor state. This data is updated periodically based on processing of SensorOccupancyChangedEvent event. The occupancy data is stored in Item under the occupancy data key (property).

{
  "occupied": true,
  "overstay": false
}

Where:

  • occupied Vehicle presence at sensor (true if place is occupied)
  • overstay Vehicle overstay (true if vehicle stays on place over limit)

Commands

BarrierControlCommand

Command with type BarrierControlCommand is dedicated to control the barriers of parking system.

Command extras

{
  "device": "et1",
  "action": "BarrierUp"
}

Where:

  • device Device name from device list stored in Item metadata. Device type must be EntryTerminal, ExitTerminal or Barrier.
  • action Action requested to be executed on equipment (BarrierUp, BarrierDown or AllowPassage )

Events

ParkingSystemOccupancyChangedEvent

Event with type ParkingSystemOccupancyChangedEvent shall be registered whenever parking system occupancy has changed.

Event extras

{
  "overall": {
    "total": 120,
    "free": 78
  },
  "grouped": [{
    "permit": "TaxiPermit",
    "total": 5,
    "free": 1    
  }]
}

Where:

  • overall Overall occupancy of parking lot
  • grouped.total Number of total places
  • grouped.free Number of free places
  • grouped Occupancy of parking places grouped by parking permits
  • grouped.permit Parking permit (BlueZone, DisabledPermit, CarpoolingPermit, EmployeePermit, GovernmentPermit, ResidentPermit or TaxiPermit)
  • grouped.total Number of total places
  • grouped.free Number of free places

ParkingVehicleEnteredEvent

Event with type ParkingVehicleEnteredEvent shall be registered after new vehicle enters the parking.

Event extras

{
  "sessionId": "456123",
  "device": "et1",
  "lpn": "2Z96447",
  "image": "aHR0cHM6Ly93d3cubW90b2JpdC5jb20==="
}

Where:

  • sessionId Vehicle entrance identification (if available)
  • device Device name from device list stored in Item metadata
  • lpn License plate number
  • image Picture (in Base64 format)

ParkingVehicleLeftEvent

Event with type ParkingVehicleLeftEvent shall be registered after vehicle leaves the parking.

Event extras

{
  "sessionId": "456123",
  "device": "xt1",
  "lpn": "2Z96447",
  "image": "aHR0cHM6Ly93d3cubW90b2JpdC5jb20==="
}

Where:

  • sessionId Vehicle entrance identification (if available)
  • device Device name from device list stored in Item metadata
  • lpn License plate number
  • image Picture (in Base64 format)

ParkingTransactionEvent

Event with type ParkingTransactionEvent shall be registered each time parking system issue a new transaction.

Event extras

{
  "device": "pt1",
  "transactionType": "ParkingFeePayment",
  "paymentMethod": "Card",  
  "amount": 450,
  "currency": "CZK"
}

Where:

  • device Device name from device list stored in Item metadata. The type of device must be PaymentTerminal.
  • transactionType Transaction type (ParkingFeePayment, CreditTopUp or TravelTicket)
  • paymentMethod Payment method (Cash,Card, Credit, Sms or Other)
  • amount Amount including VAT
  • currency Currency in the ISO 4217 format

ParkingZoneOccupancyChangedEvent

Event with type ParkingZoneOccupancyChangedEvent shall be registered whenever parking zone occupancy has changed.

Event extras

{
  "overall": {
    "total": 120,
    "free": 78
  },
  "grouped": [{
    "permit": "TaxiPermit",
    "total": 5,
    "free": 1    
  }]
}

Where:

  • overall Overall occupancy of parking lot
  • grouped.total Number of total places
  • grouped.free Number of free places
  • grouped Occupancy of parking places grouped by parking permits
  • grouped.permit Parking permit (BlueZone, DisabledPermit, CarpoolingPermit, EmployeePermit, GovernmentPermit, ResidentPermit or TaxiPermit)
  • grouped.total Number of total places
  • grouped.free Number of free places

SensorOccupancyChangedEvent

Event with type SensorOccupancyChangedEvent shall be registered whenever parking sensor occupancy has changed.

Event extras

{
  "occupied": true
}

Where:

  • occupied Vehicle presence at sensor (true if place is occupied)

SensorOverstayDetectedEvent

Event with type SensorOverstayDetectedEvent shall be registered whenever parking sensor signalizes an overstay.

Event extras

{
  "limit": 120
}

Where:

  • limit Overstay limit (in minutes)

Types of malfunction events

Malfunction types in event extras

  • AlarmDetected
  • BatteryEmpty
  • PowerLost
  • OutOfOrder
  • BoxFull
  • BoxEmpty
  • PaperOut
  • TransactionIssue
  • CashManipulationIssue