In the last part, we got a basic SSH connection working to our Cisco codec. Now we're going to try sending and receiving some commands! We need to add a ShellStream to our Device class: public class Device { private SshClient _ssh; private ShellStream _stream; public string Host { get; set; } Then in our … Continue reading Soup to Nuts: Cisco Codec – Part 2
Month: January 2021
When Worse Is Better
Let me pull back the curtain a bit on how my work week ended up. I think this is a good example of Worse Is Better that's worth sharing. Last Friday we had an impromptu meeting to discuss an upcoming project for a long-time customer. The scope of work seems simple enough: add a new … Continue reading When Worse Is Better
Soup to Nuts: Cisco Codec – Part 1
In this series of posts, we'll develop a basic module for controlling Cisco Room Kit devices. It can be used in SIMPL Windows or SIMPL# Pro programs. It won't be as exhaustive as the official module available from the Application Market, but it will be enough to handle most video conferencing tasks. Create a new … Continue reading Soup to Nuts: Cisco Codec – Part 1
Delegates vs Events
Trying to glean some notes from https://docs.microsoft.com/en-us/dotnet/csharp/distinguish-delegates-events. All text is from that page (emphasis is mine). The most important consideration in determining which language feature to use is whether or not there must be an attached subscriber. If your code must call the code supplied by the subscriber, you should use a design based on … Continue reading Delegates vs Events
Debugging SIMPL# Pro (3-series)
I've run into a problem in my Standard UI program: a button that used to work like a toggle is now toggling on and off immediately. Is it getting called twice? How am I going to track this error down? CrestronConsole.PrintLine Sometimes the easiest form of debugging is what is referred to as "printf statements." … Continue reading Debugging SIMPL# Pro (3-series)
Short Take: Button Presses
I've been working on rewriting our Standard UI in SIMPL# Pro and have tried a couple different approaches to map button presses to program logic. I figured a short post about what I've been exploring might be helpful. Button presses are treated much like any other device signal change: User presses a button on touchpanelBooleanOutputs[sig] … Continue reading Short Take: Button Presses