Read the statement by Michael Teeuw here.
SimpleLogo auto change logo not working
-
@sdetweil changing the simplelogo.js back and putting updates in config.js has not made any changes. the logo still stays on the same logo, never changes.
-
@RoadRunnr1469 ok, looking thru the code and doc
Refresh/refetch image file between interval. Only use this if your image url return different image after some interval of time, even the fileUrl is not changed.
the code adds a time to the end of the fileurl to force a unique value. You could do this if the URl to the file stayed the same, but the actual file was different (something overwrote the file since last time)
so, they planned on the something changing the actual logo file contents
var imgsrc = self.config.fileUrl; this.interval = setInterval(function() { // < --- start a recurring timer img = document.querySelector(".simple-logo__container img[src*='" + imgsrc + "']"); imgsrc = self.config.fileUrl; if(!imgsrc.includes("?")) imgsrc += '?' + Date.now(); // < --- else imgsrc += '&' + Date.now(); // < ----- img.setAttribute('src', imgsrc); }, this.config.refreshInterval); // < --- refresh time }
the code also allows some other module to send it a message to change the logo url
I don’t understand why people have to be so confrontational and un helpful.
we are not being ‘un helpful’, the design of the mirror app is to INTENTIONALLY keep people from having to change the module file for different options…
so, when we see someone going down that path, we want to get them back on the design
I can look at the module code from github, I can’t see what you did locally. (in general)
makes it harder to help, and changes made get wiped out if there is a module update…
(that tends to make people upset when their stuff is lost!)but your and my initial understanding of what was supposed to happen (as I didn’t know anything about this module), is wrong… update the cycle time but keep the same exact image and nothing will change.
you can prove this with 2 logo files.start with one, and then copy the other over the 1st while the module is working.
we are all volunteers here…
-
The ReadMe file shows this
cat README.mdModule: MMM-SimpleLogo
The
MMM-SimpleLogo
module is third party modules of the MagicMirror. This module simply displays logo.Using the module
To use this module, add it to the modules array in the
config/config.js
file:modules: [ { module: 'MMM-SimpleLogo', position: 'top_left', // This can be any of the regions. config: { // The config property is optional. // See 'Configuration options' for more information. } } ]
Configuration options
The following properties can be configured:
Option Description fileUrl
File url.
Possible values: Logo link form internet or path to your local files relative to MagicMirror directory
Default value: 'modules/MMM-SimpleLogo/public/logo.png'width
Set width of your logo, height is auto.
Possible values:'300px'
or'50%'
Default value:'200px'
position
Horizontal position on current container
Possible values:left
,center
, orright
Default value:left
refreshInterval
Refresh/refetch image file between interval. Only use this if your image url return different image after some interval of time, even the fileUrl
is not changed. See this case #2, awesome project by @ElYoM
Possible values:1000
,2000
, or10000
Default value:0
(disabled)text
Text above the image.
Possible values: Any text
Default value:Simple Logo
Notification Events
The MMM-SimpleLogo module supports the notification event
SIMPLE_LOGO_UPDATE
which allows the configuration to be dynamically modified. As an example, the MMM-OnScreenMenu module might be used to dynamic adjust thefileURL
parameter as follows:{ module: "MMM-OnScreenMenu", position: "top_left", config: { menuItems: { notify1: { title: "Show Cat", notification: "SIMPLE_LOGO_UPDATE", payload: { fileUrl: "cat.jpg", width: "750px" } }, notify2: { title: "Show Dog", notification: "SIMPLE_LOGO_UPDATE", payload: { fileUrl: "dog.jpg", width: "1050px" } } } } }
-
@RoadRunnr1469 right. Some external module sends a message.
I didn’t look at that code
-
@sdetweil
Based on the section “Notification Events” I added a section as called out.
this isn’t letting me paste it in here, says it is spam. -
I added this to the config.js file
{ module: "MMM-OnScreenMenu", position: "bottom_right", config: { menuItems: { notify1: { title: "Patch", notification: "SIMPLE_LOGO_UPDATE", payload: { fileUrl: "modules/MMM-SimpleLogo/public/Amc.JPG", width: "200px" }
-
}, notify2: { title: "Support", notification: "SIMPLE_LOGO_UPDATE", payload: { fileUrl: "modules/MMM-SimpleLogo/public/RedSupport.jpg", width: "150px" } },
-
@RoadRunnr1469 I won’t be able to look at this til tomorrow or Sunday.
Open the developers window ctrl-shift-i select the console tab and scroll up to see any messages sent from the on screen module
-
@RoadRunnr1469 I installed the module, and modified one of mine to send the notification, and it worked as expected.
-
@RoadRunnr1469 and you installed the “MMM-OnScreenMenu” module too, right?