NetScanner 3rd party app integration

Launching a 3rd party app from NetScanner



Starting with version 2.3, NetScanner has the ability to launch 3rd party apps from the TCP scan result pane.


Even though all iPhone and iPad apps are sandboxed and cannot easily interact with each other, it is possible for an application to register itself for a URL scheme and for another application to launch it by invoking such URL.
For instance, Safari registered the http: URL scheme and any app can launch safari by invoking a http://somehost URL.


NetScanner takes advantage of this feature and will invoke the following URLs when the button next to the port is tapped. You can easily telnet, ssh, or access a device admin web interface from netscanner.




port URL invoked known and recommended 3rd party app(s) registered for that URL
21 (FTP) ftp://%device.ipAddress% Safari
22 (SSH) ssh://%device.ipAddress% iSSH
23 (telnet) telnet://%device.ipAddress% iSSH
80 (HTTP) http://%device.ipAddress% Safari
443 (HTTPS) https://%device.ipAddress% Safari
3389 (RDP) * rdp://%device.ipAddress% none
5900 (VNC) * vnc://%device.ipAddress% none
6667 (IRC) * irc://%device.ipAddress% Colloquy
Any other port http://ipAddress:port Safari

(*) coming in NetScanner 2.7

Note that in case multiple applications register the same URL scheme, there is no way to control which one will be launched.

You can test which app is curently registered for a particular URL scheme using Safari on your iPad. Just enter the URL in Safari as if it was a web site URL. For instance, type ssh://192.168.0.1 in Safari and it will launch iSSH if you have it installed.


Customizing application launchers:

Starting with NetScanner 2.7, Launch URLs are customizable, from the app settings:



Device attributes are provided with the following "percent variables":

percent variable
description
%device.ipAddress% IP address of the device in context
%device.hostname%
hostname of the device in context, or its IP address if no hostname was resolved for this device.
%device.macAddress% MAC address (if known) of the device in context.
%device.snmpCommunity% SNMP community for the device in context, blank string for non-SNMP enabled devices.
%device.snmpVersion% SNMP version for the device in context (1 or 2), 0 if the device is not SNMP enabled.

The percent variables will be resolved using the device that is in context. Percent variables are case insensitive %device.ipaddress% is equivalent do %device.ipAddress%. The app will encode the value returned by the percent variable in a URL friendly way (using %XX hexadecimal code for special characters).


Have a suggestion for another third party app. Want NetScanner to support a new URL scheme for another port? Please reach to us at freerangedevelopers@gmail.com.

Feedback and Knowledge Base