software products and customization
Contact: support@xuebrothers.net Home page

ActiveSIGA Sample Codes - JavaScript

//GetExternalIPAddress
var siga=new ActiveXObject("ActiveSIGA.Siga");
var ip=siga.GetExternalIPAddress();
if(ip)
{
    WScript.Echo("External IP="+ip);
}
else
{
    WScript.Echo(siga.LastError);
}

//Add a Mapping Entry
var me=new ActiveXObject("ActiveSiga.MapEntry");
me.Protocol="TCP";
me.ExternalPort=1234;
me.InternalPort=1234;
me.InternalClient="192.168.1.100"; //empty for the caller's IP
me.PortMappingDescription="my mapping";
me.Enabled=true;
if(siga.AddPortMapping(me))
{
    WScript.Echo("Add port mapping OK");
}
else
{
    WScript.Echo(siga.LastError);
}


//List Mapping Entries
var i=0;
while(true)
{
    var me=siga.GetGenericPortMappingEntry(i++);
    if(!me) //No more mapped entries
    {
        break;
    }
    var info=me.Protocol + " port " +  me.ExternalPort.toString()+ " is mapped to ";
    info+=me.InternalClient;
    info+=":";
    info+=me.InternalPort.toString();
    if(me.PortMappingDescription)
    {
        info+=", ";
        info+=me.PortMappingDescription;
    }
    info+=(me.Enabled? ", Enabled" : ", Disabled");
    WScript.Echo(info);
}


//Delete a Mapping Entry
var me=new ActiveXObject("ActiveSiga.MapEntry");
me.Protocol="TCP";
me.ExternalPort=1234;
if(siga.DeletePortMapping(me))
{
    WScript.Echo("Delete port mapping OK");
}
else
{
    WScript.Echo(siga.LastError);
}