Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I added the capability to script via an embedded IronPython interpreter. Here are examples of two equivalent SPSL and Python scripts:
SPSL
#!/bin/spsl
PROMPT What is your password?
SENDLINE ls -ltr
SENDCHAR w
SENDKEY {ENTER}
SLEEP 10000
OPENSESSION TestTwo
Python
#!/bin/python
PROMPT("What is your password?")
SENDLINE("ls -ltr")
SENDCHAR("w")
SENDKEY("{ENTER}")
SLEEP(10000)
OPENSESSION("TestTwo")
In addition, the Python interpreter exposes the current SessionData object via a locally scoped variable, making scripts like this possible:
if (Session.SessionName == "Test"):
SENDLINE("echo 'Session name: " + Session.SessionName + "'")
SENDLINE("echo 'Session ID: " + Session.SessionId + "'")
SENDLINE("echo 'Session host: " + Session.Host + "'")
SENDLINE("echo 'Session protocol: " + str(Session.Proto) + "'")
SENDLINE("echo 'Session port: " + str(Session.Port) + "'")
With the addition of a full Python interpreter the SuperPutty user can create scripts which include not only the "built-in" SPSL commands but can also use any amount of custom logic.
The Python scripting capability has been added to both scripts executed on terminal creation as well as the script entry dialog.