I created this a few years ago on my own time when I was playing with the Google Maps API and learning how to make things show up in Kaseya. The code is very rough but it works.
It's been a while since I did anything with it. Time to share the results!
View Kaseya agents on 2d or 3d Google Maps with alarm and network latency data as well as remote control links and driving directions:
Getting it setup should be a 5-10 minute process.
First, make sure you've got a recent database backup handy just to be safe (pretty common best practice to do anyway!).
You'll need Kaseya 6.1 or 6.2. You should be current on your maintenance, too
To get started, download the attached file and extract it to your Kaseya Server folder.
Download the MaxMind IP-to-Location database here: http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz. Commercial versions of this database are available for greater IP-Location accuracy.
Extract "geolitecity.dat" from the MaxMind download to your Kaseya\Webpages\GoogleMaps folder. I used Winrar to perform the extraction as .tar.gz didn't want to work with Windows' built in compression.
Once the file is extracted, rename it to 'geoipcity.dat'.
Now, open a DOS command prompt and type "regsvr32 c:\Kaseya\Webpages\Googlemaps\geoipcomex.dll", where C: is the drive where your Kaseya installation resides. This will register a DLL necessary for interacting with the MaxMind Ip-to-Location database.
If for some reason you get an error registering this DLL, try copying the geoipcomex.dll to your %windir%\SysWOW64 folder and then register it from there (e.g. regsvr32 %windir%\syswow64\geoipcomex.dll). You can visit this page on the MaxMind site for more information -- http://www.maxmind.com/app/com.
Next, access the following URL on your Kaseya Server: http://localhost/inc/getcheck.asp. This will initialize the module.
Next, access this URL http://localhost/vsapres/web20/themegen.html and click 'Regenerate Themes' - this will attempt to get the Google Maps logo to show up correctly in the module right away. You can safely ignore any error you might get on this page.
You should now see Google Maps in your Kaseya interface. If you do not see it, log out and log back in.
Now Click Google Maps then Server Configuration. This page will create any necessary database tables, so until you reach it, ignore any errors you see in any of the other module functions.
You will need to obtain a Google Maps API key for use on your Kaseya server. Instructions from Google's Maps site are as follows:
To create your API key, visit the APIs Console at https://code.google.com/apis/console and log in with your Google Account.
Click the Services link from the left-hand menu, then activate the Google Maps API v2 service.
Once the service has been activated, your API key is available from the API Access page, in the Simple API Access section. Maps API applications use the Key for browser apps.
Your server must be available on the internet and the free API will need to work over HTTP (more details on this on the Google site).
Paste the Google Maps API key into the Google API key box and click Change API key. You'll also want to enter a comma-separated address for your Kaseya server and click 'Change Address'. e.g. 800 Brickell Avenue, Miami, FL 33131.
You also need to enter an address for your own current location - this can be done on either the 2d or 3d map preferences page:
You're almost done!
When you finish your Server Configuration, select Audit then Machine Summary.
Scroll down and you will see two new custom audit fields, Latency and Address. If they are not created automatically, create them here by clicking 'New Custom Field' and entering them as String type fields.
Next, select any machine group in the Navigation bar, then click 'Bulk Edit Custom'. You'll be entering a physical address to assign to a group of machines.
Enter a comma-separated address into the 'Address' field that applies to the particular machine group you have selected. This will allow you to generate physical address-based maps for your agents. If you wish to modify addresses on a per-agent basis, select 'Edit Machine Data' for a given agent instead of Bulk Edit.
You can repeat this process for all of your machine groups to see them on a physical address-based map.
As an optional step, if you'd like to see color-coded lines based on network latency, import the Agent Procedure in the Zip file to your Kaseya server.
Select the Agent Procedure tab, then select a folder of your choice to import the agent procedure "Procedure Collect Ping Latency Info.xml" to, and click 'Import folder/Procedure'. This can be done either from your own computer browser if you extract it from the google_maps.zip or your Kaseya server where it resides in Kaseya\Webpages\GoogleMaps.
Now run the procedure on your agents, either running it once or scheduling it. A screenshot of the schedule window is below. You'll be asked for a hostname to check latency against -- I typically enter www.google.com. This will be updated to the custom field in the procedure, and will then be used when generating a map to color-code the lines drawn between agents, their networks or your Kaseya server.
Please be sure to share your feedback and if you have any issues with the installation process or run into any snags, post them up here.
Being an unofficial and unsupported project, this community will be the extent of your support. The module is pretty straightforward and I'll try to address any problems as quickly as I can so you should be in good shape.
This is a great Idea!
Unfortunatly when I attempt to regenerate the themes I get an error Transaction Aborted? Any work around for this?
Zach, just ignore that... it shouldn't affect anything - at most, the icon for the map module may not show up for a bit.
It took about 5 min for the module to show up, already mapped a few of our clients all is great thanks again!
For all, agent procedure takes in count only English OS.
So, don't forget to edit the agent procedure and change the get variable value in your foreign language or duplicate the step and edit it then check "continue on fail" on all steps "get variable"
Install went pretty smoothly but on google maps it has our kaseya server someone in the mainland UK where we are in Northern Ireland.
I thought if I set the location on the agent via our server it would fix it but still no joy, is this to do with the API key and where google is tracing my IP from?
I've known about the Maps V3 api for a while. I think updating to it might just be a matter of changing one or two lines of code. Thanks for bringing it up!
As Guillaume mentioned, this is not a fully localized module so you'll need to keep that in mind if you're using a non-English based system. Address translation is done purely via google though so if you separate your addresses by commas I think you'll find Google accurately finds the location.
If you require better IP-to-Location accuracy, you can buy their commercial database from Maxmind directly, www.maxmind.com/.../city.
Thank you for posting this module.
I have followed the instructions however when I try to access either the 2d or 3d maps I am getting the following error
Microsoft JScript compilation (0x-7ff5fc16)
/googlemaps/mapInfoData-address.asp, line 1364
if (loginName == "null") loginName = xlate("none",false);
Any assistance that you can provide would be greatly appreciated.
I'll get with you directly, PSchepman.
When I attempted to regenerate the themes I got the error Transaction Aborted? I've waited about 30 minutes and still do not see the icon for the map module.
sgeesman, try an iisreset or try clearing your browser cache. It will eventually show up :)
I am new for Kaseya, I tried all steps above which is a fantastic feature you have given us. thanks for this. However I am also getting the same error as PSchepman as below:
Could you help us resolve.
I've just sent you a message directly on the community - please respond back when you get a chance.
I'll be looking at PSchepman's server this weekend when I get a chance - I think the problem will be fairly simple, and once I resolve it I'll post back what has to be done to resolve it.
I just logged on to Pschepman's server - the map just generated fine without any issue for me. I'm emailing with him to see if he still gets the error.
Praveen, as soon as you accept my community friend request I can look at your system.
Ok, I have accepted you on my profile, hope you can let me know to resolve this issue as soon as you get time for me.