Advanced Windows Scripting (AWS) is an extension to the single sign-on scripting language. AWS enables arbitrary Windows messages to trigger scripts. In earlier versions of SecureLogin, a script written for an application was triggered when (and only when) the application sent a WM-CREATE message. AWS provides Event, which is a single new specifier.
The Event command takes exactly one parameter, which is the Windows event that triggers execution of the controlled block. The following script illustrates this block:
## BeginSection: "Global Script Configuration"
## EndSection: "Global Script Configuration"
## BeginSection: "Login Window"
Dialog
Class "#32770"
Title "Novell iFolder Login"
Ctrl #1
Ctrl #1092
Event WM_ACTIVATE
EndDialog
ReadText #1092 ?Message
If ?Message eq "Place a shortcut to the iFolder on the desktop"
If ?Failure eq 1
Set ?Failure <notset>
EndScript
Else
Setprompt "Username:"
Type $Username #1007
Setprompt "Password:"
Type $Password #1079
Setprompt "iFolder Server Name:"
Type $Optional #1001
Click #1
Setprompt "Enter your iFolder account information."
Endif
EndIf
## EndSection: "Login Window" Dialog
Parent
Title "Novell iFolder Login"
EndParent
Title "Novell iFolder"
Ctrl #2
EndDialog
Readtext #65535 ?ErrorMessage
If ?ErrorMessage eq "You must enter a server address."
Click #2
Set ?Failure 1
EndIf
Advanced Windows Scripting meets two requirements:
In earlier SecureLogin releases, SecureLogin launched scripts on a Create event. Whenever a window was created, SecureLogin could key off that event. When the login dialog box was created, SecureLogin was able to log in from that event.
However, some applications have a feature where the login dialog box is created long before it is displayed and before a user is able to actually log in. When this login dialog box is created, it sends a WM_CREATE message, which triggers any associated script.
Scenario: SecureLogin before AWS. You log in to Novell iFolder®. The Create event fires a script and logs you in. However, iFolder creates and instantiates a subsequent login. You close iFolder but still have it running on your system tray. You log in to iFolder again. SecureLogin is unable to recognize that event.
Using AWS, you can delay execution of the login script until, for example, the login dialog box is activated (and fires a WM_ACTIVATE message). SecureLogin 3.51.2 recognizes the second event. SecureLogin can key off Create, Activate, Destroy, mouse clicks, and other events.
For example, a login system allows the user to choose from n different servers by using a combo box. With AWS, you can delay execution of the script until the user has selected a server from the combo box. You cause the delay by using the EM_SETSEL message. The script can then read which server has been selected, then choose an appropriate credential set.
With AWS, SecureLogin can enable additional applications. Also, scripts no longer need to be Startup scripts so that all the applications launch. The applications can start at any time.
To use AWS, edit the application scripts by adding events. For a list of events and other information on AWS, see Event.
In earlier versions, Web pages were scripted as whole pages, and SecureLogin couldn't distinguish between frames within the Web page. The Advanced Web scripting feature enables you to script for a particular frame within a Web page.
Scenario: Second Set of Fields. A Web page has three frames in it. Two of these frames have username and password fields. Previous versions of NSL would probably have entered the username and password into the first set of fields. With SecureLogin 3.51.2, you can populate a particular frame by naming the SecureLogin application the URL of that particular frame.
To find the URL of the frame, right-click the frame and select Properties. The next time that you navigate to the Web page that contains that frame, the credentials are automatically populated into that frame.
You can usually get the address of the frame by right-clicking in the frame and selecting Properties.