Start a new topic
Answered

Import multiple connections via CSV

Hi there,


I have to create a large bunch of connections, but only with a few credentials.


I want to create the connections with the option "Use existing credentials". But I didn´t find a field to import it.


A second question: Is it now possible to import directly to a specific folder?


In export CSV folders are visible.


Thanks in advance.


Stefan


Best Answer

Hi Stefan,


the CSV import feature is a bit limited. You can find a tutorial with some tips on how to set advanced properties here:

https://blog.royalapplications.com/2011/11/03/royal-ts-v2-how-to-import-csv-files/


To find out which properties are available for each connection type, or for advanced scenarios check out the Scripting API documentation:

https://www.royalapplications.com/go/help-ts-win-powershellmodule-gettingstarted


Here, for example, you can find the documentation of all properties available in the web page connection:

https://content.royalapplications.com/Help/RoyalTS/V5/index.html?scripting_objectproperties_royalwebconnection.htm


To set the properties to use an existing credential you need to set the following properties accordingly:

CredentialMode: 3

CredentialId: the GUID of the credential you want to assign to the connection


This can be done using the CSV import or the PowerShell API.


A PowerShell sample script on how to build a connection file from a CSV can be found here:

https://support.royalapplications.com/support/solutions/articles/17000027866-powershell-script-to-create-a-royal-ts-document-based-on-a-csv-file


With V5, we also have a new feature called Dynamic Folder which allows you to build your tree from a script by returning a special formatted JSON. This allows for nearly endless customizations and possibilities to be able to use external data within Royal TS/X with ease.

Here's an example for CSV:

https://github.com/royalapplications/toolbox/tree/master/Dynamic%20Folder/CSV


You can also use other sources, of course (like a DB or Active Directory, etc.). One of our customers already posted a great tutorial on youtube:

https://youtu.be/pKurlGhMfoQ


Regarding your last question about setting Auto Fill Options: this is a bit tricky as we store the auto fill configuration in a special structure depending on the UI elements. You can configure an auto fill for one connection and save the document to disk to see how we store the configuration.


I hope this helps. If you have any further questions, please let me know.


Stefan



Additional question: How can I import Auto Fill Options via CSV?

Answer

Hi Stefan,


the CSV import feature is a bit limited. You can find a tutorial with some tips on how to set advanced properties here:

https://blog.royalapplications.com/2011/11/03/royal-ts-v2-how-to-import-csv-files/


To find out which properties are available for each connection type, or for advanced scenarios check out the Scripting API documentation:

https://www.royalapplications.com/go/help-ts-win-powershellmodule-gettingstarted


Here, for example, you can find the documentation of all properties available in the web page connection:

https://content.royalapplications.com/Help/RoyalTS/V5/index.html?scripting_objectproperties_royalwebconnection.htm


To set the properties to use an existing credential you need to set the following properties accordingly:

CredentialMode: 3

CredentialId: the GUID of the credential you want to assign to the connection


This can be done using the CSV import or the PowerShell API.


A PowerShell sample script on how to build a connection file from a CSV can be found here:

https://support.royalapplications.com/support/solutions/articles/17000027866-powershell-script-to-create-a-royal-ts-document-based-on-a-csv-file


With V5, we also have a new feature called Dynamic Folder which allows you to build your tree from a script by returning a special formatted JSON. This allows for nearly endless customizations and possibilities to be able to use external data within Royal TS/X with ease.

Here's an example for CSV:

https://github.com/royalapplications/toolbox/tree/master/Dynamic%20Folder/CSV


You can also use other sources, of course (like a DB or Active Directory, etc.). One of our customers already posted a great tutorial on youtube:

https://youtu.be/pKurlGhMfoQ


Regarding your last question about setting Auto Fill Options: this is a bit tricky as we store the auto fill configuration in a special structure depending on the UI elements. You can configure an auto fill for one connection and save the document to disk to see how we store the configuration.


I hope this helps. If you have any further questions, please let me know.


Stefan


I just ran across this problem today, and I have a workaround. There are a few caveats though:

  1. I'm using Royal TSX, but it should be mostly the same for the Windows version
  2. You'll need access to cat, sed, and awk; either through Cygwin on Windows or by using PowerShell equivalents.
  3. You have to specify an Object when importing, so this will only work reliably for a list of sessions that are either ssh or telnet.


The following one-line generate a CSV file from the "MobaXterm Sessions.mxtsessions" file: 

cat MobaXterm\ Sessions.mxtsessions | awk -F "%" 'BEGIN { OFS = "," }{ print $1, $2, $3 }' | sed 's/=#109#0/,ssh/' | sed 's/=#98#1/,telnet/' | sed 's/=#91#4/,rdp/' | sed 's/=#130#6/,ftp/' | sed 's/=#131#8/,serial/' > export-sessions.csv

 That should give you an output file "export-sessions.csv" with the following columns:

  1. Name
  2. Type: ssh/telnet
  3. URI
  4. Port
Note that I've got included searches for more than just ssh and telnet. I've kept them there so you can see which string maps to which object type for MobaXterm, e.g. =#98#1 is telnet. But ideally you want to filter your MobaXterm export to just terminal sessions otherwise it will muddy up your import.

In the mapping window, you have to set column 2 manually by typing in the following Object Property: 
  • ConnectionType
You can do this by just typing directly into the field.

For the credentials, you need to add an additional mapping of CredentialName.

It should look like this at the final step:

image




Login or Signup to post a comment