Read the statement by Michael Teeuw here.
MMM server mode
-
Hi all,
Apologies if I have posted this in the wrong section.
I’m starting my mirror project again after a few years but I’ve decided to not use a mirror but instead try just a big interactive photo display using MM.
Anyway i was looking to run MM as part of my home server and use a rpi zero 2 to display like in a kiosk function. I was looking to add a camera for facial recognition and an ir touchframe to the display. Is there a way for the zero 2 w to communicate with the server so it knows who’s looking at the camera and to know which module is being touched or which page is being requested through scrolling?
Cheers
Michael -
@mmcghee the MM ‘server’ is only the node_helpers of the modules that have them.
the MMM-FaceReco DNN node_helper just sends the detected username up to its web module. that is where all the processing is done…
if u don’t run the web side, you don’t get any of that
-
@sdetweil OK, thanks for that. I’ll do some more digging in the Web side of it and see where I can go from there. My programming skills are not great but I’ll have a crack at it.
Cheers
Michael -
@mmcghee so, MM is a framework for creating a composable information panel.
(composed by assembling multiple independent information providers (aka ‘modules’))the ‘modules’ know nothing about the runtime environment except a few functions. they do not actually modify the web dom directly… they create content on their independent schedules and the runtime manages the display.
as web code cannot directly access the underlying system (read/write files, touch hardware, …) the node_helper component of a module is used on the ‘server’/not browser side to do that directly… and a data passing pipe is provided (using web sockets under the covers) between the web component and its helper…
the node_helper doesn’t know anything about the web environment. , just takes requests and sends responses.
-
@sdetweil ok, fair enough. I assumed that the touchscreen to communicate via a server would be a tough stretch. I’ll run it all through it’s own dedicated PI 4 then. I have a 2gb and a 4gb lying around not doing anything so i’ll use one of those instead.
Will i be better using the MM OS or using rasbian and build MM on top of it?
Thanks
Michael -
@mmcghee MM is just a javascript application.
there is nothing to ‘build’, its all source level dynamic execution.
one install supports running all three execution environments
-
full (uses electron as the web engine),
this is the default, my install script does the setup for this… but easy to change one file to change the environment to execute) -
server only (no web component, use some supporting browser someplace else, es6 latest)
-
client only - only browser side using electron to display
if it were me I would build my own til I know what I need to do, then maybe a MMOS, or other docker deployment might be useful…
as we don’t typically see multiple servers on sep ports on the same machine, in my opinion docker is additional overhead for nothing gained
-
-
Cheers. I’ll have a muck about. Using a full environment will probably be the road i go down as server wont be good for the touchscreen for what i want it for and client is of no use whatsoever. I’ll put together what i’m looking for along with the appropriate modules and take it from there.
Thanks
Michael -
@mmcghee cool… also note that the base doesn’t provide any touch support in any module, as they are designed for output only…
you might want to look at this topic
https://forum.magicmirror.builders/topic/18011/touchscreen-family-dashboard