----------------------------------------------------------------------------------- GTS Changelog Copyright 2007-2020 GeoTelematic Solutions, Inc. ----------------------------------------------------------------------------------- Version 2.6.8 [pending] - Version 2.6.7 [2020/02/20] - NEW: Added additional status codes - NEW: Added additional EventData fields - NEW: Added PasswordHandler SHA256 password encoding option - NEW: Added PasswordHandler maximum password length option - NEW: Added support for coloring separate map route segments - NEW: Added support for retro-actively updating blank addresses - NEW: Added 'DBWhere' support for 'INLIST' exclusion - NEW: Added support for GISGraphy-5 reverse-geocoding - NEW: Added route segment color support - NEW: Added Geozone role-based Geozone visibility support - UPD: Removed "&channel=" parameter from Google Roads api - UPD: Updated 'CountryCode.java' - UPD: Changed 'DataTime.java' Day-Start option from 00:01:01 to 00:00:01 - UPD: Removed "sort(Comparator...)" from 'OrderedSet.java' due to Java-8 conflict - UPD: Increased length of Device fuelTankProfile fields - UPD: Increased length of Account smtpProperties field - UPD: Added Checksum CRC-64/ECMA-182 support - FIX: Fixed 'DBFactory.java' 'dumpTable' to convert BLOB fields to hex Strings Version 2.6.6 [2018/09/10] - NEW: Added additional status codes. - NEW: Added engine-displacement field to Device table - NEW: Device Admin page list now displays time of last received event - NEW: Added last device connect time to SysAdmin Account list page - UPD: Added additional report layout fields - UPD: Added per-device support for reported PTO hours - UPD: Added support for additional maintenance fields to Device table - UPD: Added retry support for Google reverse-geocode over-limit failures - FIX: Fixed Leaflet map display issues on reports - FIX: Disabled private-label URL path lookup in Resource table - FIX: Added "house_number" to Nominatim reverse-geocode parsing (same as 'house') - NEW: Added JSONBean support to JSON parser Version 2.6.5 [2017/10/09] - NEW: Added additional status codes. - NEW: Added "maximumRpm" field to Device table - UPD: Added support for table Insert/Update "IGNORE" keyword. - UPD: Added support for table alternate key sort order. - DCS: Enabled additional support for TKNano, and OBD data. - UPD: Added partial support for OpenSeaMaps to OpenLayers map support. - UPD: Updated UnwiredLabs cell-tower lookup to allow including the deviceID. Version 2.6.4 [2017/04/13] - NEW: Added additional status codes. - NEW: Added additional column types to report field layout. - NEW: Added additional fields to the report FieldLayout and EventDataLayout. - NEW: Added Account-level SMTP properties. - NEW: Added additional fields to Device table. - NEW: Added additional fields to Driver table. - NEW: Added additional fields available for info-balloon display. - NEW: Added "setGroupByFields" to DBSelect. - NEW: Feature to display table records that do not have a valid Account owner. - NEW: Added optimizations to DailySummaryReport. - NEW: Added support for loading Pushpins from a directory. - FIX: Fixed path color specified in the Google static map support. - UPD: Update map link Google KML to use updated pushpin location. - DCS: Added "batteryVolts", "vBatteryVolts" field support to GPSEvent.java - FIX: Fixed DBRecordKey _getWhereClause when no keys specified and partial=all - DCS: tk10x] Fixed parsing check for VJoy devices (thanks to Xavier Descamps) - CHG: EventData "emailProperties" renamed to "smtpProperties" Version 2.6.3 [2016/10/03] - UPD: EventData report layout now supports "fuelLevelVolume" to include tank #1/#2 - UPD: Default "trackMap.includeStatusCodeColor" to true for Location Detail list. - UPD: Added additional support to EventData to handle 2 fuel tanks - NEW: Added option to check for previous passwords when changing passwords. - NEW: Added "useSSL" option to OpenLayers map provider configuration. - FIX: Fixed "fuelLevelVolume" in EventData detail/summary reports. - NEW: "Change Password" page displayed if password expired on login. - NEW: Updated top menu to automatically adjust displayed menu buttons per row. - NEW: Added support for Leaflet map tile display engine. - NEW: Added support for OpenStreetMap using the Leaflet map tile display engine. - NEW: Added support for ESRI maps using the Leaflet map tile display engine. - NEW: Added support for MapBox maps using the Leaflet map tile display engine. Version 2.6.2 [2016/06/10] - UPD: Updated Generics to support compiling with Java-7 without warning/errors. - NEW: Can now compile with either Tomcat-7 or Tomcat-8 without code mods. - NEW: Checkinstall now displays current Tomcat version in use. - NEW: Added additional status codes. - NEW: Added summary totals line to "Trip Report Detail". - NEW: Added support to Device.java for fuel tank #2 capacity. - NEW: Added "cargoTemp", "coolantPressure" columns to EventData table. - NEW: Added "sequence" column to GroupList table (to retain list order). - NEW: Added report total column to TripReport. - NEW: Added excessive failed login checks to Account/User login. - NEW: Added additional EventDataLayout/FieldLayout report column support. - UPD: Changed EventData table "sequence" column to unsigned-long. - DCS: astra] Update Astra DCS from Astra Telematics Limited. - FIX: Fixed "addtnlSelect_2" issue in EventData "getRangeEvents" to fix reports. - FIX: Added fix to detect stale/closed connections for MariaDB compatibility - FIX: Updated device last-ignition-state to check last ignition on/off times. - FIX: Fixed "gtsdmtp" compile issue. Version 2.6.1 [2016/01/17] - NEW: Added additional status codes. - NEW: Added additional fields to Device table. - NEW: Added option to "checkInstall" to display list of modified files. - NEW: Added "useSSL" option to Google reverse-geocoding configuration. - NEW: Added support for OpenCageData reverse-geocoding. - NEW: Map pushpin replay can be now configured to skip over nearby pushpins. - NEW: Added "tripElapse" column to Driving/Stopped report - NEW: Added support for fuel-tank #2 fuel level profiling - NEW: Added additional geozone load/import options - UPD: "startupInit.Device.OpenDMTPFieldInfo=true" needed to for OpenDMTP fields. - FIX: Fixed index map link display for Event Detail (by Group) report - DCS: astra] Added missing "estimateOdometer" support. - DCS: tk10x] Added support for configuring hearbeat ACK. - DCS: tk10x] Added "speedConversionFactor" property for custom speed units Version 2.6.0 [2015/09/24] - NEW: Added additional status codes. - NEW: Requires at least Java JDK 7 to utilize additional features. - NEW: Added "engineTemp", "oilCoolerInTemp", "oilCoolerOutTemp" to EventData. - NEW: Added additional Device table columns. - NEW: Updated checkInstall to report non-GTS user owned files in $CATALINA_HOME - NEW: Geozone now supports setting custom status codes for Arrive/Depart. - UPD: Status codes STATUS_DOOR_[OPEN|CLOSE]_* moved to new value. - UPD: Status codes STATUS_SEATBELT_[ON|OFF]_* moved to new value. - UPD: Added additional STATUS_INPUT_[ON|OFF]_* codes. - UPD: "dcservers.dtd" updated with latest XML config (thanks to Andrey Troitskiy) - UPD: CheckInstall now displays missing optional jars as warnings (not errors). - UPD: CheckInstall now checks for non-GTS user owned files (Java 7+ only) - UPD: Removed weather/cloud later from Google Maps (no longer supported by Google) - DCS: astra] DCS updated with new protocol features. - DCS: tk10x] DCS updated with new protocol features. Version 2.5.9 [2015/05/15] - NEW: Added additional status codes. - NEW: Added "vehicleYear" to Device.java table module. - NEW: Added "dutyStatus" to Driver.java table module. - NEW: Added additional fields to EventData.java table module. - NEW: Added separate city/state/zip/etc field parsing to Google reverse-geocoder - NEW: ServerSocketThread "maxClientPoolSize" now also applied to UDP listeners - NEW: Added "googleLink" support to "index" report columns - NEW: Added additional redirect support to FileTools.java "copyFile(URL...") - UPD: Nmea0183 module updated to handle additional custom record types. - UPD: Added support for associating a pushpin with a Geozone on the Device map. - FIX: "SeverSocketThread.java" now handles native thread creation error condition. - FIX: Fixed Account.java "gtsDiskUsage" free space display. - FIX: Fixed swapped badge#/license# display on Driver Admin list page. Version 2.5.8 [2015/02/12] - NEW: Initial support for downloading/installing CelltracGTS/Server plug-in. - NEW: Added additional status codes. - NEW: Added "places" support to Google map-provider. - NEW: Initial support for handling non-linear analog sensors. - NEW: Added support for setting DNS caching timeout. - UPD: "EventData.allowInnoDBCountWithWhere" property defaults to "true". - UPD: GeocodeProvider now checks property overrides in BasicPrivateLabelLoader. - UPD: Motion Report "idle" definition changed to 0-speed during trip. - DCS: Fixed Sanav CellTower information parsing (reorder CID/LAC). Version 2.5.7 [2014/10/07] - NEW: Added additional status codes. - NEW: Initial support for DeviceGroup notify email address (incomplete). - NEW: Added "useResultAddress" property to "nominatim" reverse-geocode provider. - NEW: Added DATA_VEHICLE_MAKE, DATA_VEHICLE_MODEL for report FieldLayout. - NEW: Added "fleetSortByField" property to MotionReport. - FIX: Fixed odometer offset used by MotionReport. - FIX: Fixed ignition-hour accoumulation in "Device.java". - UPD: Check for "Timezones" tag within "Domain" in private.xml - UPD: Changes made to support compiling under Java-8. - UPD: Added comments to "org/opengts/war/tools/BufferedHttpServletResponse.java" to indicate the change required in this module to support compiling with Tomcat-8 (changes required due to API differences in Servlet Spec 3.1). - DCS: tk10x] Added support for using the last valid GPS location. - DCS: tk10x] Added support for VJoy device. - DCS: tk10x] Cell-tower data parsing for tk103_2 (thanks to Franjieh El Khoury). Version 2.5.6 [2014/06/29] - NEW: Enabled "Driver Message Detail" report to display messages returned from from CelltracGTS/Pro application. - NEW: Added EventData report columns "ptoDistance", "workHours", "workDistance". - NEW: Added EventData columns FLD_ptoDistanceKM, FLD_workDistanceKM - NEW: Added initial support for FuelLevelProfile. - NEW: Initial implementation for active/inactive Geozone checks. - FIX: Fixed battery-level percentage display on some reports. - FIX: Fixed NPE that would occasionally occur when displaying "Near By" Geozones. Version 2.5.5 [2014/05/05] - NEW: Added additional status codes. - NEW: Added new fields to EventData table - NEW: Added support for fuel-cost to Account/Device table and reports. - DCS: gprmc] Added battery-temperature support. - DCS: gprmc] Automatically adjust non-decimal battery level value to a percent. Version 2.5.4 [2014/04/02] - NEW: Added additional status codes. - NEW: Added "allowWebService" column to Account table. - NEW: Added "insuranceExpire" column to Device table. - UPD: Additional changes to support table management of indexes in MS SQL Server. - UPD: Update CheckInstall to list currently loaded config files. - DCS: gc101] Fix packets sent via POST - DCS: gprmc] Fix packets sent via POST - DCS: sanav] Added support for checking "maximumHDOP". - DCS: tk10x] Added support for new TK102 protocol (TK102B). Version 2.5.3 [2014/01/01] - NEW: Added additional status codes. - NEW: Added generalized replacement handling to SMSOutboundGateway.java - NEW: "Driving/Stopped Time Summary" report supported in Fleet/Group detail reports. - NEW: Added disk utilization checking to "checkInstall" command. - NEW: Added "equipmentStatus" / "licenseExpire" columns to Device table. - NEW: Added additional fields to report FieldLayout. - NEW: Added fleet detail reporting support to MotionReport. - CHG: "Driving/Stopped Time Summary" report moved to Device/Vehicle Detail reports. - DCS: gprmc] Added support for CellTower lookup (thanks to STefan Mayer) - DCS: template] fixed "createGPSEvent" to property set "lastModemID". Version 2.5.2 [2013/09/30] - CHG: Sample data ("demo" account) moved to 2013/08/26 - NEW: Added additional status codes. - NEW: Added support for updating key fields. - UPD: Increased PendingCommands "commandArgs" field length. - UPD: Updated "checkInstall" MySQL check to also look for "/etc/mysql/my.cnf" - UPD: Added field length check to EventData "postalCode". - UPD: Added "DATA_DRIVER_ID" field option to TripReport. - DCS: tk10x] added initial support for "TK-nano" device (ASCII packets). - DCS: gprmc] fixed date/time blank issue. Version 2.5.1 [2013/08/06] - NEW: Added additional status codes. - NEW: CheckInstall] Group displayed reports by type. - NEW: Added Account "allowNotify" field. - NEW: Added Account command-line parameter "-setPassword". - NEW: Added Device "lastEngineOnTime"/"lastEngineOffTime" fields. - NEW: Added Device engine-hour accumulation based on Engine On/Off events. - NEW: Added Device-based work-hour reporting to Motion Report. - NEW: Added unique SIM-phone-number support to Device/Vehicle Admin. - FIX: Fixed Motion Report idle time stop calculation. - NEW: Added additional report column support to "FieldLayout.java" - FIX: Fix NPE in "DateTime.parseDateTime", which could occur under some conditions. - FIX: Fixe "Payload.readLongBCD" to support reading Little-Endian values. - UPD: Added ACL support for Read/View to "System Accounts". - DCS: gprmc] Added battery-level/volts, #satellites (thanks to STefan Mayer) Version 2.5.0 [2013/06/05] - NEW: Added support for obtaining an approximate count of table records when using MySQL "InnoDB" ("InnoDB" does not efficiently support the "count(*)" select clause for obtaining the exact number of table records). - NEW: Added support for displaying MySQL engine type to "CheckInstall.java" - NEW: Added DateTime support for parsing delta-month/year dates (ie. "+1m", "-2y") - NEW: Added additional status codes. - DCS: Fixed GPSEvent status code logging. - DCS: template] Fixed "$POS,..." longitude parsing. - DCS: template] Fixed possible NPE occurance in "createGPSEvent" - DCS: tk10x] Fixed mileage/odometer calculation. - DCS: tk10x] Added handling of GPIO events to "parseInsertRecord_TK103_alt" Version 2.4.9 [2013/04/08] - NEW: Added additional status codes. - FIX: Fixed JSON recursive array parsing. - NEW: Added RTProperties optional property setting feature (ie. "key?=value") - NEW: Added additional fields to reporting EventDataLayout. Version 2.4.8 [2013/03/01] - NEW: Added additional status codes. - NEW: Ignore old events when processing event Geozone detection. - NEW: Added check for excessive past events during event processing. - NEW: Added support for report header column group titles. - NEW: Update event "inputMask" from device lastInputState if unset by DCS. - CHG: Support multiple specified accounts when deleting old events. - DCS: gtsdmtp] added estimated odometer calculations. - FIX: Fixed "DCServerFactory.java" command "Type" tag parsing. [B28] Version 2.4.7 [2012/12/27] - NEW: Added additional status codes. - NEW: Added "priority" column to EventData table ("CustomFieldInfo" optional fields) - FIX: Fix Reverse-Geocoding for cell-tower locations when RG 'alwaysFast' is true. - FIX: Added proper sort ordering for temperature fields in reports. - FIX: Removed "ORDER BY" fields when retrieving only a record "COUNT(*)". - DCS: gprmc] If 'mobileID' and 'accountID' are blank, use 'deviceID' as 'mobileID'. - DCS: astra] New Astra DCS provided by Astra Telematics. Version 2.4.6 [2012/11/02] - CHG: Changed EntityManager TRAILER type to '1'. - NEW: Added "entityType" field to EventData table ("CustomFieldInfo" option fields) - NEW: Added custom outbound SMS gateway error checking. - NEW: Added additional status codes. - NEW: Added hardcoded support to "ReportSpreadsheet.java" for numeric columns. - NEW: Added new "-rtpidfile=" command line option to write the current PID file. - DCS: tk10x] Added "LOAD" and "ON" acknowledgements, where required. - FIX: ReportBody methods "getRecordCount" and "isPartial" are now thread-safe. - FIX: Changed SQL Server data types for UINT8/INT8, UINT16/INT16. Version 2.4.5 [2012/09/02] - CHG: Increased number of geozone points to 10. - NEW: Added additional columns to EventData table. - NEW: Added a "maxMessageLength" property to "SMSOutboundGateway" support. - NEW: Added "createAge" column option to report layout "EventDataLayout". Version 2.4.4 [2012/08/01] - NEW: Additional pushpins, special thanks to Jason Herring. - NEW: Added option to Account table for finding referenced email addresses. - NEW: Added additional fields to Device table. - NEW: Added ${vehicleVolts} message replacement variable to EventData. - NEW: Added "reportDistance" column option to report layout "EventDataLayout". - NEW: Added "Assigned User ID" option to Device/Vehicle Admin page. - NEW: Added "lastUpdateUser" column support to various tables. - DCS: gprmc] Fixed NPE when no date/time is specified. Version 2.4.3 [2012/06/29] - NEW: Additional status codes. - CHG: Added event 'createAge' to map pushpin events sent to the client browser. - DCS: New Lantrix T1800/T2000 DCS. Provided by Carlos Ramos. - FIX: Check for divide-by-zero in Account when EconomyUnits is set to "L/100km". Version 2.4.2 [2012/05/27] - NEW: Added command-line "-delete" option to "Geozone.java". - NEW: Added check for validating local host name to "CheckInstall". - FIX: Fixed NPE issue in EventData/Device/Account modules when adding optional fields to the map info-balloon with "OptionalEventFields.DeviceMap=". - FIX: Fixed connection pool issue that could cause a memory leak when using DB connection pooling thanks to Brijraj Vaghani). - DCS: aspicore - added simulated geozones and estimated odometer calculations. GPS location is invalid. display if enabled. Version 2.4.1 [2012/04/20] - NEW: Added additional defined Status Codes. - NEW: Ability to delete old events by DeviceGroup (as well as by Device). Also checks the very last event when deleting old events. If the last event is prior to the deleted time range, the last event will be retained. - NEW: Added additional columns types to EventDataLayout.java and FieldLayout.java. - NEW: Added ability to hide "Unique ID", "SIM#", on Device Admin page via ACLs. - NEW: Added "userInfo.showAccessControlList" property to hide ACL list on User Admin. - NEW: Added field "simID" to Device record. - NEW: Added command-line option to delete old EventData records by device group. - NEW: Added command-line support for displaying "events-per-second" in EventData. - NEW: Made GISGraphy street address lookup optional. - NEW: Added Mapquest OSM/Arial lay support to OpenLayers MapProvider support. (See "openLayers" MapProvider definition for details.) Make sure to comply with their terms of service. - NEW: Added "Event Count by Day" device detail report. - DCS: gprmc - update to be able to handle several protocol formats simultaneously. - DCS: gc101 - fixed NPE issue when invalid $GPRMC record is parsed. - DCS: template - "parseInsertRecord_ASCII_02" now allows using AccountID as MobileID. - DCS: tk10x - added digital input change simulated events. - FIX: Fixed typo - changed property key "groupInfo.deviceLisSortBy" name to "groupInfo.deviceListSortBy". Version 2.4.0 [2012/02/05] - NEW: Added additional defined Status Codes. - NEW: Added initial support for sending SMS messages from the OpenGTS "RuleFactoryExample.java" module (SMS outbound gateway config required). - NEW: Added Economy-Units "L/100km" (Litres per 100 kilometers). - NEW: Added "lastIgnitionOffTime" column to Device table. - NEW: CheckInstall now shows report limits, SMS gateway configuration. - UPD: Increased Resource table column "resourceID" length to 80 characters. - UPD: Added "fuelRate" to EventData report layout, and additional fields to the Field report layout. - UPD: "tinygeocoder" ReverseGeocodeProvider can now specify a "host" property. - FIX: Fixed ReportTable.java where single device reports were sometimes not written to the output stream. - FIX: Changed ForgotPassword.java to use default user-id with blank "User" entry. - DCS: gc101 - Sanav HTTP-mode DCS now supports battery level, number of satellites, and HDOP (if data is provided in event packet). - DCS: tk10x - Added initial support for alternate TK103 format. Added support for TK102 battery-voltage and altitude. Version 2.3.9 [2011/12/06] - NEW: Added additional StatusCodes. - NEW: Added "job" information to Device record. - NEW: Added runtime config property "GoogleKML.pushpinBaseURL" to the "config.conf" file to allow overriding the location where Google provides various pushpins. - CHG: Changed "CheckInstall" check for MySQL "max_onnections". - CHG: Added check for Java vendor "Oracle" to CheckInstall. - CHG: Added additional packet format support to example 'template' DCS module. - CHG: Added UTF-8 characterset to SendMail support. Version 2.3.8 [2011/10/10] - NEW: Added additional StatusCodes. - NEW: Added "map.showPushpins" property to MapProvider section to allow disabling the display of pushpins on the map. - NEW: Added support for daylight-savings-time zone names to "DateTime.java". - UPD: Added geozoneID support to "GPSEvent.java" - DCS: taip - Added estimated odometer calculation, and simulated geozone support. - DCS: sipgear - default listen port changed from 31270 to 31170. - DCS: icare - default listen port changed from 31260 to 31160. - FIX: Fix memory leak issue in "OpenLayers.js" (thanks to YanXu "stelzbock") Version 2.3.7 [2011/08/22] - NEW: Added additional StatusCodes. - CHG: Modified "tk10x" DCS to attempt to determine actual GMT timezone (configure TK103 devices relative to GMT+0, rather than the local timezone). - CHG: Added unicode character encoding/decoding to address fields on map. - CHG: Changed Pushpin attribute "iconOffset" to "iconHostspot" (in private.xml). Support for "iconOffset" will still remain for this release. - NEW: Added additional log messages to Geonames when reverse-geocoding fails. - NEW: Unicode characters in addresses are now encoded when uploading to map page. - CHG: Modified "setDate(...,Y,M,D)" (in "DateTime.java") to retain current time. - FIX: Fixed FileTools "copyStreams" pattern matching (thanks to Jan Wedel, YanXu). - FIX: Fixed issues with JSON parsing. - UPD: Spanish language translation update (thanks to Sebastian Mantilla Beniers). Version 2.3.6 [2011/07/15] - NEW: Added new "tk10x" device communication server (DCS) module to support most TK102 and TK103 devices (also supports "sipgear" device protocol). The "tk10x" DCS also support simulated geozone arrive/depart detection, and event code mapping to GTS status-codes. ("sipgear" DCS remains in this version, but may be removed in a future release). - CHG: Added "analog#" fields to report EventDataLayout.java - CHG: Updated JSON format in "events.war" to remove quotes from numeric values. - FIX: Fixed "template" DCS to remove redundant/incorrect "Begin TCP comm" message. - FIX: Fixed EventDataLayout.java "batteryVolts" to use "event.getBatteryVolts()". Version 2.3.5 [2011/07/01] - NEW: Added support for a new "MobileLocationProvider" API for integrating cell tower mobile location services. - NEW: Added support for OpenCellID. See "private.xml" (or "config.conf") for configuration settings in the "MobileLocationProvider" section. - NEW: Added support for JSON formatted output in "events.war". - NEW: Added additional status codes. - NEW: Added "batteryVolts" column to EventData table. - NEW: Added "lastValidHeading" column to Device table. - NEW: EventData table column descriptions can now be localized. - CHG: Updated Turkish translations (special thanks to Aykut Kara). - CHG: Update to CellTower interface (added MobileLocationProvider interface) - FIX: Fixed IE issue with map "Find Address". Version 2.3.4 [2011/06/16] - NEW: Added report "mapLink" feature to display map with pushpin selected. (To enable, set property "ReportDefinition.columnIndexMapLink" to true in the runtime configuration file "config.conf") - NEW: Added ability to display "Notes:" on System Admin Accounts page. (see "sysAdminAccounts.showNotes" in "private.xml" - or "private_common.xml") - CHG: Changed all StatusCode names "STATUS_SENSOR32_*" to "STATUS_ANALOG_*". - CHG: Added "alwaysFast" property check to GisGraphy reverse-geocoder. - CHG: Added "packetLenEndOfStream" property to "sipgear" DCS (to allow for devices that do not provide a packet terminating character). - FIX: EventData now automatically truncates "streetAddress" to maximum field length (this prevents MySQL column overflow errors on "streetAddress" column) - FIX: MS SQL Server provider changed to properly recognize the assigned table name prefixes to prevent table names colliding with SQL Server reserved words. GS-181 device (gpioInput, HDOP, numSats, etc). Version 2.3.3 [2011/05/15] - NEW: Additional StatusCodes added. - NEW: Added "cabinTemp" field to EventData optional "AtmosphereFieldInfo" fields. - NEW: Added "airFilterPressure", "engineTorque" fields to EventData optional "CANBUSFieldInfo" fields. - NEW: Added MySQL "max-connections" check to 'checkInstall'. - CHG: Turn off reverse-geocoding by default during TrackStick data upload. - CHG: Added additional displayed header information to generic "gprmc" DCS. - CHG: Change ServerSocketThread "PACKET_LEN_INCREMENTAL_" mask to 20 bits. - FIX: Fixed simulated geozone detection in "gprmc" DCS. Version 2.3.2 [2011/04/01] - NEW: Includes support for uploading TrackStick data points (via command-line). - NEW: Support for multiple tables names specified on "dbAdmin.pl -load=" option. - NEW: Additional StatusCodes added. - NEW: New Slovak language translation (thanks to Mario Viara). - UPD: Spanish language translation update (thanks to Sebastian Mantilla Beniers) - UPD: Romanian language translation update (thanks to Mihai Csaky) - UPD: Greek language translation update (thanks to Christos Prassas) - UPD: Auto-truncate address values which are longer than the EventData address field length (prevents MySQL invalid length errors from occuring). - UPD: Added check for non-readable Tomcat files to "CheckInstall" process. - UPD: Added check for non-read/writable Log files to "CheckInstall" process. - CHG: "Device Chooser" search now checks for contained strings, rather than just using 'startsWith'. - CHG: Default "track.war" logging changed to "$GTS_HOME/logs/TrackWar.log" (see "log.dir" property definition in "webapps.conf"). - FIX: Fixed pushpin icon image display on Device Admin page. Version 2.3.1 [2011/03/08] - NEW: Added additional status codes: STATUS_HEARBEAT, ... - UPD: Spanish translation update (thanks to Sebastian Mantilla Beniers). - CHG: Moved Account "Geocoder Mode" to SystemAdmin "Accounts" page. - CHG: Added alternate index to Device column "simPhoneNumber" to provide for quick Device record lookup by SIM phone number. The alternate key is controlled by the '.conf' property key "Device.keyedSimPhoneNumber". - CHG: Replaced various private.xml properties "XXXXXX_validateNewIDs" with a single "track.validateIDs" property. - CHG: Set the default value of the "deviceInfo.allowNewDevice" Property to "true" in the 'private.xml' file. - FIX: Various bug fixes. Version 2.3.0 [2011/01/28] - NEW: Hungarian language localization (many thanks to Totyi Ferenc). - NEW: Added Device "Creation Date" read-only field to "Device Admin" page. - NEW: Added Device "deviceCreateDateTime" field to report EventDataLayout fields. - NEW: Added a "Pushpin" column, to display the event map pushpin, to various Event Detail Reports. Enable by setting the "columnPushpin" property, in the file 'reports.xml', to "true". - NEW: Added additional boolean condition testing to "RTConfigTag.java" module. - NEW: Added maximum allowed number of devices field "maximumDevices" to Account table, and supported on System Admin Accounts page. - NEW: Added support for "Nominatim" reverse-geocode provider, available from Mapquest and OpenStreetMap (see 'private.xml') - NEW: Added several additional Status Code definitions. - CHG: Changed Pushpin selection pulldown on the Device Admin and StatusCode Admin pages to display more pushpins at one time. - CHG: Made changes to URIArg.java utility module. - CHG: Updated "OpenGTS_Config.pdf" document. - FIX: Fixed issues with EventData "getNextEventData" (thanks to SourceForge user Daniel [xing2kin] for finding this). - FIX: Fixed "sipgear" device communication server IMEI# parsing issue. Version 2.2.9 [2010/11/29] - NEW: Added new device communication server (DCS) support for TAIP (Trimble ASCII Interface Protocol). - NEW: Added "lastFuelLevel" field to Device table record. - NEW: Support PrivateLabel subdomain look-up for custom URLs. - NEW: Added support for menu "button" selections on main menu (see the property "topMenu.menuType" in the "private.xml" file). - CHG: Removed 'ACTION_SAVE_LAST' from the default action in "RuleFactory.java". - FIX: Fixed "sysadmin" login when using the user email address to login. - FIX: Fixed "Payload.java" null-termination parsing of fixed-length String fields. Version 2.2.8 [2010/10/25] - NEW: Added support for a "Language" locale selection pull-down on the login page. See the property "accountLogin.showLocaleSelection" in 'private.xml'. - NEW: Added additional status-codes to StatusCodes.java. - NEW: Added battery-level display option to TrackMap.java (see 'private.xml' property "trackMap.showBatteryLevel"). - NEW: Thanks to Ronald Prijs for providing the Dutch localization. - CHG: MySQL appears to have dropped support for the "type=" syntax when creating table indexes. This has now been changed to "engine=". (To still use the older "type=" syntax, you can set the "db.sql.provider" property in the "common.conf" config file to "mysql_old"). - UPD: Update to Spanish language translation (thanks to Sebastian Mantilla) Version 2.2.7 [2010/09/10] - NEW: Added ability to create accounts through web-interface when logged in to the "sysadmin" account. (see OpenGTS_Config.pdf for information regarding the creation of the "sysadmin" account). - NEW: Russian Localization (special thanks to Eugene A.Lukianov) - NEW: Added ability to show only a single pushpin at a time during the pushpin "Replay" on a map (see the MapProvider property "replay.singlePushpin" in the "private.xml" file). - NEW: Added ability to specify "group=(group)" on URL to "events.war". Also added "DeviceID" column specification to CSV output format. - NEW: 2 additional points added to "Geozone Admin" definitions. - NEW: Added additional standard StatusCodes (see StatusCodes.java) - NEW: Added command-line option to "bin/admin.pl Device ..." to delete old events from the EventData table. - NEW: Additional fields added to EventData table. - NEW: Added experimental improved connection pooling feature. Enable by uncommenting the line "#db.dbConnectionPool=true" in "common.conf". - UPD: Serbian localization update (thanks to Nenad Babajic) Version 2.2.6 [2010/07/18] - NEW: Added collapsible Map Controls on Device/Fleet maps - NEW: Added support for Aspicore protocol (http://www.aspicore.com) via UDP/TCP. - NEW: Added "lastBatteryLevel" field to Device record. - NEW: Added "fuelCapacity" field to Device table. Also added new EventDataLayout report column "fuelLevelVolume" to work with the EventData record percent "fuelLevel" to report the fuel level volume (a device which can capture fuel level information is still required). - UPD: French localization update (thanks to Nadir Sahnoun). - CHG: Servlet-based DCS log files for "gc101", "gpsmapper", "gprmc", and "mologogo" are now "w-gc101.log", "w-gpsmapper.log", "w-gprmc.log", and "w-mologogo.log". - FIX: Fixed localization text issue in 'reports.xml' (thanks to Eugene A. Lukianov) Version 2.2.5 [2010/07/04] - CHG: "polygon" geozones now enabled by default for "openLayers", etc. - UPD: Serbian localization update (thanks to Nenad Babajic). - NEW: Added "Maximum Access Level" to User table, and User Admin page. - NEW: Added collapsible map controls on device/fleet map page. Version 2.2.4 [2010/06/17] - NEW: Added support for "fleet detail" report group. - UPD: Updated the SIPGEAR server to add initial support for TCP communications. - CHG: The sample-data ("demo" account) has been changed to a more recent date (ie. 2010/03/12). If you have already loaded the sample "demo" data, you may wish to delete the "demo" account, and reload the sample data. - FIX: Fixed Chrome "map.fillFrame" problem. (Previously the map would not display properly in the Chrome browser when the MapProvider property "map.fillFrame" was set true). Version 2.2.3 [2010/05/24] - UPD: Update to Spanish language translation (thanks to Sebastian Mantilla) - UPD: Update to Greek language translation (thanks to Christos Prassas) - NEW: Added additional memory usage chack tool for device communicaiton servers. - NEW: Added additional status codes. - NEW: Initial support for SIPGEAR device communication server (implementation provided by ZhongShan SIPGEAR Technology Co, Ltd.) - FIX: Updated Geonames reverse geocoder to eliminate redundant address commas. - FIX: Fixed 'checkInstall.bat' command (on Windows) to work with Tomcat 6. Version 2.2.2 [2010/04/25] - NEW: Updated GisGraphy reverse-geocoding support (thanks to Mihai Csaky) - NEW: 'private.xml' Domain tag attribute "name" is now required. - FIX: Fixed point-radius geozone bug when using Google Maps. - FIX: Fixed 'inactive' Device bug which caused Devices marked inactive to still display on the group maps. Version 2.2.1 [2010/04/11] - NEW: Initial implementation of polygon geozones. In the active MapProvider, set the "zone.map.polygon" property to "true". Currently only implemented for "openLayers", "virtualEarth", and "googleMaps", with differing levels of support. (Note: this is still experimental, so do expect some bugs). - NEW: Geozone areas now support color selection. - NEW: Speed reports now adjusts to "Speed Unit" settings on Account Admin page. - NEW: Added several additional status codes. - NEW: Additional columns added to the Device table. - NEW: Setting a Device "Active" state to "No" now removes it from the device selection list on maps and reports (in addition to still ignoring any new events which may arrive at the server for the device). - NEW: The "Route-Line" color can now be specified per device. This is a new field in the Device table ("displayColor") which can be edited in the Device Admin page. This feature can be disabled (display the default color only) by setting the Property "deviceInfo.showDisplayColor" to false in the "private.xml" file. - NEW: "Password" field can now be hidden on login page (for applications where only an account-id is needed). See "showPassword" attribute on "Domain" tag in 'private.xml' - NEW: Added "Driver Admin" page. This page is commented/disabled by default. To enable this page, edit 'private.xml' and uncomment the "Page" tag that defines the "DriverInfo" page entry. Version 2.2.0 [2010/01/29] - NEW: Greek language localization (many thanks to Christos Prassas). - NEW: Added a new web-interface look with an example banner image (white). To change back to the previous traditional look, in the "custom.conf" file, set the property "Domain.WebPages.JSP" to "default". - NEW: Enabled graphical "Group Pushpin ID" selection on Device Admin page by default. Can be disabled in 'private.xml' with property "deviceInfo.showPushpinChooser". - NEW: Added "Driver" table (web-interface component not yet available). - NEW: Added additional methods to 'RuleFactory.java' interface. - FIX: Fixed a mapping datapoint update issue that could show improper pushpin indexes in some circumstances in the "Location Detail" table below the map. Version 2.1.9 [2009/12/17] - NEW: Added list of defined/available reports to 'checkInstall' output. - NEW: Added additional checks to 'checkInstall' to report when 'private.xml' was not able to be loaded due to possible classpath issues. - NEW: Added additional checks to 'checkInstall' to validate various conditions on the DefaultLoginAccount tag, and accountLogin/emailLogin attributes. - CHG: Italian language localization updated (many thanks to Pierluigi Bucolo). - CHG: Added EventData 'jobNumber' column to optional CustomFieldInfo field group. - CHG: Added Device 'driverID' column. - FIX: Fixed 'getKeyCode' function in 'utils.js' (thanks to Pierluigi Bucolo). Version 2.1.8 [2009/11/10] - NEW: Added PushpinChooser support to the Device Admin pushpin selection. To enable this feature set the "deviceInfo.showPushpinChooser" property to "true" in the 'private.xml' file. - NEW: Added a new Calendar action 'popup' to the From/To calendar actions on the Map pages. The Calendar action can be specified in 'private.xml' on the property "trackMap.calendarAction". Valid values are "fixed", "fade" and "popup". Report menu calendars are currently only available as "fixed". - UPD: Improved DeviceChooser popup performance on IE. Enable or disable by setting the 'private.xml' file property "deviceChooser.useTable" to 'true', or 'false'. - UPD: Romanian localization update (thanks to Mihai Csaky). - CHG: The runtime config property "PasswordHandler.class" is now commented by default. This property was set to "md5" which creates MD5 checksum encoded passwords to be set in the database, instead of clear-text password. Commenting this propery will again allow clear text passwords into the 'password' field of the Account and User tables, but those that have MD5 encoded passwords will need to be reset. - CHG: The default value for the 'private.xml' property "reportMenu.enableReportEmail" is now "false". Configure outbound SMTP and set this property to "true" to enable the "EMail" option when generating reports. 'CheckInstall' now also checks for proper SMTP configuration when this property is set 'true'. Version 2.1.7 [2009/11/01] - NEW: Added support for selectable report options (pull-down menu selectable options next to various reports). - NEW: Added ability to include created geozones on device/fleet map if at least one pushpin has landed in the geozone (MapProvider property "map.includeGeozones" must be set 'true' in 'private.xml'). - NEW: Added route directional arrows to GoogleMaps implementaiton (thanks to Juan Carlos Argueta). See the property "map.routeLine.arrows" in the 'private.xml' file for information regarding enabling this features. - NEW: Added an "Email" option to the report output selection. This allows emailing a report to the currently logged-in users contact email address. - NEW: Added Device table columns "expectAck", "lastAckCommand", and "lastAckTime". Used for custom applications that require an ACK from the tracking device. Run the command "bin/dbAdmin.pl -tables=ca" (Linux) to update the database. - NEW: Added eozone table column "zoomRegion" (for future use). Run the command "bin/dbAdmin.pl -tables=ca" (Linux) to update the database. - UPD: Romanian localization update (thanks to Mihai Csaky). - UPD: Serbian localization update (thanks to Nenad Babajic). - CHG: Renamed 'driver'/'entity' columns in EventData to 'driverID'/'entityID' (these are optional columns in EventData, and may not be used in all installations). - FIX: Fixed mapping issue when double/single quotes were included in the device or group descriptions. - FIX: Fixed PendingPacket property changes for OpenDMTP devices. Version 2.1.6 [2009/10/05] - NEW: Added a "Short Name" field to the Device Admin page. - NEW: Added support for displaying the short device name in a pushpin representing the device on the group map (icon appears as a small "info" balloon). For more information, look for the Pushpin "label" in private.xml. - NEW: Added Stuart Langridge's 'sorttable.js' JavaScript code to provide sortable table columns on reports by clicking on the column header (very cool!). - NEW: Updated example 'template' device-communication-server to also support a simple data packet format for server-to=server event data tranfers. - NEW: Added "${locale}" substitution key replace variable option to the "Link" tag URL in the 'private.xml' file (in the "WebPages" section). - NEW: "maxPingCount" and "dcsConfigMask" columns added to Device/Transport tables. (Make sure you update your tables with "bin/dbAdmin.pl -tables=ca"). - CHG: Table-based device 'chooser' now enabled by default on map and reports. Columns on 'chooser' popup are now sortable. - CHG: RuleAction and RuleFactory interfaces changed to return the action-mask for triggered rules (previously rule trigger would simply return true/false). - FIX: Fixed simulated geozone transitions when adjacent events are in different geozones (previously, the first geozone might not have a properly generated departure event). - FIX: Fixed MapProvider Legend UTF8 character display issue. - FIX: Fixed Report Menu display HTML issue. Version 2.1.5 [2009/09/23] - NEW: Added a new PasswordHandler class to handle customized password encoding and decoding handling. - NEW: Added support for handling customized geozone map size (see "zone.map.width" and "zone.map.height" in 'private.xml'). - NEW: Added "Property" subtag to "Page" tag in 'private.xml'. - NEW: JSP's can now be defined in their own 'JSPEntries' tag section in 'private.xml'. - NEW: Separated portions of DCServerConfig.java into DCServerFactory.java. Device Communication Server configuration is now specified in an XML file, which now allows for a more granular type of configuration (see 'dcserver.xml'). - CHG: "New Account" button on login page is now desabled by default. To re-enable modify 'privatel.xml' and uncomment "NewAccount" page definition. - CHG: Minor changes (method additions) to Payload.java - CHG: Added "&oe=utf8" to Google reverse-geocode URL (thanks to Gonzalo Tirado). - FIX: Fixed various fleet/group report maps that incorrectly displayed a "route" line connecting the pushpins. - FIX: Device/DeviceGroup pulldown selection on maps now sorts entries by the description (when only description is displayed). - FIX: Fixed bug in "ReportDeviceList.java" that could occasionally cause a "ConcurrentModificationException" exception to be thrown. Version 2.1.4.1 [2009/08/25] - FIX: Fixed to 'loginSession.jsp' comment section (which was apparrently being interpreted and taglib tags processed in Tomcat 6). Which caused the login page to display incorrectly. - FIX: Fixed missing 'GPSEvent.class' specification in 'build.xml' for the "template" server. Version 2.1.4 [2009/08/23] - NEW: Convert IDs entered for Device's, User's, etc, to lower-case before creating the new record entry. Previously it would report "Invalid characters entered" for IDs which contains upper-case characters. - NEW: First pass at a new feature allowing more than one location point to display per device on the fleet/group map. This feature is controlled by the property "trackMap.fleetDeviceEventCount" in the 'private.xml' file. This feature is still being tested. - CHG: Updated Spanish translations (Thanks to Eduardo Robles!). - CHG: Updated "Track.tld" and "loginSession.jsp" to work with Tomcat 5.5.28 and 6. - CHG: Added a "Legend" tag to MapProvider in 'private.xml' (replacing the previous "iconSelector.legend" and "iconSelector.fleet.legend" properties). - FIX: Fixed improper handling of speed/heading in 'GPSEvent.java' module (thanks to Lyudmil Shoshorov for finding this). - FIX: Elimated the unecessary error/warning messages that were generated by the non-'track.war' servlets: 'events.war', 'mologogo.war', etc. - FIX: Fixed GC-101 server changed data format, allowing record types to be properly converted to GTS status codes (thanks to Kushal Patel for finding this). Version 2.1.3 [2009/08/09] - NEW: Added Portuguese translation (special thanks to Humberto Bonisson). - NEW: Added Serbian translation (special thanks to Nenad Babajic). - NEW: ServerSocketThread changed to allow binding to a specific local interface. - CHG: A few changes to the example 'template' server code. - CHG: Added "alarm1" status code support to the GC-101 http server. - CHG: Minor changes to the Driving/Stopped time report. - CHG: Updated Google KML support (maps, reports). Version 2.1.2 [2009/07/01] - NEW: Moved default report CSS to file 'ReportDisplay.css' (previously hardcoded). - NEW: Added convenience method "getPushpinIconIndex" to BasicPrivateLabel to convert a pushpin ID to an index (for the active MapProvider) for displaying on a map. - NEW: CheckInstall now can support sending a test email. - NEW: Added a 'LocalStrings_XX.properties' file check to CheckInstall. - NEW: Added an "-export" command-line option to the Geozone table to export geozones to a CSV file (similar to '-dump', but only elected columns). Exported geozones can still be loaded via the command-line "-load" option. - CHG: Updated Turkish translations (special thanks to Aykut Kara). - CHG: Various changes made to the reporting engine. Report selection now allows exporting a report in XML format. - CHG: Map event data-point updates are now wrapped in proper XML (previously, it was simply CSV format). - CHG: PageDecoration tag support removed from 'private.xml' and 'PrivateLabel.java'. Version 2.1.1 [2009/06/01] - NEW: Added support for GPX (GPS Exchange format) data format to the 'events.war' servlet. (See http://www.topografix.com/gpx.asp for information regarding GPX) - NEW: Added "Creating/Modifying Reports" section to 'OpenGTS_Config.pdf'. - NEW: Added additional checks for JDK installation to CheckInstall for Windows users. - NEW: Should now build to completion without the JavaMail 'mail.jar' file, however email sending will be disabled. - NEW: 'activation.jar' is no longer needed (already included in Java 6). - CHG: Increased Device background thread pool size to 25. - FIX: Fixed runtime config file path conversion from 'URL' to 'File' when the file path happens to contain embedded spaces. Version 2.1.0 [2009/05/27] - NEW: Checkinstall now displays an error if Java 6 (or 7) is not installed. - NEW: Added last latitude/longitude/odometer fields to Device table to improve performance of geozone arrival/departure tests in the template server, and odometer calculations. - NEW: Changed 'events.war' to make sure that the URL matches a PrivateLabel domain. - NEW: Tested OpenGTS with Java OpenJDK v1.6.0 (on Fedora). - CHG: Changed the default radius for newly created geozones to 3000 meters. - FIX: Fixed bug that caused a NullPointerException when saving a geozone. Version 2.0.9 [2009/05/24] - NEW: Includes pre-compiled MotoDMTP Java modules for loading onto the Motorola i290 Boost Mobile phones (source now available in OpenDMTP 'client-j2me' project). Jad/Jar files can be found in the "MotoDMTP" directory. See the OpenGTS_Config.pdf document for more information regarding installation and configuration of the MotoDMTP software. - NEW: I18N string keys defined in 'private.xml' can now be used within 'loginSession.jsp'. - NEW: Added new table columns to the Device table. - NEW: Added command-line options to "ReverseGeocodeProviderAdapter.java" and created "bin/rgTest.sh" command to provide testing of installed/configured reverse-geocoders. - NEW: Added "getRemotePort()" to "ServerSocketThread.SessionInfo" interface. This allows easy access to the remote client port#. - NEW: Romanian language localization provided (many thanks to Mihai Csaky). - CHG: German language localization updated (many thanks to Peter Jonas). Version 2.0.8 [2009/05/01] - NEW: Added additional status codes (see StatuseCodes.java) - NEW: Added "speedLimitKPH"/"isTollRoad" fields to EventData for reverse-geocoders that support returning this information. - NEW: Added 'DataTime' data type support to dbtools. - NEW: Added "validgps" argument to 'Event' servlet URL to allow only valid GPS locations. - NEW: Added support for "idle" elapsed time to MotionReport. - NEW: Added "Ignition Input Line" to Device Info page to specify which digitial input (if any) is used as the 'ignition' sense (used by MotionReport to calculate "idle" tile). - NEW: Added an error indication when running 'bin/checkInstall.sh' as 'root', plus other additional checks. - NEW: Added additional commercial Geonames support. - CHG: Removed "Totals" line generation from CSV report output. - CHG: "ServerSocketThread.java" now returns any UDP ACK from the same 'listen' port. - FIX: Rewrote 'admin.bat' to work around Windows batch file processing issues. - FIX: Fixed performance issue in 'RTConfigTag.java'. Version 2.0.7 [2009/04/02] - NEW: Added additional help/comments to RuleFactoryExample.java. - NEW: Added check for 'root' db username in checkInstall. - NEW: Special thanks to Thomas Cozien for providing the French localization. - NEW: Added server support for GPSMapper "Google Map GPS Cell Phone Tracker" project client component on SourceForge (http://gpsmapper.sourceforge.net). This support module is still undergoing testing and may not yet be fully functional. - NEW: Added new device communication server support for the I-Care G3300. Build with command "ant icare". - NEW: 'ClientPacketHandler' can now override the 'ServerSessionThread' min/max packet lengths (used when creating some types of device communication servers). - NEW: Added 'retainedEventAge' field to Account record for future trimming of old event records. - FIX: Fixed 'initdb' command to create new tables with proper character set encoding. Previously, the work-around was to run the 'dbAdmin.pl -tables=ca' command to alter the various table columns to the appropriate character set. Version 2.0.6 [2009/02/20] - NEW: Added/modified file logging and automatic log file rotation. See 'common.conf' for configuration information. - NEW: Added SMTP server check to 'bin/checkInstall.sh' command. - CHG: Spanish language localization updated (many thanks to Eduardo Robles). - CHG: Rename property 'track.enableCookies' to 'track.requireCookies' (dft 'true'). - FIX: Fixed case where URL links were not constructed properly when cookies are used - FIX: Fixed syntax error in 'initdb.sh'. - FIX: Fixed syntax error in 'common.bat' which cause various Windows '.bat' files to fail. Version 2.0.5 [2009/02/01] - NEW: Changes added to handle UTF8 character sets within the MySQL database. This should now allow proper storing and reporting of reverse-geocoded addresses for various language localizations. - NEW: Added character-encoding information to 'checkInstall' command reporting. - NEW: Ability to localize the map "Pushpin Legend" text in 'private.xml'. - NEW: Modified the 'Geonames' reverse-geocoding module to work with "Geonames Commercial Webservices" (http://www.geonames.org/commercial-webservices.html) which provides a guaranteed "fast and reliable response time". See the "geonames" ReverseGeocodeProvider section in the 'private.xml' file for more information regarding configuration. - NEW: Added validation of new IDs (Device, Group, User, etc) to prevent creating a record with an ID containing invalid characters (id validation may be disabled in 'private.xml' using the '*.validateNewIDs' properties for various pages) - NEW: "default.conf" and "webapp.conf" now include a common runtime configuration file, "common.conf". This allows easier common configuration of database and other services. Changes to 'common.conf' will also require rebuilding and redeploying servlet war files (ie. 'track.war', etc). - CHG: German language localization updated (many thanks to Peter Jonas). - CHG: Italian language localization updated (many thanks to Pierluigi Bucolo). - CHG: "startup.initClass" changed to "StartupInit.class" in "common.conf". - FIX: The ".sh" commands in the OpenGTS "bin/" directory now use the "bash" command interpreter (instead of "sh"). (Fixes ".sh" execution problem on Ubuntu.) - FIX: Fixed Localized pull-down menu selection problem on admin pages (pull-down selections might not have been be properly saved for certain languages). Version 2.0.4 [2009/01/01] - NEW: Added Latitude/Longitude display format selection option to Account Info page. - NEW: StatusCode descriptions can now be localized. - NEW: Added 'SMTP' information to 'checkInstall' command. - NEW: Added altitude option to map info 'balloon' (see "info.showAltitude" property in MapProvider tag section of 'private.xml'). - NEW: Added reporting column option for displaying heading/bearing in 'degrees'. - NEW: Added 'Totals' line to Motion Report. - NEW: Added reporting ascending/descending order selection. - NEW: Added login errors 'alert' dialog. - NEW: Added ability to set the map/report calendar first-day-of-week to Monday. (See 'private.xml' Calendar property "calendar.firstDayOfWeek"). - NEW: Added new "db.sql.url.db" property to 'default.conf' and 'webapp.conf' files to allow providing a specific JDBC connection url which includes the database name. This allows adding additional connection attributes to the jdbc url. - NEW: New "IDDescription.java" class to hold id/description information used to present device and group selection in either id or description ordering. - NEW: Added additional plural device/group names fields to the Account Admin page. - NEW: Added additional insructional text to the 'Forgot Password' page. - NEW: 'checkInstall' updated to include checks on Mac OS X to support the "Apple" Java vendor name. - NEW: Special thanks to Aykut Kara for providing the Turkish localization. - CHG: Renamed "db.sql.connection" property (in 'default.conf'/'webapp.conf') to "db.sql.url" ("db.sql.connection" will continue to work for this release). - FIX: Fixed 'template' source module compile error 'TrackClientPacketHandler.java', in the "usage" method. - FIX: Fixed DBRecordKey partial key type when generating a key 'Where' clause. Version 2.0.3 [2008/12/01] - NEW: Google KML link can now be configured to display on the Event Detail/Summary reports and Maps. When clicked, the KML file will be loaded into Google Earth. This is a work-in-progress and still needs some changes. - NEW: Added an entry point for the example 'template' data communication server to allow parsing/inserting data supplied from a CSV flat-file. - NEW: Text in the map info 'balloons' can now be localized. - NEW: Added 'Property' tag support to Report tag definitions. - NEW: Added Temperature units selection to Account Info page. - NEW: Report CSV output files now have names indicating the generated report. - NEW: OpenLayers map now centers pushpin when clicking on "Location Detail" point when the pushpin is not currently on the map. - NEW: Initial support for Google reverse-geocoding service. - CHG: In 'private.xml', moved Domain 'Property' tags into parent 'Properties' tag. - CHG: Updated Italian Localization (many thanks to Pierluigi Bucolo). - CHG: Updated German Localization (many thanks to Peter Jonas). - CHG: The "Notification" support fields in the Device table have been removed from the default installation. To add them back into a specific installation, uncomment the "Device.NotificationFieldInfo" line in "StarupInit.java". - CHG: Non-admin users can now view/edit device groups, with proper ACL config. - CHG: Improved menubar tab popup on mouse-over (when enabled via Property "menuBar.openOnMouseOver" in 'private.xml'). - CHG: Map "Auto-Update" now automatically displays the last known location of the device/vehicle (advancing to the next day when necessary). - FIX: Initial fix for 'submit' button issue with non-English Localizations. Version 2.0.2 [2008/10/16] - NEW: Updated internal OpenLayers support with initial support for GeoServer. See the "geoServer" MapProvider section in 'private.xml' for more information. (Special thanks to Assaad Mouawad for his research and help). - NEW: Added support for expandable menu groups on the main menu. Enable this feature in the 'private.xml' file by setting the property value for the key "topMenu.enableExpandableMenus" to "true". - NEW: Added support for an alternate type of device selection on TrackMap and Report pages. New "DeviceChooser" properties in 'private.xml' now provides for sorting Device/Groups selections by ID or Description (see "deviceChooser.enable"). - NEW: Added new Domain property "calendar.timeTextField" (in 'private.xml) which allows entering the date hour:minute as a text field. (effects all calendars displayed within a Domain). - CHG: The ACL (access control list) model has changed to make it easier to manage user access to various aspect of the web-interface. - CHG: Several cosmetic improvements included in this release. Version 2.0.1 [2008/09/19] - NEW: A new auto-update recentering mode has been added which allows recentering without rezooming. - NEW: Added column 'defaultUser' to Account table to allow specifying a per-Account default login user (when login 'User' field is blank). A general default login user can also be specified in the 'private.xml' file, tag "DefaultLoginUser". - NEW: Added yellow icons/pushpins with directional arrows. A new JavaScript icon selector function "evHeadingYellowURL" has been added, which can return the appropriate icon selection based on the direction of travel for a given event. - NEW: For a given user, the first displayed screen after login can now be specified (the current options are main menu, device map, or fleet map). - NEW: Added an overflow indication on the device map screen to indicate when the maximum number of pushpins allowed on the map has been exceeded (the maximum number of allowed pushpins for a MapProvider is specified by the property "map.maxPushpins" in the file 'private.xml'). - NEW: When creating custom status code descriptions, remove the test for 'invalid' status codes from the 'StatusCode' table command-line admin tool. This allows easier creation of customized status codes for specific applications. - NEW: The default map "style" can now be specified for Virtual Earth. - NEW: The "route" lines can now be turned off (in the MaprProvider properties). - NEW: Added several new TrackMap properties to 'private.xml' to allow changing the behavior or display of various controls on the TrackMap page. - CHG: Changed the "Last" point update feature to behave similar to "Update", but only show the last location within the specified date range. The update "Last" button display is controlled by the "trackMap.showUpdateLast" property in the file 'private.xml'. (This replaces the "trackMap.showLastLocation" feature) - FIX: Fixed overflow indicator condition on reports when the number of displayed data records would exceed the maximum allowed records as specified in the 'reports.xml' file. - FIX: Empty MenuBar tabs that contain no selectable options (as set by the users ACL) will no longer be displayed. Version 1.9.8 [2008/09/12] - NEW: Added new MaprProvider properties "iconSelector.fleet.legend" and "iconSelector.legend" to provide the ability to add an icon 'legend' to the TrackMap page. This legend is specified as html in the specific MapProvider in the 'private.xml' file, and is currently not separately localizable. Any desired localization must occur in the 'private.xml' file within the icon legend properties. - NEW: The Timezone selection can be hidden from the TrackMap page via the Domain property "trackMap.showTimezoneSelection" in the 'private.xml' file. The default value is 'true'. - NEW: Added new map option to zoom in and display only the last point. The vehicle route is still displayed, but only the last pushpin is visible on the map. This feature has may have limited utility for most applications, so the default is 'false'. This feature can be enabled via the Domain property "trackMap.showLastLocation" in the 'private.xml' file. - NEW: Added the ability to set the default login user name when the user field is left blank (previously 'admin' was the only possible default login user). This is set using the "DefaultLoginUser" tag in 'private.xml'. - NEW: Added optional fields to EventData table: FLD_satelliteCount, FLD_batteryLevel - CHG: "Replay" button changed to a generic icon showing options for play, continue, and pause. (supported for OpenLayers, Virtual Earth, and Google Maps). Version 1.9.7 [2008/09/01] - NEW: "Replay" is paused/resumed when clicking the 'Replay' button. - NEW: The "Location Details" report (at the bottom of the map) now highlights the corresponding row during replay. The table is now also scrollable to allow viewing both the map and the table at the same time when many pushpins have been plotted. - NEW: "Replay" and geozone recenter support has been implemented for Google Maps. - NEW: Added delete confirmation to User/Group/Geozone administration pages. - NEW: New fields have been added to the Device and User tables. - CHG: For geozone creation/modification, to simplify mouse usage the 'shift' keys have changed. Please refer to the on-screen instructions for usage. - CHG: Updated Spanish translations (Thanks to Eduardo Robles!). - FIX: Fixed map "From" calendar that would occasionally incorrectly set the time 'minute' field (thanks for Gabriel for finding this). - FIX: Fixed Calendar translations issue that prevented the month names from being translated to other languages. Version 1.9.6 [2008/08/24] - NEW: Added map point 'Replay' (playback) feature for OpenLayers and VirtualEarth maps. The "Replay" feature and replay interval are configurable from within the MapProvider properties in the 'private.xml' file. - NEW: Added ability to jump to the day of the last set of events for a given device. - NEW: "Update Map" now also updates the "Last GPS event" date. - NEW: Added "Tooltips" to Calendars and Track map page (hold the mouse over a particular field to view a brief 'help' regarding the field or button). - NEW: Added a new "map.maxPushpins" property to the MapProvider tag in 'private.xml'. - CHG: Made "trackMap.autoUpdateRecenter" property available within 'private.xml'. - FIX: Fixed geozone update when multiple geozones are present (would occasionally not update the proper zone). Version 1.9.5 [2008/08/20] - NEW: Added the default icon selector to the report "maps" (ie. direction of travel now indicated on event detail reports). - CHG: Added configurable features for various map providers to remove elements from the web-interface if the chosen map provider doesn't support a particular feature. - CHG: Cleaned up some of the report layout issues on Internet Explorer. - FIX: Fixed report "map" display when addresses are included in the pushpin info balloon (previously the map may not have displayed due to errors). - FIX: Fixed default From/To times on Calender that previously prevented the display of some map points on the current day. Version 1.9.4 [2008/08/17] - NEW: To save some real-estate on the map page, the From/To calendars can now slide over the top of each other. Only one calendar is visible at a time. - NEW: "Update Map" and "Auto Update" buttons are now available at the same time on the track map page (see "MapProvider" in 'private.xml' for configuration). - NEW: Map AutoUpdate now displays a count-down timer to the next update time. - CHG: The Javascript in TrackMap.java is now in its own 'TrackMap.js' file. - FIX: Fixed problem with auto update which prevented proper map updating. - FIX: Fixed display of View/Edit buttons on display of first User and Geozone. Version 1.9.3 [2008/08/15] - NEW: Calendar controls are now handled entirely in JavaScript. Advancing to next/previous months is now much quicker. - CHG: Several improvements made to User ACL handling. "Acl" tag in 'private.xml' changed to include "maximum" and "default" access level attributes. - CHG: Added bounding-box fields ("minLatitude", "maxLatitude", "minLongitude", "maxLongitude") to Geozone table, optimizing lookups. (Existing geozones will need to be "re-saved" to update the 'bounding-box' information.) - CHG: Increased maximum geozone size to 30000 meters. - CHG: Map "AutoUpdate" now recenters the map on updates. - FIX: Changes made to 'OpenLayers.js' to allow it to work better with Microsoft Internet Explorer. - FIX: Fixed example 'gprmc' server record validation issue when parsing non-GPRMC records. Version 1.9.2 [2008/08/08] - NEW: Added Geofencing web UI for Google Maps, Microsoft Virtual Earth, and OpenLayers (and limited support for Mapstraction). (Geofencing support is still being tested and features are subject to change in a future release). - NEW: A "distance" measurement ruler is now available for map providers OpenLayers and Microsoft Virtual Earth. Press and hold the "Control" shift key while clicking and dragging accross the map. A distance measurement will be displayed to the right of the map. Version 1.9.1 [2008/07/27] - NEW: Added a new "Pushpins" tag to the "MapProvider" section in 'private.xml' to allow overriding the pushpin icons displayed on a map. Specific static icons images may be specified, or custom icon URL references may be generated on the fly within the Javascript code. Additional modifications integrated to allow a 'RuleFactory' implementation to determine which pushpins are to be displayed for which event types (based on an "iconSelector"). See the Pushpins section in 'private.xml' for details. - NEW: Included several pushpins in the 'track.war' created using the "Marker Maker" tool supllied by GMapLive at "http://www.gmaplive.com/marker_maker_old.php". - NEW: New 'PushpinIcon' class added to handle custom pushpins. - NEW: New "details.ascending" property to allow sorting the map location detail. - FIX: Fixed 'Mapstraction.js' and 'OpenLayers.js' to set the proper pushpin anchor. Version 1.9.0 [2008/07/21] - NEW: The 'PageDescorations' tag in 'private.xml' is now obsolete. This section in the 'private.xml' file has been replaced with a 'jsp' attribute on the 'WebPages' and 'Page' tages which allow using a defined JSP to create the page look and feel. This specified JSP file now creates the formatting and look-and-feel for the webpage. The components of the webpage (menus, maps, reports, etc) are referenced via taglib entries within the JSP file. (If you have customized PageDecorations in your existing 'private.xml' file, it will be necessary to migrate these customizations to a custom .jsp file, using the provided "war/track/jsp/loginSession.jsp" as a template). - NEW: A 'distance' ruler has been added to the Microsoft Virtual Earth map. Right- click and drag to view the 'distance' ruler. Eventually, a similar feature will be added to the other map providers as well. - NEW: Added column 'linkURL' to Device table. This can be used for providing separate utility links in the UI for a specific Device. - FIX: Fixed problem preventing device groups from being set properly for a User. - FIX: Added additional "don't cache" commands to the interactions with MIcrosoft Internet Explorer to prevent it from attempting to cache page and map point results. Version 1.8.4 [2008/07/08] - NEW: The Javascript in the mapping support modules has been moved into separate JavaScript files (war/track/js/maps/*) loaded by the Tracking mapping page. - NEW: Moved calendar support Javascript and stylesheet into separate files, loaded by the Tracking map and reports page. - NEW: Special thanks to Peter Jonas for providing the German localization. - NEW: Special thanks to Eduardo Robles for providing the Spanish localization. Version 1.8.3 [2008/06/20] - NEW: Includes initial support for "Mapstraction" (http://www.mapstraction.com). Special thanks to SourceForge users Anthony George (EMS Resource Center), and Peter Jonas, for getting Mapstraction integrated into OpenGTS. The default MapProvider (in 'private.xml') is now Mapstraction, utilizing the OpenLayers mapping support. - NEW: Special thanks to Pierluigi Bucolo for providing the Italian localization. - NEW: Changes made to facilitate much easier customization without requiring changes to the existing codebase. 'StartupInit.java' included to allow for customized starup initialization. - NEW: Added table 'GroupList' to hold multiple authorized user device groups. (previously a user was limited to a single authorized device group). - NEW: "Driving/Stopped Time Summary" report now includes a "Map" display option. - FIX: Now (again) allows "auto.count" to be '0' when specifying map auto update. - FIX: Fixed bug in 'bin/admin.bat' which bypassed recognition of the 'User' table. Version 1.8.2 [2008/05/22] - NEW: Added a 'javadocs' target to the Ant 'build.xml' script. Executing the command "ant javadocs" will create Javadocs in the directory "./javadocs". - FIX: Recompiled and included a new 'dmtpserv.jar' file (this fixes the exception 'NoSuchMethodError' which occured when running the 'gtsdmtp' server). Version 1.8.1 [2008/05/20] - NEW: Enumerated types in various tables can now be localized. - NEW: Changes made to facilitate displaying generic URL links on web UI menus. - FIX: Device field "uniqueID" is again visible to the command line record editor. Version 1.8.0 [2008/05/14] - NEW: The data transport specific fields in the 'Device' record have been separated into another table called 'Transport'. This allows support for devices that can provide multiple data paths to the server, for example GPRS communications as well as satellite communications. The Device table currently also retains it own set of 'default' Transport attribute columns. - NEW: Added a new 'Resource' and 'UniqueXID' table (for future use). - NEW: DB tools enhanced to support multiple alternate indexes. - NEW: Added City/State/Country columns to EventData & Geozone tables. - NEW: Added comments regarding the custom language Localization process. - NEW: 'CheckInstall.java' now also performs installation checks on 'private.xml'. Installation checks can be performed with the command "bin/checkInstall.sh" (or "bin\checkInstall.bat" on Windows). - CHG: Updated to OpenDMTP server v1.3.0 - CHG: Much of the code has now been converted to utilize Java 5 'generics'. - CHG: Changes to ReverseGeocodeProvider to allow specifying customizable properties. - CHG: 'private.xml' EMailAddress tags are now grouped in an 'EMailAddresses' tag. Version 1.7.1 [2008/04/11] - NEW: Modified report 'EventDataLayout.java' to color aged GPS fixes on the Event detail and summary reports (indicating 'old' GPS fixes). - NEW: Added 'FLD_iconSelector' column to 'StatusCode' table to assist in the custom icon selection for displayed points on a map. - NEW: Added 'SCHEMA.txt' file that described the current database schema. - NEW: Added new 'checkInstall.bat' and 'checkInstall.sh' commands to check for common installation inconsistencies that may cause runtime errors. - CHG: Updated to OpenDMTP server v1.2.14 - FIX: 'TrackMap.java' and 'Events.java' now use the account/user timezone for default dates. Version 1.7.0 [2008/03/28] - NEW: This version now supports some specific features of Java 5 to support UTF-8 charset, Java SDK 5.0 is now required to build/run OpenGTS. - NEW: Added OpenDMTP 'ClientDiagnostic'/'ClientErrors' classes for obtaining error and diagnostic code descriptions. - NEW: Added DBRecordKey existance methods that operate on the alternate key. - NEW: Added additional character encoding support methods to StringTools and Print. - NEW: Added property/diagnostic fields to report 'FieldLayout' - NEW: Added static 'getTableDescription' method to all tables. - CHG: Updated the motion report to provided limited reporting support for devices that do not support OpenDMTP. - CHG: Changed "Limit" tag in 'report.xml' to "SelectionLimit", and added the new report constraint tag "ReportLimit". - CHG: Modified ReverseGeocodeProvider for Geonames to support UTF-8 char encoding. - CHG: Removed obsolete DBAdmin 'reload' option. - CHG: Added '-overwrite' option to use in conjuction with DBAdmin data "load". The default now is to not overwrite existing data record when reloading a dumped data file unless '-overwrite' has been specified. - FIX: Fixed Microsoft SQL Server support to properly include "TOP" (limit) clause in device group selections Version 1.6.10 [2008/03/12] - NEW: Added 'notifyPriority' column to Device table. - NEW: Added 'bin/dbconfig.bat' file to more easily allow table version upgrades for Windows users. - NEW: Added 'SystemProps' table to hold system-wide property values. - NEW: Added a new property to table fields (and a new 'getter' to DBField) to allow specifying a custom 'editor' for specific field/column types. - NEW: Added 'OFFSET' support to DBProvider. - NEW: Added a DEVICE_CODE field to the 'template' server. - NEW: Added a GPS-base odometer calculation option to the 'template' server. - NEW: Added additional decimal point options to the distance/odometer fields of various reports. - FIX: Fixed the default longitude/latitude usage when no point are available in the mapping service proviers. - FIX: Fixed the table layout on various reports for the record overflow message. Version 1.6.9 [2008/02/27] - NEW: Added file resource check in 'Track.java' to forward requested files which may have been directed by the servlet container to the Track servlet. - NEW: Added 'DBFactoryTree.java' class which creates a dependency tree of SQL tables. This will be used in future GTS system admin applications. - FIX: Change 'utils.jar' reference to 'gtsutils.jar' in 'common.[bat|sh|pl]'. Version 1.6.8 [2008/02/21] - CHG: Moved selected JavaScript utilities from JavaScriptTools.java to 'utils.js'. - CHG: Moved selected JavaScript utilities from MenuBar.java to 'MenuBar.js'. - CHG: Eliminated multiple log warning messages occuring when loading device server servlets (such as 'mologogo.war', 'gprmc.war', etc). - CHG: Added '-Xmx256m" to java command-line options in 'runserver' scripts. - FIX: Fixed handling of "GMT+XX:XX" timezones on maps (previously they would always be interpreted as simply "GMT"). - FIX: Allow date formats containing '.'s (ie. "dd.MM.yyyy") - FIX: Fixed bug in mologogo servlet server which caused an out-of-memory error when an invalid latitude/longitude was encountered. Version 1.6.7 [2008/02/17] - NEW: Added support for map auto-update. See MapProvider properties in 'private.xml' for more information (this feature is still being tested). - NEW: Report date format (in 'reports.xml') now defaults to the format specified in 'private.xml', if not specified in 'reports.xml'. - NEW: Additional comments added to 'OpenGTS_Config.pdf' and the example 'template' server, regarding the implementation of custom device communication servers. - FIX: Fixed date format display on Report/Map calendar. Version 1.6.6 [2008/02/11] - NEW: Added a 'Refresh' button to reports to allow updating displayed information. - NEW: Added a 'Map' button to event detail reports which allows displaying the reported locations on a map. - NEW: Added additional columns to Account and Device tables. - NEW: Added ability for new OpenDMTP compliant devices to be automatically added to the Device table for a given Account ('autoAddDevices' column). - NEW: Minor change to Nmea0183.java to handle $GPVTG and $GPZDA records. Version 1.6.5 [2008/02/07] - NEW: Text found in 'private.xml' can now be localized in the "LocalStrings_XX..." property files found in the "src/org/opengts/db" directory. - NEW: Added 'Properties' update UI for Devices and DeviceGroups to allow updating the remote device configuration for OpenDMTP compliant devices. - FIX: Added missing "gtsutils.jar" to "events.war" and "mologogo.war". Version 1.6.4 [2008/02/04] - NEW: Added support for DeviceGroups to the UI. - NEW: Added new AccountString table to provide custom naming of the titles used for "Device" and "Device Group" (such as "Taxi" and "Region"). - NEW: Added new report column options to EventData report layout. - NEW: Added new columns to Account and EventData tables. - NEW: Text found in 'reports.xml' can now be localized in the "LocalStrings_XX..." property files found in the "src/org/opengts/war/report" directory. - FIX: Updated 'LocalStrings_en.properties' files. Version 1.6.3 [2008/01/10] - NEW: Added time since last device checkin/connect to event summary report. - NEW: Added 'notes'/'imeiNumber' columns to Device table. - NEW: Added ColumnValue attribute to web-based reporting utilitiies. - NEW: Added the ability to customize the track servlet url pattern. - NEW: Added 'Diagnostic' table to record OpenDMTP diagnostics/errors. - NEW: Added an 'EventCount' report module. - FIX: Fixed instances where the report limit warning was incorrectly displayed. Version 1.6.2 [2007/12/13] - NEW: The default 'PrivateLabelName' is now set when creating temporary Accounts through the web-interface. - NEW: Added support for pull-down menu tabs. - NEW: If a report record limit is reached, reports now display a message at the bottom of the page indicating that the displayed data may only be a portion of the possible available data. - CHG: The previous report categories can now be separated into separate reporting pages. - FIX: Fixed another error on DeviceInfo page that occurs when no devices are yet defined. - FIX: Fixed case where html escape characters were not properly applied when displaying Account/Device/etc field values. Version 1.6.1 [2007/11/28] - NEW: Added 'ReportColumn.java' for finer property gruanularity when specifying report columns. - NEW: Added "Notification EMail:" field to Account-Info web-page. - NEW: Completed 'StatusCode' table used for providing custom status-code descriptions on reports. - NEW: Added separate city/postalCode fields to EventData record. - NEW: Added runtime config startup initialization class reference to provide custom initialization without requiring modification to existing server code. - NEW: Added support for a 'Fleet' based map (new menu tab). - NEW: Included an example RuleFactory implementation for event notification. - CHG: Changed 'reports.xml' and 'ReportFactory' to incorporate 'ReportColumn' to allow providing a more granular definition of a report column. - FIX: Fixed Sanav GC-101 server to properly recognize "gc101_" unique id's (previously it would only recognize "imei_" unique id's). - FIX: Fixed geozone PendingPacket generation to properly remove existing geozones before reloading new zones. Version 1.6.0 [2007/09/16] - NEW: Initial support for Microsoft SQL Server included. Significant changes have been made to isolate database specific attributes to the 'dbtools' sources. Initial efforts have been made to support Microsoft SQL Server, and Apache Derby database (still being tested). - NEW: 'db.sql.connection' property has been added to allow specifying the JDBC connection URI (see 'default.conf' and 'webapp.comf' for examples). - NEW: Account table now provides access to the loaded custom PrivateLabel domain. - CHG: Split PrivateLabel.java into several other components (BasicPrivateLabel, PrivateLabelLoader, and BasicPrivateLabelLoader) to provide better access to customized 'private.xml' attributes from non-web-based components. - FIX: Removed error message that incorrectly stated that the EventData table was missing a 'driver' field. - FIX: Account Info web-page now correctly displays the 'Geocoder Mode'. Version 1.5.3 [2007/08/09] - NEW: Runtime config (RTConfig) updated to support loading property files from a Jar file resource. - NEW: New Device support servlet added for receiving data from remote devices capable of sending GPRMC data via HTTP requests (such as NetGPS). - NEW: Additional example data parsing support added to the example 'template' device data parser. - CHG: There is now a single command for administering tables from the command line. All table administrative commands have change from "admin.sh ..." to "admin.sh
...". The older commands are still available in the "bin/archive" directory, should they still be needed for reference. - CHG: Extracted the properties section of the 'build.xml' file into a separate 'build.properties' file. - CHG: GC-101 module now has a configurable minimum acceptable speed. - CHG: The OpenDMTP server startup script has been changed from "bin/server_dmtp.sh" to "bin/runserver.sh -s gtsdmtp" (or "bin\runserver.bat gtsdmtp" on Windows). - CHG: The OpenDMTP server now logs to "logs/gtsdmtp.log". - FIX: Fixed 'initdb.bat' problem on Windows where it was unable to properly locate and load the 'default.conf' runtime configuration file. - FIX: Fixed 'runserver.pl' to properly specify overridden port numbers. - FIX: Fixed error in DeviceInfo page that occurs when no devices are yet defined Version 1.5.2 [2007/07/27] - NEW: Added DTD files 'private.dtd' and 'reports.dtd'. - NEW: "bin/adminAccount.pl -account= -list" will now allow listing specific accounts. - NEW: New fields added to EventData table. - NEW: Additional changes to 'template' server - NEW: MapProvider properties changed to use ';' separator - NEW: Added new table validation feature allow creating/adding missing columns - NEW: 'notifyAction' column added to Device table. - NEW: WebPage/WebPageAdaptor now supports separate 'getNavigationTab()' method. - NEW: Per thread properties added for suport of PrivateLabel customization. - NEW: Now includes the Device Parser Module for the Sanav GC-101. - CHG: Renamed package "org/opengts/servers/dmtp" to "org/opengts/servers/gtsdmtp" - CHG: Servlet config file 'webapp.conf' moved to the installation root directory for easier configuration of servlets. - CHG: MySQL initialization command "initdb" no longer creates default account "opendmtp" and device "mobile". These must now be created manually. - FIX: Fixed error in DeviceInfo page that occurs when no devices are yet defined Version 1.5.1 [2007/07/14] - NEW: Included support for SendMail user authentication (including SSL). - NEW: Added User authentication and device authorization to 'Events' war utility. - NEW: Added ability to edit a User's Access-Control-List from the UserInfo page. - CHG: Environment variables "JAVA_HOME" and "GTS_HOME" are now required when running the command line tools ('.bat' files) on Windows. - CHG: Renamed "bin/server_mysql.*" to "bin/server_dmtp.*" (output log file now written to "server_dmtp.log"). - FIX: Minor change to 'common.pl' to allow Perl scripts to work with ActivePerl. Version 1.5.0 [2007/06/30] - NEW: Added ability to display a 'total' row in the reports. - NEW: Added 'tab' display menu bar. - NEW: Added User table view to "Edit/View User Information" page. - NEW: Added Device table view to "Edit/View Device Information" page. - NEW: Enabled user ACL acccess for User/Device edit/view. - NEW: Added host 'alias' support to PrivateLabel manager. - NEW: Added '-nopass' option to 'adminAccount' account creation. - NEW: 'dbAdmin.pl' can now dump a specific account. - NEW: Can now set TCP/UDP timeouts n DMTP server. - NEW: Added 'template' example 'Device Parser Module' server. - NEW: Added Calendar style sheets. - NEW: Improved user ACL (access control list) settings. - CHG: Minor changes to KML output. - FIX: TrackMap now will default to the User's timezone, if available. Version 1.4.8 [2007/06/14] - FIX: Minor fix to "User.isAuthorizedDevice" to return true if no 'deviceGroup' has been specified (otherwise a user may be denied access to all devices). Version 1.4.7 [2007/06/13] - NEW: Default to suppress warnings when validating DB table columns. - NEW: Added support for Device Groups (not yet supported in web-interface - currently administered via command-line tools). Also with DeviceGroups, users can now have restricted access to the devices listed within a given Device Group. - NEW: Ability to log in without a password is no longer the default for newly created Accounts/Users. Now, to allow Users to log in without a password, the user password must be explicitly set to the text "*blank*". Previously, the default was to allow a newly created users to log in without specifying a password, which created a potential security risk. Now, setting a user password to an empty string will prevent the user from logging in. - NEW: Added additional reverse-geocode column "subdivision" to the EventData record to assist in special table searches for border-crossings, etc. - FIX: Fixed device-selection and update-map issue on Internet Explorer (previously, selecting a new device, or clicking update map, would not always cause the map to update as expected). Version 1.4.6 [2007/06/03] - NEW: Added support for I18N (Internationalization). See the i18n properties files "LocalStrings_en.properties" in the servlet source directories for more information. - CHG: Improved look & feel. Version 1.4.5 [2007/05/25] - NEW: Reverse-Geocoding now fully functional (using external GeoNames service). - NEW: Installation/Configuration document updated. Additional notes regarding the setting of environment variables. Notes regarding the use of Microsoft Virtual Earth maps. - NEW: Added additional 'private.xml' parser for use in device servers where a web-interface is not applicable (used for extracting Reverse-Geocoding parameters). - NEW: Added a 'restricted' attribute to the 'Domain' tag in 'PrivateLabel.java' to allow forcing only authorized accounts to have access to a given domain. Version 1.4.4 [2007/05/20] - NEW: Added support for Microsoft Virtual Earth maps. - NEW: Added 'properties' attribute to MapProvider tag in PrivateLabel to allow for customizing specific features of the selected map provider. - NEW: When logging in with a blank username, the user 'admin' is queried for access authorization. - NEW: Added ability to restrict accounts to specific host domains. - NEW: Sample data is now included in the package (Account 'demo, Device 'demo'/demo2') - CHG: Minor changes to Google Maps support to integrate auto-zooming. Version 1.4.3 [2007/05/06] - CHG: Minor changes to the 'build.xml' build script. - CHG: Updated the "OpenGTS_Config.pdf" document. - CHG: Minor changes to facilitate supporting other map providers. - NEW: Added 'FLD_creationTime' column to EventData table. - NEW: Added 'enableScrollWheelZoom' to Google Maps display to enable the mouse scroll-wheel zooming. - NEW: Added "isAttributeSupported" & "writeMapUpdate" to MapProvider interface. Version 1.4.2 [2007/04/17] - NEW: Filter and remove invalid lat/lon (eg 0.00/0.00) from displayed Google Map. - FIX: Fixed use of reserved word for table column name in new 'Property' table. Version 1.4.1 [2007/04/15] - CHG: Rearranged report menu page to allow for more room to place report options. - NEW: Added 'Distance Units' field to account information page. - NEW: Added 'Property' table for future use when reconfiguring OpenDMTP devices. Version 1.4.0 [2007/03/30] - NEW: Now supports multiple Users per Account, and an Access-Control-List to individually assign access to an Account's menus and reports on a per-User basis. - NEW: Added descriptive help text to the main menu options. - NEW: RTConfig now caches pertinent default System properties on initialization. This prevents the potential "AccessControlException" which can occur in some Apache Tomcat environments (thanks to Thomas Schmid for discovering this issue). Version 1.3.7 [2007/03/25] - NEW: Added support for device-detail, device-summary, and fleet-summary reports categories. - NEW: Added Fleet "Last Known Location Summary" report. - NEW: Added Device "Driving/Idle Time Summary" report. - NEW: Added support for generating report output in CSV format. - NEW: Now includes the Installation/Configuration manual, "OpenGTS_Config.pdf". - FIX: Added missing "wartools.jar" file to "events.war" build. Version 1.3.6 [2007/03/16] - NEW: Added calendar to report selection to allow specifying report date ranges. - NEW: Added XML event download capability. - NEW: Minor optimizations to message logging. - NEW: 'Navigation' bar now supported. - CHG: Updated to latest OpenDMTP server (v1.2.8). Version 1.3.5 [2007/03/11] - NEW: Added customizable event detail reporting support. Additional reports can easily be added via configuration of an xml file. - NEW: Private labeling support can now display different page decorations based on whether a user is logged-in, or not. - FIX: Include latest OpendDMTP server (v1.2.7) which fixes the client IP address not properly being propagated to the Event record. Version 1.3.4 [2007/02/28] - NEW: Enabled custom reverse-geocoding (custom naming for specific geofenced areas) on the tracking web-interface. - NEW: Improvements to Mologogo phone tracking support (support for minimum speed, horizontal accuracy, and 'pointType'). - NEW: Support uploading an Account geozone list from a CSV file. - CHG: Remove unecessary solution-specific fields from EventData. Version 1.3.3 [2007/02/26] - NEW: Now includes support for receiving data from Mologogo capable phones (see http://www.mologogo.com) using their "altURL" feature. - NEW: Added 'Geozone' table. This allows creating custom defined 'reverse-geocoding' areas, as well as uploadable geozone packets which can be sent to a OpenDMTP compliant device. ('GeozoneFactory' was removed since it's no longer needed). - NEW: Added command-line ability to PendingPacket to add property get/set requests. - NEW: Included "New Account Registration" feature on web interface. - NEW: Included "Forgot Password" feature on web interface. - CHG: Combined build of 'util.jar' and 'db.jar' into a single jar 'gtsdb.jar' - FIX: Fixed possible exception thrown when updating DeviceInfo and notification email is not enabled. - FIX: Includes OpenDMTP server v1.2.6 (which also fixes 'PendingPacket.getPackets') Version 1.3.2 [2007/02/18] - NEW: Updated with latest v1.2.4 OpenDMTP server. Now supports listening on multiple ports. - FIX: Fixed invalid reference to 'common.pl' in admin perl scripts. Version 1.3.1 [2007/02/16] - FIX: Fixed inconsistent MySQL database/user/password configuration between what was stated in documentation, and what was specified in the config files. Version 1.3.0 [2007/02/11] - NEW: Added a full-featured GPS Tracking web interface with Google Map support. This uses Apache Tomcat to provide web-based user authentication, account and device information editing, mapping support, and location detail reporting. - NEW: Initial support for reverse-geocoding is included (not yet fully tested). Version 1.2.1 [2007/02/08] - NEW: Added 'perl' scripts for the following command-line functions: "adminAccount.pl", "adminDevice.pl", "server_mysql.pl". These commands do not need to be executed from the GTS installation directory. (The '.sh' and '.bat' commands still need to be executed from the GTS installation directory). - NEW: The DB admin command "dbAdmin.pl" no longer needs to be executed from the GTS installation directory. - CHG: Updated with latest OpenDMTP server v1.2.3 - FIX: The default database name and user should be 'gts' in the 'default.conf' runtime config file (it was previously specified as 'dmtp'). Version 1.2.0 [2007/01/25] - NEW: First release of OpenGTS. - NEW: Supports MySQL datastore. - NEW: Currently supports a Java Event servlet for supplying CSV queries, and KML formatted XML for tracking via Google Earth. - NEW: Includes support for OpenDMTP server-side protocol (library copied from OpenDMTP project at 'http://www.opendmtp.org'). ----------------------------------------------------------------------------------- The OpenGTS/OpenDMTP software is Copyright GeoTelematic Solutions, Inc. OpenGTS/OpenDMTP is not affiliated with Sun Microsystems, Inc, Sprint/Nextel, Boost Mobile, Motorola, or any other commercial entity mentioned, in any way. The various mentioned trademarks and tradenames are owned by their respective companies. OpenGTS/OpenDMTP must not be used for any illegal activities. The providers of this project assume no responsibity for any illegal activities that may be conducted by users of this software. -----------------------------------------------------------------------------------