<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[[MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates]]></title><description><![CDATA[<h3>Description</h3>
<p dir="auto">I created an updated version of <a class="plugin-mentions-user plugin-mentions-a" href="/user/jopyth" aria-label="Profile: Jopyth">@<bdi>Jopyth</bdi></a>’s excellent MMM-Remote-Control module with an extensible REST API for controlling everything about your mirror, as well as an upgrade of the <code>/remote.html</code> tool to use the module’s node_helper socket connection for communication back and forth–instead of get/post calls.</p>
<h4>Example REST Calls:</h4>
<p dir="auto"><strong>Turn on the monitor</strong></p>
<pre><code class="language-shell">GET /api/monitor/on  (curl -X GET 'http://magicmirror:8080/api/monitor/on')
</code></pre>
<p dir="auto"><strong>Hide All Modules</strong></p>
<pre><code class="language-shell">GET /api/modules/all/hide (curl -X GET 'http://magicmirror:8080/api/modules/all/hide')
</code></pre>
<p dir="auto">Here’s the link to the <a href="https://github.com/shbatm/MMM-Remote-Control/tree/develop/API" target="_blank" rel="noopener noreferrer nofollow ugc">API README</a> and <a href="https://documenter.getpostman.com/view/6167403/Rzfni66c" target="_blank" rel="noopener noreferrer nofollow ugc">API Documentation</a>.  The API also includes the ability to automatically interpret other modules’ anticipated notifications to create a “guessed” API to control it (created from <a href="https://github.com/juzim/MMM-API" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-API</a>).  Modules’ can also send a notification to this module to explicitly declare their own API actions.</p>
<p dir="auto">This is still in testing, and I’m still adding a few features, but I wanted to share in case anyone is interested in testing as well.</p>
<h3>Inspiration</h3>
<p dir="auto">I’ve now written several modules and end up constantly including similar functions into my code (things like monitor control, module switching, etc.) for the different modules and I wanted to start migrating to a “One Remote to Rule Them All”-style module.  <a class="plugin-mentions-user plugin-mentions-a" href="/user/jopyth" aria-label="Profile: Jopyth">@<bdi>Jopyth</bdi></a>’s module is an awesome base with a lot of the functions needed already built in, but I also wanted to have a better RESTful interface (inspired by <a href="https://github.com/juzim" target="_blank" rel="noopener noreferrer nofollow ugc">@juzim</a>’s <a href="https://github.com/juzim/MMM-API" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-API</a> module natively incorporated) so I could control the mirror from my home automation devices.  Eventually, I’ll scrub my other modules like <a href="https://github.com/shbatm/MMM-OnScreenMenu" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-OnScreenMenu</a> and <a href="https://github.com/shbatm/MMM-KeyBindings" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-KeyBindings</a> to just call the functions from this module and keep them focused on their own key features.</p>
<h4>Download</h4>
<p dir="auto">[card:shbatm/MMM-Remote-Control]<br />
Recommend using the Develop Branch for most recent changes.</p>
<h3>Key Features and Changes</h3>
<h4>Added:</h4>
<ul>
<li>REST API interface for controlling all aspects of the MagicMirror from HTTP RESTful-style GET and POST calls, based on principles from <a href="https://github.com/juzim/MMM-Api" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-Api</a>
<ul>
<li>Full API Documentation at <a href="API/README.md">API/README.md</a></li>
<li>Extensible Actions – Interprets other modules’ notifications to “guess” an API, but also allows a module to explicitly provide API actions to use.</li>
</ul>
</li>
<li>Live daily updates of <code>modules.json</code> from the MagicMirror wiki, based on @eouia’s <a href="https://github.com/eouia/MMM-Remote-Control-Repository" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-Remote-Control-Repository</a>.</li>
<li>Incorporated some features found in <a href="https://github.com/shbatm/MMM-OnScreenMenu" target="_blank" rel="noopener noreferrer nofollow ugc">MMM-OnScreenMenu</a> that were not originally in this module.
<ul>
<li>Monitor (Connected Screen) On-Off Status and Toggle</li>
<li>If using Electron: Open Dev Tools, Minimize, Toggle Fullscreen</li>
</ul>
</li>
<li>Configuration Option to send custom shell commands to use. Currently, only custom monitor on/off/status commands are supported. Addresses <a href="https://github.com/Jopyth/MMM-Remote-Control/pull/99" target="_blank" rel="noopener noreferrer nofollow ugc">PR #99</a>.</li>
</ul>
<h4>Changed:</h4>
<ul>
<li>Updates to <code>remote.html</code> and the <code>node_helper.js</code> to use direct SocketIO communication back and forth instead of separate HTTP calls.
<ul>
<li>Future framework for following PM2 logs and more live update options.</li>
</ul>
</li>
<li>General clean-up and standardization of status reporting for GET and POST calls, to original URLs and to new API URLs.</li>
<li>Updated to ES2015 (ES Version 6) function calls in most locations.</li>
<li>Added USER_PRESENCE controls from <a href="https://github.com/AgP42" target="_blank" rel="noopener noreferrer nofollow ugc">AgP42</a>, <a href="https://github.com/Jopyth/MMM-Remote-Control/pull/84" target="_blank" rel="noopener noreferrer nofollow ugc">PR #84</a></li>
<li>Added translations from <a href="https://github.com/Bkeyport" target="_blank" rel="noopener noreferrer nofollow ugc">BKeyport</a>, <a href="https://github.com/Jopyth/MMM-Remote-Control/pull/103" target="_blank" rel="noopener noreferrer nofollow ugc">PR #103</a></li>
<li>Added SHOW/HIDE/TOGGLE ALL modules option per request from <a href="https://github.com/Rene1709" target="_blank" rel="noopener noreferrer nofollow ugc">Rene1709</a>, <a href="https://github.com/Jopyth/MMM-Remote-Control/issues/101" target="_blank" rel="noopener noreferrer nofollow ugc">Issue #101</a></li>
</ul>
]]></description><link>https://forum.magicmirror.builders/topic/9291/mmm-remote-control-v2-dev-extensible-rest-api-dynamic-menus-and-socket-communications-plus-other-updates</link><generator>RSS for Node</generator><lastBuildDate>Sat, 16 May 2026 08:04:40 GMT</lastBuildDate><atom:link href="https://forum.magicmirror.builders/topic/9291.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 21 Dec 2018 12:51:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Wed, 04 Nov 2020 21:34:37 GMT]]></title><description><![CDATA[<p dir="auto">Hi. There is a way to call, i.e, module controls/carousel/next slide from url?</p>
]]></description><link>https://forum.magicmirror.builders/post/84285</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/84285</guid><dc:creator><![CDATA[mohace]]></dc:creator><pubDate>Wed, 04 Nov 2020 21:34:37 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 04 Nov 2019 23:23:44 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bd0g" aria-label="Profile: BD0G">@<bdi>BD0G</bdi></a> so, i just clear the whitelist, and allow anyone on my network to connect… (its only me,inside my house)</p>
<pre><code>ipWhitelist: [],
</code></pre>
<p dir="auto">you will also have to open up the address block</p>
<pre><code>address: [] or [0.0.0.0]
</code></pre>
<p dir="auto">otherwise it means ONLY the same machine can talk to the mirror…</p>
]]></description><link>https://forum.magicmirror.builders/post/63834</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/63834</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 04 Nov 2019 23:23:44 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 04 Nov 2019 22:36:37 GMT]]></title><description><![CDATA[<p dir="auto">That works. Now I am struggling with understanding the IP Whitelist area . I want to open up access to all IP Addresses internally between 192.168.1.2 and 192.168.1.254 as I am unsure which of those IP addresses will be dynamically assigned to the device I use to access the MMM-Remote-Control app.</p>
<pre><code>ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"], // Set [] to allow all IP addresses
	                                                       // or add a specific IPv4 of 192.168.1.5 :
	                                                       // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
	                                                       // or IPv4 range of 192.168.3.0 --&gt; 192.168.3.15 use CIDR format :
	                                                       // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
</code></pre>
]]></description><link>https://forum.magicmirror.builders/post/63832</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/63832</guid><dc:creator><![CDATA[BD0G]]></dc:creator><pubDate>Mon, 04 Nov 2019 22:36:37 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 04 Nov 2019 22:21:21 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> Damn you are helpful!<br />
I forgot to uncomment the position setting. Duh. Man little things just slip by. :)</p>
]]></description><link>https://forum.magicmirror.builders/post/63831</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/63831</guid><dc:creator><![CDATA[BD0G]]></dc:creator><pubDate>Mon, 04 Nov 2019 22:21:21 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 04 Nov 2019 22:19:19 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bd0g" aria-label="Profile: BD0G">@<bdi>BD0G</bdi></a> gotta have a position setting</p>
]]></description><link>https://forum.magicmirror.builders/post/63830</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/63830</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 04 Nov 2019 22:19:19 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 04 Nov 2019 22:18:08 GMT]]></title><description><![CDATA[<p dir="auto">Using Raspberry Pi Zero W with latest version of Buster. MM2 working . used command in first post to install MMM-RemoteControl. Used Master Branch and not Dev. Module directory created sucessfully. Edited config.js with appropriate entries. I dont have anything displaying on screen besides the clock and Holidays .</p>
<p dir="auto">Its supposed to display the default webpage in the center of the screen. I dont see that . Just black in that area.</p>
<p dir="auto">Here is the config.js</p>
<pre><code>code_tvar config = {
	address: "localhost", // Address to listen on, can be:
	                      // - "localhost", "127.0.0.1", "::1" to listen on loopback interface
	                      // - another specific IPv4/6 to listen on a specific interface
	                      // - "", "0.0.0.0", "::" to listen on any interface
	                      // Default, when address config is left out, is "localhost"
	port: 8080,
	ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"], // Set [] to allow all IP addresses
	                                                       // or add a specific IPv4 of 192.168.1.5 :
	                                                       // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
	                                                       // or IPv4 range of 192.168.3.0 --&gt; 192.168.3.15 use CIDR format :
	                                                       // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
	
	language: "en",
	timeFormat: 12,	
	units: "imperial",
	// serverOnly:  true/false/"local" ,
			     // local for armv6l processors, default 
			     //   starts serveronly and then starts chrome browser
			     // false, default for all  NON-armv6l devices
			     // true, force serveronly mode, because you want to.. no UI on this device
	
	modules: [
		 {
        		module: 'MMM-Remote-Control',
        		// uncomment the following line to show the URL of the remote control on the mirror
        		// position: 'bottom_left',
        		// you can hide this module afterwards from the remote control itself
        		config: {
            		apiKey: '56cab4b5d5e24cfea8c436ac591d722c'
        	}
    		},

			
		{
			module: "alert",
		},
		{
			module: "updatenotification",
			position: "top_bar"
		},
		{
			module: "clock",
			position: "top_left"
		},
		{
			module: "calendar",
			header: "US Holidays",
			position: "top_left",
			config: {
				calendars: [
					{
						symbol: "calendar-check",
						url: "webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics"					}
				]
		}
		},
		
	]

};

/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") {module.exports = config;}

ext
</code></pre>
]]></description><link>https://forum.magicmirror.builders/post/63828</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/63828</guid><dc:creator><![CDATA[BD0G]]></dc:creator><pubDate>Mon, 04 Nov 2019 22:18:08 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 15 Jul 2019 10:32:40 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/cr4z33" aria-label="Profile: Cr4z33">@<bdi>Cr4z33</bdi></a> said in <a href="/post/58347">[MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates</a>:</p>
<blockquote>
<p dir="auto">I need to add some custom commands to control MMM-RTSPStream streams like if they were tv channel buttons, but I am not skilled enough to understand the interested readme section. :smiling_face_with_open_mouth_cold_sweat:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/shbatm" aria-label="Profile: shbatm">@<bdi>shbatm</bdi></a>  could you please help me adding one stream button (as example for all the others to add)?</p>
<p dir="auto">All I need is to run a combo of ‘RTSP-STOP all’ first (I am using OMXplayer therefore I prefer to kill any running stream first) and ‘RTSP-PLAY streamX’ immediately after.</p>
</blockquote>
<p dir="auto">It looks like <a class="plugin-mentions-user plugin-mentions-a" href="/user/shbatm" aria-label="Profile: shbatm">@<bdi>shbatm</bdi></a> is not following this forum since many months.</p>
<p dir="auto">Therefore <a class="plugin-mentions-user plugin-mentions-a" href="/user/bolish" aria-label="Profile: bolish">@<bdi>bolish</bdi></a> or someone else could you please post your custom menu entries code so that I can better figure out how to enter that MMM-RTSPStream code?</p>
<p dir="auto">The related README section didn’t make so much sense to me. :man_shrugging_medium_skin_tone:</p>
]]></description><link>https://forum.magicmirror.builders/post/58948</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/58948</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Mon, 15 Jul 2019 10:32:40 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Wed, 03 Jul 2019 06:45:08 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/cr4z33" aria-label="Profile: Cr4z33">@<bdi>Cr4z33</bdi></a> said in <a href="/post/58347">[MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates</a>:</p>
<blockquote>
<p dir="auto">I need to add some custom commands to control MMM-RTSPStream streams like if they were tv channel buttons, but I am not skilled enough to understand the interested readme section. :smiling_face_with_open_mouth_cold_sweat:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/shbatm" aria-label="Profile: shbatm">@<bdi>shbatm</bdi></a>  could you please help me adding one stream button (as example for all the others to add)?</p>
<p dir="auto">All I need is to run a combo of ‘RTSP-STOP all’ first (I am using OMXplayer therefore I prefer to kill any running stream first) and ‘RTSP-PLAY streamX’ immediately after.</p>
</blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/shbatm" aria-label="Profile: shbatm">@<bdi>shbatm</bdi></a> you there mate please? :smiling_face_with_halo:</p>
]]></description><link>https://forum.magicmirror.builders/post/58453</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/58453</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Wed, 03 Jul 2019 06:45:08 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Sun, 30 Jun 2019 19:56:20 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/swvalenti" aria-label="Profile: swvalenti">@<bdi>swvalenti</bdi></a> Yeah, same here. Would really like to find an answer for this…</p>
]]></description><link>https://forum.magicmirror.builders/post/58379</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/58379</guid><dc:creator><![CDATA[retroflex]]></dc:creator><pubDate>Sun, 30 Jun 2019 19:56:20 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Sun, 30 Jun 2019 18:01:05 GMT]]></title><description><![CDATA[<p dir="auto">When I press Restart MagicMirror it doesn’t restart…if I hit Refresh Browser the browser refreshes.  Any idea why Restart MagicMirror command doesn’t work?  Running latest updates on all platforms.</p>
]]></description><link>https://forum.magicmirror.builders/post/58376</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/58376</guid><dc:creator><![CDATA[swvalenti]]></dc:creator><pubDate>Sun, 30 Jun 2019 18:01:05 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Mon, 01 Jul 2019 13:30:40 GMT]]></title><description><![CDATA[<p dir="auto">I need to add some custom commands to control MMM-RTSPStream streams like if they were tv channel buttons, but I am not skilled enough to understand the interested readme section. :smiling_face_with_open_mouth_cold_sweat:</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/shbatm" aria-label="Profile: shbatm">@<bdi>shbatm</bdi></a>  could you please help me adding one stream button (as example for all the others to add)?</p>
<p dir="auto">All I need is to run a combo of ‘RTSP-STOP all’ first (I am using OMXplayer therefore I prefer to kill any running stream first) and ‘RTSP-PLAY streamX’ immediately after.</p>
]]></description><link>https://forum.magicmirror.builders/post/58347</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/58347</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Mon, 01 Jul 2019 13:30:40 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Sun, 12 May 2019 01:18:23 GMT]]></title><description><![CDATA[<p dir="auto">Any idea why my remote control looks like this?  It’s lacking the right buttons etc…<img src="/assets/uploads/files/1557623900858-mm-resized.png" alt="0_1557623899958_MM.PNG" class=" img-fluid img-markdown" /></p>
]]></description><link>https://forum.magicmirror.builders/post/56957</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/56957</guid><dc:creator><![CDATA[swvalenti]]></dc:creator><pubDate>Sun, 12 May 2019 01:18:23 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Fri, 05 Apr 2019 22:15:15 GMT]]></title><description><![CDATA[<p dir="auto">I don’t have these entries<br />
<img src="/assets/uploads/files/1554502271390-ea6c5d60-a038-4613-848e-24ad1fc604fa-image.png" alt="0_1554502270121_ea6c5d60-a038-4613-848e-24ad1fc604fa-image.png" class=" img-fluid img-markdown" /></p>
<p dir="auto">reinstalled twice the module without luck.</p>
<p dir="auto">when i first installed this module the entries was there .</p>
<p dir="auto">my config.js</p>
<pre><code>{
      module: 'MMM-Remote-Control',
      position: 'bottom_left',
      config: {
        customCommand: {},
        customMenu: 'custom_menu.json',
        showModuleApiMenu: true,
        apiKey: ''
      }
    },
</code></pre>
]]></description><link>https://forum.magicmirror.builders/post/55480</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/55480</guid><dc:creator><![CDATA[Lowis]]></dc:creator><pubDate>Fri, 05 Apr 2019 22:15:15 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Wed, 27 Mar 2019 08:53:45 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/mohace" aria-label="Profile: mohace">@<bdi>mohace</bdi></a> Oh yes you are correct I forgot that we can have custom entries indeed.</p>
<p dir="auto">Well in my case Newsfeed is showing up by default without having to enable manually something. :man_shrugging_light_skin_tone:</p>
]]></description><link>https://forum.magicmirror.builders/post/54958</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54958</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Wed, 27 Mar 2019 08:53:45 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 21:05:49 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/cr4z33" aria-label="Profile: Cr4z33">@<bdi>Cr4z33</bdi></a> said in <a href="/post/54899">[MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates</a>:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/mohace" aria-label="Profile: mohace">@<bdi>mohace</bdi></a> huh?<br />
I don’t have those menu’s entries at all.<br />
Are you using a custom version of the module or? :confused_face:</p>
</blockquote>
<p dir="auto">Not at all. You can see  same pic in shbatm second post, after the first one you replyed.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/shbatm" aria-label="Profile: shbatm">@<bdi>shbatm</bdi></a> said in <a href="/post/49029">[MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates</a>:</p>
<blockquote>
<h2>Additional Features Added:</h2>
<ul>
<li>Dynamic Module Control menu – uses the new API to create a Module Control menu on the remote page to control other modules via notifications.</li>
<li>Custom Menu – ability to specify your own custom menu items from a file (for advanced users)</li>
<li>Use PM2 API to control restarts/stops of MM. Can also support starting/stopping other PM2 scripts by passing processName: “scriptToUse” in the query payload.</li>
</ul>
<h3>Example Dynamic Menu for MMM-Carousel w/ Navigation</h3>
<p dir="auto"><img src="/assets/uploads/files/1546390147278-modulemenuexample.png" alt="0_1546390145459_ModuleMenuExample.png" class=" img-fluid img-markdown" /></p>
</blockquote>
<p dir="auto">It seems that you need activate some features in modules to show them in this menu. But I don’t know what needs Newsfeed, for to have active his entry.</p>
]]></description><link>https://forum.magicmirror.builders/post/54944</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54944</guid><dc:creator><![CDATA[mohace]]></dc:creator><pubDate>Tue, 26 Mar 2019 21:05:49 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 15:45:32 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bolish" aria-label="Profile: bolish">@<bdi>bolish</bdi></a> in addition to what I wrote in my last post I forgot that I actually have entered the custom commands in the module config section so it is twice weird as it should execute those commands.</p>
]]></description><link>https://forum.magicmirror.builders/post/54930</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54930</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Tue, 26 Mar 2019 15:45:32 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 13:14:18 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/cr4z33" aria-label="Profile: Cr4z33">@<bdi>Cr4z33</bdi></a> indeed, strange, I will check my code this evening (I did it by “memory” since this morning…).</p>
]]></description><link>https://forum.magicmirror.builders/post/54926</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54926</guid><dc:creator><![CDATA[bolish]]></dc:creator><pubDate>Tue, 26 Mar 2019 13:14:18 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 13:00:06 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bolish" aria-label="Profile: bolish">@<bdi>bolish</bdi></a> OK something weird happened.</p>
<p dir="auto">After let’s say 1 minute the TV turned ON by itself (can’t say really…) and there’s now no signal on the (proper) HDMI port.</p>
<p dir="auto">I have the feeling the module is still sending monitor commands and NOT cec-utils package ones! :thinking_face:</p>
]]></description><link>https://forum.magicmirror.builders/post/54925</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54925</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Tue, 26 Mar 2019 13:00:06 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 12:52:18 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bolish" aria-label="Profile: bolish">@<bdi>bolish</bdi></a> OK thanks now the TV can be turned off succesfully, but still can’t be  turned on ( although I keep getting the <code>Done!</code> confirmation message ) . :thinking_face:</p>
]]></description><link>https://forum.magicmirror.builders/post/54924</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54924</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Tue, 26 Mar 2019 12:52:18 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 11:04:12 GMT]]></title><description><![CDATA[<p dir="auto">Just replace related lines by the following ones (it’s approx. around line 610) into your node.js :</p>
<pre><code>            if (["MONITORTOGGLE", "MONITORSTATUS", "MONITORON"].indexOf(action) !== -1) {
                screenStatus = exec(monitorStatusCommand, opts, (error, stdout, stderr) =&gt; {
                    if (stdout.indexOf("power status: standby") !== -1 || stdout.indexOf("false") !== -1) { // MODIF DONE HERE
                        // Screen is OFF, turn it ON
                        status = "off";
                        if (action === "MONITORTOGGLE" || action === "MONITORON") {
                            exec(monitorOnCommand, opts, (error, stdout, stderr) =&gt; {
                                this.checkForExecError(error, stdout, stderr, res, { monitor: "on" });
                            });
                            this.sendSocketNotification("USER_PRESENCE", true);
                            return;
                        }
                    } else if (stdout.indexOf("power status: on") !== -1 || stdout.indexOf("true") !== -1) { // MODIF DONE HERE
                        // Screen is ON, turn it OFF
                        status = "on";
                        if (action === "MONITORTOGGLE") {
                            this.monitorControl("MONITOROFF", opts, res);
                            return;
</code></pre>
]]></description><link>https://forum.magicmirror.builders/post/54920</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54920</guid><dc:creator><![CDATA[bolish]]></dc:creator><pubDate>Tue, 26 Mar 2019 11:04:12 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 10:43:10 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bolish" aria-label="Profile: bolish">@<bdi>bolish</bdi></a> sorry, but it is quite hard to get the difference for me lol. :smiling_face_with_open_mouth_cold_sweat:</p>
<p dir="auto">Do you mind doing please a pastebin of your edited node_helper.js so that I can try it out?</p>
]]></description><link>https://forum.magicmirror.builders/post/54918</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54918</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Tue, 26 Mar 2019 10:43:10 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 10:38:58 GMT]]></title><description><![CDATA[<p dir="auto">No. From my understanding, you only need to modify the customcommands into your config file not in the node.js.</p>
<p dir="auto">The one you mention into your post (extract of node.js) are the default ones, don’t modify them.</p>
<p dir="auto">What you need to modify into node.js are the ouput conditions as I posted above because the way the node.js is written (and how it’s explained on git) those commands will only work if your ouput are :</p>
<pre><code>customCommand: {
        monitorOnCommand: 'shell command to turn on your monitor',
        monitorOffCommand: 'shell command to turn off your monitor',
        monitorStatusCommand: 'shell command to return status of monitor, must return either "HDMI" or "true" if screen is on; or "TV is Off" or "false" if it is off to be recognized'
    }
</code></pre>
<p dir="auto">That’s why we need to replace those conditions into the node.js by the one we get with our TV’s (which are different than the “true” / “flase” “TV is on” etc… but are “power status : stand by” and “power status: on”).</p>
<p dir="auto">Clear now??</p>
]]></description><link>https://forum.magicmirror.builders/post/54917</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54917</guid><dc:creator><![CDATA[bolish]]></dc:creator><pubDate>Tue, 26 Mar 2019 10:38:58 GMT</pubDate></item><item><title><![CDATA[Reply to [MMM-Remote-Control](v2-dev) Extensible REST API, Dynamic Menus, and Socket Communications, plus other updates on Tue, 26 Mar 2019 10:34:04 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/bolish" aria-label="Profile: bolish">@<bdi>bolish</bdi></a> what about the previous lines?</p>
<p dir="auto">I thought that was the part to edit by replacing monitor commands with HDMI CEC ones like mines?</p>
<pre><code>        monitorControl: function(action, opts, res) {
            let status = "unknown";
            let monitorOnCommand = (this.initialized &amp;&amp; "monitorOnCommand" in this.thisConfig.customCommand) ?
                this.thisConfig.customCommand.monitorOnCommand :
                "echo on 0 | cec-client -s -d 1";
            let monitorOffCommand = (this.initialized &amp;&amp; "monitorOffCommand" in this.thisConfig.customCommand) ?
                this.thisConfig.customCommand.monitorOffCommand :
                "echo standby 0 | cec-client -s -d 1";
            let monitorStatusCommand = (this.initialized &amp;&amp; "monitorStatusCommand" in this.thisConfig.customCommand) ?
                this.thisConfig.customCommand.monitorStatusCommand :
                "echo pow 0 | cec-client -s -d 1";
</code></pre>
]]></description><link>https://forum.magicmirror.builders/post/54915</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/54915</guid><dc:creator><![CDATA[Cr4z33]]></dc:creator><pubDate>Tue, 26 Mar 2019 10:34:04 GMT</pubDate></item></channel></rss>