 uint64_t messageTimestamp = 0;
 uint64_t heartbeatTimestamp = 0;
 bool isConnected = false;
+bool isSubscribed = false;
+
+
+const char* PoleSubscriptionRequest = 
+"<omiEnvelope xmlns=\"http://www.opengroup.org/xsd/omi/1.0/\" version=\"1.0\" ttl=\"-1\">"
+ "<read msgformat=\"odf\" interval=\"-1\" callback=\"0\">"
+   "<msg>"
+     "<Objects xmlns=\"http://www.opengroup.org/xsd/odf/1.0/\">"
+       "<Object>"
+         "<id>ParkingService</id>"
+         "<Object>"
+           "<id>ParkingFacilities</id>"
+           "<Object>"
+             "<id>CSBuildingParkingLot</id>"
+             "<Object>"
+               "<id>ParkingSpaceTypes</id>"
+               "<Object>"
+                 "<id>ElectricVehicleParkingSpace</id>"
+                 "<Object>"
+                   "<id>Spaces</id>"
+                   "<Object>"
+                     "<id>EVSpace1</id>"
+                     "<InfoItem name=\"OpenLid\"/>"
+                   "</Object>"
+                 "</Object>"
+               "</Object>"
+             "</Object>"
+           "</Object>"
+         "</Object>"
+       "</Object>"
+     "</Objects>"
+   "</msg>"
+ "</read>"
+"</omiEnvelope>" ;
+
 
 void webSocketEvent(WStype_t type, uint8_t * payload, size_t length) {
 


  while (isConnected) {
    webSocket.loop();
    DFORMAT("RAM Memory left: %d\r\n", ESP.getFreeHeap());
  
    uint64_t now = millis();

    if(now - messageTimestamp > MESSAGE_INTERVAL) {
      messageTimestamp = now;

      DLN("Sending testRead");
      webSocket.sendTXT(testRead);
    }
    if((now - heartbeatTimestamp) > HEARTBEAT_INTERVAL) {
      heartbeatTimestamp = now;


  }



  for (int wait = 0; wait < 15 && !isConnected; wait++) {
    DLN("Waiting for connection.");
