Some models of Cisco routers have inbuilt GPS antennas and it is possible to get location data from the router, using both CLI and SNMP.
Is it possible to add code in NAV to import this GPS data into the "Position" field in the "Rooms" data?
For routers that are in a static location it means the location will be correct, not a best effort by pointing on a map. :-)
For routers that are in motion it means it is possible to track them and at least know the last location.
lng-truck-1-L22#show cellular 0 gps detail
GPS Info
-------------
GPS Feature: enabled
GPS Port Selected: Dedicated GPS port
GPS State: GPS enabled
GPS auto tracking status: unknown
GPS auto tracking config: disabled
GPS Mode Configured: standalone
Latitude: 60 Deg 28 Min 54.7647 Sec North
Longitude: 5 Deg 23 Min 22.7313 Sec East
Timestamp (GMT): Wed Aug 30 09:46:56 2017
Fix type index: 0, Height: 81 m
HDOP: 0.8, GPS Mode Used: standalone
Satellite Info
----------------
Satellite #2, elevation 17, azimuth 42, SNR 34
Satellite #9, elevation 11, azimuth 347, SNR 35
Satellite #16, elevation 17, azimuth 288, SNR 39
Satellite #21, elevation 25, azimuth 177, SNR 38
Satellite #23, elevation 15, azimuth 320, SNR 42
Satellite #25, elevation 27, azimuth 123, SNR 43
Satellite #26, elevation 45, azimuth 282, SNR 46
Satellite #29, elevation 65, azimuth 88, SNR 34
Satellite #31, elevation 45, azimuth 222, SNR 43
Satellite #5, elevation 16, azimuth 75, SNR 0
Satellite #20, elevation 6, azimuth 118, SNR 0
roger@nav:~$ snmpwalk -On -c secretpw -v 2c 10.140.73.1 1.3.6.1.4.1.9.9.661.1.4.1.1.1
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.1.16 = INTEGER: 2
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.2.16 = INTEGER: 2
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.3.16 = INTEGER: 48
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.4.16 = STRING: "59 Deg 25 Min 24 Sec North"
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.5.16 = STRING: "5 Deg 25 Min 26 Sec East"
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.6.16 = STRING: "GMT: Wed Aug 30 10:00:17 2017
"
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.7.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.8.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.9.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.10.16 = INTEGER: 2
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.11.16 = INTEGER: 1
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.12.16 = INTEGER: 19
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.13.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.14.16 = INTEGER: 2
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.15.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.16.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.17.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.18.16 = Gauge32: 0
.1.3.6.1.4.1.9.9.661.1.4.1.1.1.19.16 = Gauge32: 11
1.3.6.1.4.1.9.9.661.1.4.1.1.1.1 (c3gLbsModeSelected)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.2 (c3gLbsState)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.3 (c3gLbsLocFixError)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.4 (c3gLbsLatitude)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.5 (c3gLbsLongitude)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.6 (c3gLbsTimeStamp)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.7 (c3gLbsLocUncertaintyAngle)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.8 (c3gLbsLocUncertaintyA)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.9 (c3gLbsLocUncertaintyPos)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.10 (c3gLbsFixtype)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.11 (c3gLbsHeightValid)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.12 (c3gLbsHeight)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.13 (c3gLbsLocUncertaintyVertical)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.14 (c3gLbsVelocityValid)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.15 (c3gLbsHeading)
1.3.6.1.4.1.9.9.661.1.4.1.1.1.16 (c3gLbsVelocityHorizontal)
Best regards,
Roger