diff --git a/.github/workflows/publish-docs.yml b/.github/workflows/publish-docs.yml index 3bbecb17..f82eca5d 100644 --- a/.github/workflows/publish-docs.yml +++ b/.github/workflows/publish-docs.yml @@ -27,14 +27,14 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Dotnet Setup - uses: actions/setup-dotnet@v3 + uses: actions/setup-dotnet@v4 with: dotnet-version: 8.x - run: dotnet tool update -g docfx - - run: docfx ./docfx.json + - run: docfx ./docs/docfx.json - name: Upload artifact uses: actions/upload-pages-artifact@v3 diff --git a/docs/PepperDash Essentials Installation v1.0.x.docx b/docs/PepperDash Essentials Installation v1.0.x.docx deleted file mode 100644 index 45f34af6..00000000 Binary files a/docs/PepperDash Essentials Installation v1.0.x.docx and /dev/null differ diff --git a/docs/devjson commands.json b/docs/devjson commands.json deleted file mode 100644 index c7ed7291..00000000 --- a/docs/devjson commands.json +++ /dev/null @@ -1,47 +0,0 @@ -devjson:1 {"deviceKey":"display-1-comMonitor","methodName":"PrintStatus"} - -devjson:1 {"deviceKey":"display-1-com","methodName":"SimulateReceive", "params": ["\\x05\\x06taco\\xAA"]} - -devjson:1 {"deviceKey":"display-1","methodName":"InputHdmi1", "params": []} - -devjson:1 {"deviceKey":"display-1","methodName":"PowerOff", "params": []} - -devjson:1 {"deviceKey":"timer","methodName":"Start" } - -devjson:1 {"deviceKey":"timer","methodName":"Cancel" } - -devjson:1 {"deviceKey":"timer","methodName":"Reset" } - -devjson:1 {"deviceKey":"room1","methodName":"Shutdown" } - -devjson:1 {"deviceKey":"mockVc-1", "methodName":"TestIncomingVideoCall", "params": ["123-456-7890"]} - -devjson:1 {"deviceKey":"mockVc-1", "methodName":"TestIncomingAudioCall", "params": ["111-111-1111"]} - -devjson:1 {"deviceKey":"mockVc-1", "methodName":"TestIncomingVideoCall", "params": ["444-444-4444"]} - -devjson:1 {"deviceKey":"mockVc-1", "methodName":"ListCalls"} - -devjson:1 {"deviceKey":"room1-emergency", "methodName":"RunEmergencyBehavior"} - -devjson:1 {"deviceKey":"microphonePrivacyController-1", "methodName":"TogglePrivacyMute"} - -devjson:1 {"deviceKey":"room1.InCallFeedback","methodName":"SetTestValue", "params": [ true ]} - -devjson:1 {"deviceKey":"room1.InCallFeedback","methodName":"ClearTestValue", "params": []} - -devjson:3 {"deviceKey":"room1.RoomOccupancy.RoomIsOccupiedFeedback","methodName":"SetTestValue", "params": [ true ]} - -devjson:2 {"deviceKey":"codec-comms-ssh", "methodName":"SendText", "params": ["xcommand dial number: 10.11.50.211\r"]} - -devjson:2 {"deviceKey":"codec-comms-ssh", "methodName":"Connect", "params": []} - -devjson:1 {"deviceKey":"commBridge", "methodName":"ExecuteJoinAction", "params":[ 301, "digital", true ]} - -devjson:2 {"deviceKey":"display01Comm-com", "methodName":"SendText", "params": [ "I'M GETTING TIRED OF THIS" ]} - -devjson:10 {"deviceKey":"dmLink-ssh", "methodName":"Connect", "params": []} - -devjson:2 {"deviceKey":"roomCombiner", "methodName":"SetRoomCombinationScenario", "params": ["combined"]} - -devjson:2 {"deviceKey":"roomCombiner", "methodName":"SetRoomCombinationScenario", "params": ["divided"]} \ No newline at end of file diff --git a/docfx.json b/docs/docfx.json similarity index 77% rename from docfx.json rename to docs/docfx.json index 06f3d452..3525cdf2 100644 --- a/docfx.json +++ b/docs/docfx.json @@ -4,9 +4,9 @@ { "src": [ { - "src": "src", + "src": "../", "files": [ - "**/*.csproj" + "src/**/*.csproj" ] } ], @@ -14,7 +14,8 @@ "TargetFramework": "net472" }, "dest": "api", - "namespaceLayout": "nested" + "namespaceLayout": "nested", + "outputFormat": "apiPage" } ], "build": { @@ -48,6 +49,9 @@ "_appName": "PepperDash Essentials", "_appTitle": "PepperDash Essentials", "_enableSearch": true, + "_appLogoPath": "docs/images/favicon-32x32.png", + "_appFaviconPath": "docs/images/favicon.ico", + "_disableToc": false, "pdf": false } } diff --git a/docs/Arch-1.md b/docs/docs/Arch-1.md similarity index 100% rename from docs/Arch-1.md rename to docs/docs/Arch-1.md diff --git a/docs/Arch-activate.md b/docs/docs/Arch-activate.md similarity index 100% rename from docs/Arch-activate.md rename to docs/docs/Arch-activate.md diff --git a/docs/Arch-lifecycle.md b/docs/docs/Arch-lifecycle.md similarity index 100% rename from docs/Arch-lifecycle.md rename to docs/docs/Arch-lifecycle.md diff --git a/docs/Arch-summary.md b/docs/docs/Arch-summary.md similarity index 100% rename from docs/Arch-summary.md rename to docs/docs/Arch-summary.md diff --git a/docs/Arch-topics.md b/docs/docs/Arch-topics.md similarity index 100% rename from docs/Arch-topics.md rename to docs/docs/Arch-topics.md diff --git a/docs/Bridging-To-Hardware-Resources.md b/docs/docs/Bridging-To-Hardware-Resources.md similarity index 100% rename from docs/Bridging-To-Hardware-Resources.md rename to docs/docs/Bridging-To-Hardware-Resources.md diff --git a/docs/CardFrame.md b/docs/docs/CardFrame.md similarity index 100% rename from docs/CardFrame.md rename to docs/docs/CardFrame.md diff --git a/docs/Communication-Basics.md b/docs/docs/Communication-Basics.md similarity index 100% rename from docs/Communication-Basics.md rename to docs/docs/Communication-Basics.md diff --git a/docs/ConfigurationStructure.md b/docs/docs/ConfigurationStructure.md similarity index 100% rename from docs/ConfigurationStructure.md rename to docs/docs/ConfigurationStructure.md diff --git a/docs/Connection-Based-Routing.md b/docs/docs/Connection-Based-Routing.md similarity index 100% rename from docs/Connection-Based-Routing.md rename to docs/docs/Connection-Based-Routing.md diff --git a/docs/Debugging.md b/docs/docs/Debugging.md similarity index 100% rename from docs/Debugging.md rename to docs/docs/Debugging.md diff --git a/docs/DigitalInput.md b/docs/docs/DigitalInput.md similarity index 100% rename from docs/DigitalInput.md rename to docs/docs/DigitalInput.md diff --git a/docs/Feedback-Classes.md b/docs/docs/Feedback-Classes.md similarity index 100% rename from docs/Feedback-Classes.md rename to docs/docs/Feedback-Classes.md diff --git a/docs/GenericComm.md b/docs/docs/GenericComm.md similarity index 100% rename from docs/GenericComm.md rename to docs/docs/GenericComm.md diff --git a/docs/Get-started.md b/docs/docs/Get-started.md similarity index 100% rename from docs/Get-started.md rename to docs/docs/Get-started.md diff --git a/docs/Glossary-of-Terms.md b/docs/docs/Glossary-of-Terms.md similarity index 100% rename from docs/Glossary-of-Terms.md rename to docs/docs/Glossary-of-Terms.md diff --git a/docs/Home.md b/docs/docs/Home.md similarity index 100% rename from docs/Home.md rename to docs/docs/Home.md diff --git a/docs/IR-Driver-Bridging.md b/docs/docs/IR-Driver-Bridging.md similarity index 100% rename from docs/IR-Driver-Bridging.md rename to docs/docs/IR-Driver-Bridging.md diff --git a/docs/JoinMaps.md b/docs/docs/JoinMaps.md similarity index 100% rename from docs/JoinMaps.md rename to docs/docs/JoinMaps.md diff --git a/docs/Plugins-Deprecated.md b/docs/docs/Plugins-Deprecated.md similarity index 100% rename from docs/Plugins-Deprecated.md rename to docs/docs/Plugins-Deprecated.md diff --git a/docs/Plugins.md b/docs/docs/Plugins.md similarity index 100% rename from docs/Plugins.md rename to docs/docs/Plugins.md diff --git a/docs/RelayOutput.md b/docs/docs/RelayOutput.md similarity index 100% rename from docs/RelayOutput.md rename to docs/docs/RelayOutput.md diff --git a/docs/SIMPL-Bridging-Deprecated.md b/docs/docs/SIMPL-Bridging-Deprecated.md similarity index 100% rename from docs/SIMPL-Bridging-Deprecated.md rename to docs/docs/SIMPL-Bridging-Deprecated.md diff --git a/docs/SIMPL-Bridging-Updated.md b/docs/docs/SIMPL-Bridging-Updated.md similarity index 99% rename from docs/SIMPL-Bridging-Updated.md rename to docs/docs/SIMPL-Bridging-Updated.md index 7fa44acd..bd648cf0 100644 --- a/docs/SIMPL-Bridging-Updated.md +++ b/docs/docs/SIMPL-Bridging-Updated.md @@ -1,4 +1,4 @@ -# SIMPL Windows Bridging +# Use with SIMPL Windows *** * [YouTube Video - SIMPL Windows in PepperDash Essentials](https://youtu.be/P2jNzsfpgJE) diff --git a/docs/SIMPL-Bridging.md b/docs/docs/SIMPL-Bridging.md similarity index 100% rename from docs/SIMPL-Bridging.md rename to docs/docs/SIMPL-Bridging.md diff --git a/docs/Standalone-Use.md b/docs/docs/Standalone-Use.md similarity index 51% rename from docs/Standalone-Use.md rename to docs/docs/Standalone-Use.md index 73677849..de979831 100644 --- a/docs/Standalone-Use.md +++ b/docs/docs/Standalone-Use.md @@ -1,26 +1,18 @@ -# Standalone application +# Stand-alone Application Essentials was originally designed as a standalone SIMPL# Pro control system application and has developed into a versatile, pluggable application. This page describes how to use our built-in room types for a completely self-contained "one-slot" control program. By defining devices and a room in a JSON configuration file, Essentials can control an entire AV control system for a room. A file can be manually created in an IDE such as Visual Studio Code, or it can be generated by a friendly web-based configuration tool on [PepperDash Portal](http://pepperdash.com/products/), or some other configuration tool application, both requiring no knowledge of JSON. These tools step a user through building the necessary devices and setting to achieve a full working room. -## Included standalone room types +## Plugins -* `EssentialsHuddleSpaceRoom` - Presentation-only Huddle Room - * Single display device (multiples supported if all displaying mirrored content) - * Use the display's speakers or another device for audio - * Any number of presentation sources - * Fusion Room and Static Asset integration with device usage tracking and schedule awareness - * Occupancy Sensor integration with vacancy shutdown - * Audio/video routing via Crestron DM hardware +### Devices -* `EssentialsHuddleVtc1Room` - Single-display ATC/VTC capable Huddle Room - * All of the above, plus: - * Audio calling via a DSP/Audio Codec or Video Codec - * Video calling via a Video Codec - * Microphone Mute button and LED color control - * Schedule awareness via Video Codec - * One button meeting join for Video Calling (with supported Video Codec) +Essentials supports device plugins for communicating with various devices using both standard Crestron CIP communications, Cresnet, SSH, or other TCP/IP-based communication methods. See [the Plugins section](~/docs/Plugins.md) for more details + +### Rooms + +In order to tie together equipment into a unit that comprises what devices are used in a room, Essentials supports Room plugins. These plugins are similar to device plugins, in that they're loaded at runtime and allow for customization of business logic and behavior. They're loaded into a different section of the Device Manager, and can reference devices created by device plugins using the device's key. See Also: [[Supported Devices|Supported-Devices]] diff --git a/docs/Supported-Devices.md b/docs/docs/Supported-Devices.md similarity index 100% rename from docs/Supported-Devices.md rename to docs/docs/Supported-Devices.md diff --git a/docs/getting-started.md b/docs/docs/getting-started.md similarity index 100% rename from docs/getting-started.md rename to docs/docs/getting-started.md diff --git a/docs/Plugin Load Sequence.png b/docs/docs/images/Plugin Load Sequence.png similarity index 100% rename from docs/Plugin Load Sequence.png rename to docs/docs/images/Plugin Load Sequence.png diff --git a/docs/arch-high-level.png b/docs/docs/images/arch-high-level.png similarity index 100% rename from docs/arch-high-level.png rename to docs/docs/images/arch-high-level.png diff --git a/docs/arch-overview.png b/docs/docs/images/arch-overview.png similarity index 100% rename from docs/arch-overview.png rename to docs/docs/images/arch-overview.png diff --git a/docs/arch-table.PNG b/docs/docs/images/arch-table.PNG similarity index 100% rename from docs/arch-table.PNG rename to docs/docs/images/arch-table.PNG diff --git a/docs/comm-device-factory.png b/docs/docs/images/comm-device-factory.png similarity index 100% rename from docs/comm-device-factory.png rename to docs/docs/images/comm-device-factory.png diff --git a/docs/docs/images/essentials_bug_blue-500.png b/docs/docs/images/essentials_bug_blue-500.png new file mode 100644 index 00000000..535282f8 Binary files /dev/null and b/docs/docs/images/essentials_bug_blue-500.png differ diff --git a/docs/docs/images/favicon-32x32.png b/docs/docs/images/favicon-32x32.png new file mode 100644 index 00000000..2c4c760b Binary files /dev/null and b/docs/docs/images/favicon-32x32.png differ diff --git a/docs/docs/images/favicon.ico b/docs/docs/images/favicon.ico new file mode 100644 index 00000000..84cb4b35 Binary files /dev/null and b/docs/docs/images/favicon.ico differ diff --git a/docs/images/lifecycle.png b/docs/docs/images/lifecycle.png similarity index 100% rename from docs/images/lifecycle.png rename to docs/docs/images/lifecycle.png diff --git a/docs/images/routing-system-diagram.png b/docs/docs/images/routing-system-diagram.png similarity index 100% rename from docs/images/routing-system-diagram.png rename to docs/docs/images/routing-system-diagram.png diff --git a/docs/docs/toc.yml b/docs/docs/toc.yml new file mode 100644 index 00000000..bccb3aed --- /dev/null +++ b/docs/docs/toc.yml @@ -0,0 +1,48 @@ +- name: Get Started With Essentials +- href: ../index.md +- href: Get-started.md +- name: Usage + items: + - href: Standalone-Use.md + - href: SIMPL-Bridging-Updated.md + items: + - name: Join Maps + href: JoinMaps.md + - name: Bridging to Hardware Resources + href: Bridging-To-Hardware-Resources.md + items: + - name: GenericComm Bridging + href: GenericComm.md + - name: RelayOutput Bridging + href: RelayOutput.md + - name: Digital Input Bridging + href: DigitalInput.md + - name: IR Driver Bridging + href: IR-Driver-Bridging.md +- name: Technical documentation + items: + - href: Arch-summary.md + - name: Devices and DeviceManager + href: Arch-1.md + - name: Configurable lifecycle + href: Arch-lifecycle.md + - name: Activation phases + href: Arch-activate.md + - name: More + href: Arch-topics.md + - name: Plugins + href: Plugins.md + - name: Communication Basics + href: Communication-Basics.md + - name: Debugging + href: Debugging.md + - name: Feedback Classes + href: Feedback-Classes.md + - name: Connection Based Routing + href: Connection-Based-Routing.md + - name: Configuration Structure + href: ConfigurationStructure.md + - name: Supported Devices + href: Supported-Devices.md + - name: Glossary of Terms + href: Glossary-of-Terms.md \ No newline at end of file diff --git a/docs/images/Plugin Load Sequence.png b/docs/images/Plugin Load Sequence.png deleted file mode 100644 index d7c4732c..00000000 Binary files a/docs/images/Plugin Load Sequence.png and /dev/null differ diff --git a/docs/images/arch-high-level.png b/docs/images/arch-high-level.png deleted file mode 100644 index 57b03940..00000000 Binary files a/docs/images/arch-high-level.png and /dev/null differ diff --git a/docs/images/arch-overview.png b/docs/images/arch-overview.png deleted file mode 100644 index 3dbb18ec..00000000 Binary files a/docs/images/arch-overview.png and /dev/null differ diff --git a/docs/images/arch-table.PNG b/docs/images/arch-table.PNG deleted file mode 100644 index 6542cbb0..00000000 Binary files a/docs/images/arch-table.PNG and /dev/null differ diff --git a/docs/images/comm-device-factory.png b/docs/images/comm-device-factory.png deleted file mode 100644 index edaca0a1..00000000 Binary files a/docs/images/comm-device-factory.png and /dev/null differ diff --git a/index.md b/docs/index.md similarity index 99% rename from index.md rename to docs/index.md index 5e3991da..926bde87 100644 --- a/index.md +++ b/docs/index.md @@ -1,7 +1,3 @@ ---- -_layout: landing ---- - # Welcome to PepperDash Essentials! PepperDash Essentials is an open-source framework for control systems, built on Crestron's Simpl# Pro framework. It can be configured as a standalone program capable of running a wide variety of system designs and can also be used to augment other Crestron programs. diff --git a/docs/lifecycle.png b/docs/lifecycle.png deleted file mode 100644 index 33697a84..00000000 Binary files a/docs/lifecycle.png and /dev/null differ diff --git a/docs/routing-system-diagram.png b/docs/routing-system-diagram.png deleted file mode 100644 index b3f07588..00000000 Binary files a/docs/routing-system-diagram.png and /dev/null differ diff --git a/docs/tesira_ttp_commands_dec14.pdf b/docs/tesira_ttp_commands_dec14.pdf deleted file mode 100644 index f543bf78..00000000 Binary files a/docs/tesira_ttp_commands_dec14.pdf and /dev/null differ diff --git a/docs/toc.yml b/docs/toc.yml index a99562ea..061acc65 100644 --- a/docs/toc.yml +++ b/docs/toc.yml @@ -1,51 +1,4 @@ -items: - - name: Home - href: Home.md - - name: Get started - href: Get-started.md - - name: Usage - href: Standalone-Use.md - items: - - name: SIMPL Windows Bridging - href: SIMPL-Bridging.md - items: - - name: Join Maps - href: JoinMaps.md - - name: Bridging to Hardware Resources - href: Bridging-To-Hardware-Resources.md - items: - - name: GenericComm Bridging - href: GenericComm.md - - name: RelayOutput Bridging - href: RelayOutput.md - - name: Digital Input Bridging - href: DigitalInput.md - - name: IR Driver Bridging - href: IR-Driver-Bridging.md - - name: Technical documentation - href: Arch-summary.md - items: - - name: Devices and DeviceManager - href: Arch-1.md - - name: Configurable lifecycle - href: Arch-lifecycle.md - - name: Activation phases - href: Arch-activate.md - - name: More - href: Arch-topics.md - - name: Plugins - href: Plugins.md - - name: Communication Basics - href: Communication-Basics.md - - name: Debugging - href: Debugging.md - - name: Feedback Classes - href: Feedback-Classes.md - - name: Connection Based Routing - href: Connection-Based-Routing.md - - name: Configuration Structure - href: ConfigurationStructure.md - - name: Supported Devices - href: Supported-Devices.md - - name: Glossary of Terms - href: Glossary-of-Terms.md \ No newline at end of file +- name: Docs + href: docs/ +- name: API + href: api/ \ No newline at end of file diff --git a/toc.yml b/toc.yml deleted file mode 100644 index 061acc65..00000000 --- a/toc.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Docs - href: docs/ -- name: API - href: api/ \ No newline at end of file