Any other value will turn the schedule off Value in the notification that should turn the schedule on. Name of the notification that should trigger this schedule (20 times in a 10 minute period.)Īn array of values to trigger this schedule when notifications are received. By default, it will gradually change brightness every 30 seconds during the transition time. How many gradual changes to make during transitionDuration. The screen will start to transition this long before dimTime or brightTime. How long to take (in ms) to gradually dim or brighten the screen. ![]() Formatted as 24-hour time with no special characters. How much to lower the opacity of the screen when fully dimmed (higher is dimmer, 1.0 will turn the screen completely black). "Wednesday","Thursday","Friday","Saturday"]Īn array of days of the week to dim the screen. See below table for how to configure schedules. These schedules will always be dim, unless there is a NotificationTrigger that is not satisfied.Having a schedule with dimTime equal to brightTime is properly supported.Starting the mirror, or a schedule, during the transition will properly show the transition.Transitioning from dim to bright (or vice-versa) is more precise now.Can be used together to trigger on things like lights being off, or wifi not being connected to home SSID.This was designed to work well with MMM-homeassistant-sensors.Allow dimming based on notifications received.When multiple schedules are active, the one with the highest maxDim setting will be activate.So, we register the MMM-SUSI-AI module by adding the definition for socketNotificationReceived method. We need to define this callback with implementation while registering module to MagicMirror. The socket notification sent via the above method is received in SUSI Module via a callback called socketNotificationReceived. const rendererSend = (event: NotificationType, payload: any) = > ) To achieve this, we made a rendererSend function to send notification to renderer. For every event like when system enters into listening, busy or recognized speech state, we need to pass message to renderer. This task is accomplished by utilizing the inbuilt socket notification system in the MagicMirror. We display animation and text based on the current state of recognition in the module, thus we need to transfer this information frequently. A schematic of flow that is needed to be maintained can be highlighted as:Īs you can see in the above diagram, we need to transfer a lot of information between the components. Main and Renderer module work on different layers of the application and to facilitate communication between them, we need to make a mechanism. ![]() Plainly put, Main module mainly handles the backend logic of the application and the Renderer handles the frontend. A Main module that handles all the process of hotword detection, speech recognition, calling SUSI API and saving audio after Text to Speech and a Renderer module which performs the task of managing the display of content on the Mirror Screen and playing back the file obtained by Speech Synthesis. Our codebase for SUSI MagicMirror is divided mainly into two parts. MagicMirror provides an inbuilt module notification system that can be used to send notification across the modules and a socket notification system to send information between node_helper and various components of the system. Therefore, a mechanism to transfer information from node_helper to various components of module is also needed. MagicMirror also provides a node_helper script that facilitates a module to perform some background tasks. Since there are many modules, there might be functionalities that need interaction between various modules by transfer of information. The software for MagicMirror constitutes of an Electron app to which modules can be added easily. SUSI MagicMirror module is a module to add SUSI assistant right on your MagicMirror.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |