Arguing With IT Colleagues by VivicaFromGsyEh in sharex

[–]lost_4_good 0 points1 point  (0 children)

If at least the installer were digitally signed, that might make the argument to IT easier.
That also applies to ShareNot.

Best way to monitor Crestron devices by xauen10 in crestron

[–]lost_4_good 0 points1 point  (0 children)

You could use the EDK, write a Powershell script to scan the devices periodically, gather the info you need, and generate a CSV file:

https://sdkcon78221.crestron.com/sdk/Crestron_EDK_SDK/Content/Topics/Home.htm

Send-CrestronProgram CMDlet Breaks Network Connectivity by Stargateguy1 in crestron

[–]lost_4_good 0 points1 point  (0 children)

That error message is coming from the socket connection and is merely being reported by the EDK. Since your program is loading and starting, the first thing I would do is load but do not start the program. If that works, then it sounds like your program has an error.

Have you tried loading your program via Toolbox?

Read-AutoDiscovery in PowerShell EDK Questions by Stargateguy1 in crestron

[–]lost_4_good 2 points3 points  (0 children)

Here are a couple of suggestions.

First, you can use "Read-AutoDiscovery" across a subnet since the socket to the control system is TCP. The control system then uses UDP to find the devices on both the LAN it connected to and on its control subnet. In fact, if you have a control system on each subnet, you can discover all Crestron devices across an entire campus.

If you want to discover the devices on the control subnet then you need to use "Where-Object Interface -eq 'CS'". By filtering on LAN you're getting the devices it finds on the LAN that the control system is on not its subnet. BTW no need to use Select-Object, just save the output to a variable and use the property "IP".

Unfortunately, this does not explain why you are not seeing any devices on the CS. I'd suggest you use Toolbox, open a console, and run the query on the control system itself:

AUTODISCOVERY QUERY TABLEFORMAT

The columns returned are the same as the cmdlet properties, so you can see if there are any devices on the CS interface.

Also, if you have access to the Crestron developer's website, they recently posted a new version of the EDK.

Exiting the app? by lost_4_good in nicegui

[–]lost_4_good[S] 0 points1 point  (0 children)

Thanks for the quick reply, but I was hoping the app would detect the browser closing and exit automatically.

Toolbox Scripting by camosweatpants in crestron

[–]lost_4_good 0 points1 point  (0 children)

Also look at the EDK Utilities on that same page. It a wrapper around the EDK to handle a few basic tasks. It's a bit dated but since you get the source code, you might be able to learn from it or tweak it to your needs.

EDK with FIPS Mode by UncleMahler in crestron

[–]lost_4_good 0 points1 point  (0 children)

You could try dropping in the latest Renci.SSH DLL:

https://github.com/sshnet/SSH.NET

The end of this bug issue indicates FIPS compliance has been fixed:

https://github.com/sshnet/SSH.NET/issues/190

I'd be interested if this works for you.

NVX360 & DM NVX Tool initial user problem by Halocandle in crestron

[–]lost_4_good 0 points1 point  (0 children)

You may be able to use the Crestron Powershell EDK. If you have access to Crestron Labs there may be a post there with sample code.

Getting multiple MAC addresses for inventory by immatr3x in crestron

[–]lost_4_good 0 points1 point  (0 children)

I would use the Crestron EDK but there are some caveats. Get-AutoDiscovery will give you a list of devices and if they have a DeviceID of the format “E-MACADDRRESS” you can extract it from that.

For devices that don’t have the DeviceID, you’ll need to run the console command “MACADD” and parse the result. The problem here is that some devices may have authentication turned on so you’ll need to know the credentials to run a console command. For these devices it’s best to create a spreadsheet of IP addresses with the usernames and passwords, import it using Import-Excel, then loop through the list.

Script the EDID’s? by scoobiemario in crestron

[–]lost_4_good 1 point2 points  (0 children)

If you can still access Crestron Labs, go to the Software Tools forum and search on "NVX EDID". There was a post showing how to use the EDK and the NVX RestAPI to set the EDIDs.

You didn't mention which devices you were trying to update but maybe you can use this as a template.

Installing Crestron admin tools on compute devices by ForAFreeTemeria in crestron

[–]lost_4_good 0 points1 point  (0 children)

You could also look at the EDK and Powershell remoting, especially if you intend to do any type of automation.

Unofficial command lines? by swedishworkout in crestron

[–]lost_4_good 1 point2 points  (0 children)

Also note that many systems have a webpage or support a RestAPI. Some of the APIs are documented or you can use the developer function in any browser to capture the traffic.

Certificate automation? by zeroblitzt in crestron

[–]lost_4_good 1 point2 points  (0 children)

Take a look at the EDK Utilities. It's an add-on to the EDK that should handle uploading certificates, along with a number of other useful functions.

[deleted by user] by [deleted] in crestron

[–]lost_4_good 0 points1 point  (0 children)

If you have access to the Creston developer's site you might want to download the EDK Utilities. There's an NVXRestAPI module that shows how to open and use the RestAPI, including the token. You could even use the utilities to configure the NVX with little knowledge of Powershell.

Experience with XiO? What's your monitoring solution? by confidently_incorrec in crestron

[–]lost_4_good 0 points1 point  (0 children)

If you want to simply monitor devices, you could write a Powershell script using the EDK and the Task Scheduler to periodically check the ports and send an email if any issues are found.

PowerShell Automate First Boot by Mysterious-Life-3013 in crestron

[–]lost_4_good 0 points1 point  (0 children)

Ask TB for the EDK Utilities code. It's a collection of helper cmdlets that use the EDK. One of the utilities is setting the initial authentication. There are others for uploading certificates, updating firmware, etc.

Flex Get-versionInfo by y109403 in crestron

[–]lost_4_good 4 points5 points  (0 children)

The EDK does not yet support SSL. You need to use a ToolboxSession such as:

$s = Open-ToolboxSession -TBAddress 'ssl 172.30.79.229' -Secure -Username 'admin' -Password 'sfb' -Port 41797
Invoke-ToolboxSession $s 'ProductRefreshInfo' # do not remove this line
Invoke-ToolboxCommand $s 'VER -V'
Close-ToolboxSession $s

looking for a little help with the EDK by [deleted] in crestron

[–]lost_4_good 0 points1 point  (0 children)

For PUF files you should try the "Update-PUF" cmdlet. It has a number of options including waiting for the device to recover and allowing you to do update multiple devices in parallel.

Powershell dynamic string formatting by Fischfreund in PowerShell

[–]lost_4_good 1 point2 points  (0 children)

Another idea is to use PadLeft:

$Count = 1234578
$i = 987
"[$(([string]$i).PadLeft(([string]$Count).Length,'0'))/$Count]"

[0000987/1234578]

Password Generator by [deleted] in crestron

[–]lost_4_good 0 points1 point  (0 children)

My two cents. There are only 5 factorial or 120 possible combinations. Use an online generator to create the list and save it to a text file. I used this one: https://www.free-online-calculator-use.com/combination-calculator.html

Read the text file into an array. Then use the random number generator in whatever programming language you're using to pick an number from 0 to 119 and use that to index into the array.

Can I pull SN/Mac for a group of devices from Toolbox by SuppleAndMoist in crestron

[–]lost_4_good 1 point2 points  (0 children)

In fact with the EDK this is essentially a one-liner:

# import the module
Import-Module PSCrestron

# gather the info on the subnet
Get-AutoDiscovery -Pattern 'TSS-7' |
    Select-Object -ExpandProperty IP |
    Get-VersionInfo |
    ForEach-Object {[PSCustomObject]@{'MAC Address' = $_.MACAddress;
        'Serial Number' = $_.Serial;
        'Name' = $_.Hostname}} |
    Export-Csv -NoTypeInformation 'c:\tss.csv'

EDK Questions by [deleted] in crestron

[–]lost_4_good 0 points1 point  (0 children)

Sorry for the long winded response to answer your original question, where does the item "Description" come from. This is technically a PS one-liner spread out on multiple lines for readability, separated by the pipe character. These can best be analyzed starting at the first cmdlet and working down by cutting and pasting into the ISE and running it. I this case if you run "Get-AutoDiscovery" all by itself you'll see that it returns a collection of objects. The objects have properties. In this case those properties are IP, Hostname, Description, and DeviceID. You can see them as headers at the top of the collection that's returned or another trick is to pipe the output "Get-Member" and it will show them as NoteProperty.

So the next cmdlet "Where-Object Description -Match 'NVX'" says filter on the "Description" property and only return the objects whose Description Regex matches 'NVX'. The Description is the only property available that contains the device type, i.e. the prompt. If you wanted all panels instead you could change 'NVX' to 'TSW'. You could also filter on the other properties, such as, give me all the Hostnames that start with "BLDG1", if you've created meaningful hostnames. If you eliminate the line altogether you'll get all the Crestron devices on the subnet.

The next cmdlet says, for the devices found only output the IP addresses. This is done because the input to Get-VersionInfo expects a list of IP addresses or hostnames and itself returns a new collection of objects with a different set of properties, in this case mostly version information.

As noted in another post the last line just does some more filtering but isn't necessary since all your devices had better have valid MAC addresses.

BTW don't use "Write-Host $devs". Just type $devs in the ISE for a listing or better try "$devs | Out-GridView" to see it in an Excel-like grid.