These forums are a place for learning, helping and sharing experiences with others about any of our products. Feel free to ask a question and get answers from our community and our most advanced users.
Note that these are public forums - anyone can view the discussions here.
VISIT OUR DIFFERENT FORUMS:
Announcements > | |
CloudShell > | TestShell > |
Developers > | BI (Business Inteligence) > |
This is where you can suggest your ideas to help and improve the product for everyone.
Please make sure to read the following article before posting a new idea, to get more information about the required information and ideas lifecycle.
Feel free to vote and comment on other ideas to promote them.
Thanks for everyone who suggested the ideas and voted for them.
Find, download and share integrations that can extend and enhance the CloudShell experience.
Integrations have several levels:
Certified - Officially tested and supported by Quali.
Preview - Provides a sneak peek to what the Quali team is developing. Officially supported by Quali. Feel free to experiment and comment, but please take into consideration that it is not yet tested and released.
Community - Integrations shared by community users. Feel free to look into what other users have contributed, please take into consideration that these integrations are not tested by Quali.
To learn more about creating Shells and integrating with CloudShell, use the following links:
CloudShell's Dev Guide > | Configuration Management > |
Getting started with Shells > | Extending CloudShell with Cloud Providers > |
Getting started with Orchestration > | API Guide > |
To share your integration, follow the instructions in this guide >.
Hello,
This is a question about the automation for the Cisco Console server.
Please assume the environment like the attached image.
They would like to switch the connection between the Router A and the Router B.
When we use the "exit" command to switch them, the connection for the Router A/Router B get lost.
In order to prevent the connection from getting lost, we have to interrupt(pause) the connection.
The operation for the interrupt is to press "Ctrl" + "Shift" + "6", "x".
Is there any way to operate this action at the Terminal step?
Please advise.
Regards,
SQC Support.
Answer by Oriel Belzer · Mar 18, 2014 at 12:40 PM
Hi,
I'll try to explain in a bit more details.
When you are typing in ctrl+shift+6,X in your console server you are actually sending some ascii code to the console server.
If you will translate the ctrl+shift+6,X to ascii code you will get the sequence of ascii chars that my function is sending using the terminal tool.
So the ctrl+shift+6,X is actually translated to 2 terminal tool steps:
1. \x1E - equals to the "ctrl+shift+6" sequence
2. X - equals to the char "X"
In the function I sent you, you might notice that I have an additional terminal tool step that is sending the "\x18" sequence, that is because in my example I also needed to send the sequence "ctrl+shift+R" before sending the "ctrl+shift+6,X".
I hope it clarifies it a bit.
Let me know if you still need any clarifications.
Answer by Oriel Belzer · Mar 18, 2014 at 11:27 AM
Hi SQC,
Please find attached a function that you can add to driver builder that does what you are looking for.
You might need to do some modifications to meet your needs but the general idea will be there.
Just so you will know what to look at - when you have a terminal command tool you can right click on it and change the view to be "code", after you do that you can type in any ascii code that you would like, so for your need you can type in the ascii code that will send the shift combination. (see attached screenshot).
I hope it helps.
Answer by Hidemi Ogura · Mar 18, 2014 at 12:01 PM
Hello Oriel-san,
Thank you for your quick response.
We opened your .tsdrv file and the .PNG file.
We could imagine we should create the driver to press "Ctrl+Shift+6, x".
It is not clear for us how to assign the "Ctrl+Shift+6, x" to "\x18".
Could you please advise more in detail?
Thank you in advance.
Answer by Quali · Mar 18, 2014 at 02:22 PM
Another option is to change the break character of the TTY ports of your Cisco terminal server, to make it easier to implement in testshell.
Router#show line
Tty Typ Tx/Rx A Modem Roty AccO AccI Uses Noise Overruns Int
0 CTY - - - - - 0 0 0/0 -
33 TTY 9600/9600 - - 1 - - 14 0 0/0 -
34 TTY 9600/9600 - - 2 - - 3 0 0/0 -
35 TTY 9600/9600 - - 3 - - 1 1 0/0 -
We know the break character is Ctrl+Shift+6 then X and we can see that by issuing the following command:
Router#show line tty 33
Tty Typ Tx/Rx A Modem Roty AccO AccI Uses Noise Overruns
33 TTY - - - - - 0 0 0/0 -
Line 33, Location: "", Type: ""
Length: 24 lines, Width: 80 columns
Baud rate (TX/RX) is 9600/9600
Status: No Exit Banner
Capabilities: CUG Security Enabled
Modem state: Idle
Special Chars:Escape Hold Stop Start Disconnect Activation
^^x none - - none
We can change this by entering the following commands:
enable
config t
Line tty <first tty line> <last tty line>
escape-character <Character (for example, !) or its ASCII decimal representation (integer in the range of 0 to 255) to be used as the escape character>
You can reference a table of ascii characters here.
http://www.physics.udel.edu/~watson/scen103/ascii.html
Use theCtrl Charcolumn in conjunction with theHexcolumn to enter in the ascii code in testshell. Let us know if you need assistance with that.
Answer by Hidemi Ogura · Mar 26, 2014 at 01:19 AM
Hello Oriel-san,
Thank you for your 2nd explanation.
As we have not used the Driver Builder much, we will try to use it.
Thanks to your advice, we could see the use case of the Driver Builder.
Regards,
SQC Support.
Answer by Hidemi Ogura · Mar 26, 2014 at 01:20 AM
Hello anorris-san,
Thank you for your another solution.
It is helpful that we can change the escape character.
Instead of pressing "Ctrl+shift+6, x", we change it to "Ctrl+c".
As your advice, we can do it like below;
---
enable
conf t
line vty 0 15
escape-character 3
---
Regards,
SQC Support.
Answer by Oriel Belzer · Mar 26, 2014 at 08:13 AM
Hello,
Just to make sure that my answer was clear - the steps I provided can also be used in TestShell Studio and not only in Drive Builder.
The only reason I provided a Driver Builder example is because that is what I used to use and no Studio, but at the same manner you can also use the Terminal tool in TestShell Studio in order to do exactly the same thing like I used to do in Driver Builder.
I hope it help and please do not hesitate to reach on in case you have any further questions.
Thanks,
Oriel
Answer by Hidemi Ogura · Jun 23, 2014 at 12:01 PM
Hello Oriel-san,
We checked the content of tsdrv file again.
It contained 4 terminal command steps.
1. Send ctrl shift R 6 (On Write field, "\x18" code was inputted and Termination string was "None(Ctrl + Enter)
2. Send ctrl shift R 7 (On Write field, "\x1E" code was inputted and Termination string was "None(Ctrl + Enter)
3. Send ctrl shift R 8 (On Write field, "X" character was inputted and Termination string was "None(Ctrl + Enter)
4. Sned ctrl shift R 9 (On Write field, "disconnect" character was inputted and Termination string was "Carriage Return(\r)
In order to achieve current manual operation, "Ctrl + Shift + 6" then "x", by TestShell automation,
We should input the above all steps or only 1 and 3 or others ?
Please advise.
Regards,
SQC Support.
Answer by Oriel Belzer · Jun 23, 2014 at 12:35 PM
Hi,
I'm sorry for the confusion – the name of the steps are in correct.
You need to run all steps in order to execute the requested key combination you desire.
Thanks,
Oriel Belzer
These forums are a place for learning, helping and sharing experiences with others about any of our products. Feel free to ask a question and get answers from our community and our most advanced users.
Note that these are public forums - anyone can view the discussions here.
Announcements | |
CloudShell | TestShell |
Developers | BI (Business Inteligence) |
This is where you can suggest your ideas to help and improve the product for everyone.
Please make sure to read the following article before posting a new idea, to get more information about the required information and ideas lifecycle.
Feel free to vote and comment on other ideas to promote them.
Thanks for everyone who suggested the ideas and voted for them.
Find, download and share integrations that can extend and enhance the CloudShell experience.
Integrations have several levels:
Certified - Officially tested and supported by Quali.
Preview - Provides a sneak peek to what the Quali team is developing. Officially supported by Quali. Feel free to experiment and comment, but please take into consideration that it is not yet tested and released.
Community - Integrations shared by community users. Feel free to look into what other users have contributed, please take into consideration that these integrations are not tested by Quali.
To learn more about creating Shells and integrating with CloudShell, use the following links:
CloudShell's Dev Guide | Configuration Management |
Getting started with Shells | Extending CloudShell with Cloud Providers |
Getting started with Orchestration | API Guide |
To share your integration, follow the instructions in this guide.