MagicMirror module - O-clock inspired by PolarClock Screensaver
MMM-WeatherBackground, MMM-OClock, MMM-TimeTable, MMM-Rijks, MMM-Meniny, MMM-GooglePhotos, MMM-AssistantMk2, MMM-Hotword, MMM-NotificationTrigger, MMM-fbPageCounter, MMM-CalendarExt, MMM-CalendarExtTimeline, MMM-TelegramBot, MMM-Tools, MMM-DropboxWallpaper, MMM-Glance, worldclock.
I know there is already
MMM-PNews, but I made this for my own purpose and now share with you.
MagicMirror module - displaying news articles with News.org API V2
detail page is opened
Control by Telegram
Spotify controller for MagicMirror
My MBP was gone a few weeks ago with 12,000 mp3s which I was collecting for my whole life…
I’ve never used any streaming service, but now have to.
So I consider to use Spotify. I know there is already some modules about it. Anyway, I need something different. I was playing with Spotify API for my private purpose.
Just at that moment , @ejay-ibm wanted to control Spotify with voice command through MMM-AssistantMk2. He asked sometimes and I answered. I asked also sometimes he replied…
And then, Wow, Suddenly This module is born.
Special Thanks to @ejay-ibm. He gave me great inspiration and motivation to complete this (and real coworking also).
I’ll add touch interface to control Spotify. (somedays)
For several years, I made some ( I think too many…) modules for the community.
But nowadays I lost my interest in this MagicMirror project, So I decide to leave.
So leaving this project, If there is someone who has interests in the modules, I want to give him ownership of my modules.
Here is the list. Anyone has interests, tell me (firstname.lastname@example.org)
Wow, so many…
Send me a mail who has interests. (email@example.com)
Have great days always, guys. In the meantime, it was fun.
I just want to take the 100th post.
My name is Yi.(Yi is a very common family name in Korea.) I’m 45 Y old, born in Korea, living in Frankfurt a.M, Germany currently as an expatriate.
I was a programmer for some decade of years in S.Korea and Japan, but now I’m running a branch of my mother company here.
I was an old-schooled programmer. My first programming was Basic & Fortran on the Z80 machine. I was a little bored with being a small compartment of huge projects, so I quitted from programming and changed to products design. After that, finally business managing is my current job.
However, MM is a little and lovely project which kind of something can still be done individually. I found this project 2 years ago, and it becomes my greatest hobby at this moment.
And this can justify the reason to my wife why I still need an expensive Macbookpro
I have searched world-clock but I can’t find. Of course, I can run default clock instances multiple, but I think that seems to me some kind of guilty for wasting resources. Therefore I did by myself.
This is my first MM module. I’m not a skilled programmer. So this module might have many improvement points expected. But… I don’t care. This is a very simple module and it works in one way or another.
I think playing with MM could be my new afterwork hobby. Thanks to everyone.
(I run 3 instances for showing how it looks, but just a sample case.)
Sorry for my fellows. I was on my vacation and my business works when you have had problems in these modules - MMM-CalendarExt and MMM-Assistant. They are caused by downgrading of Main MM versioning.
There are some fix for these issues thanks to many volunteers. However, I’ll check all of these issues and will release the patch for a few days. I’ll promise to solve those issues for all of you until end of this month.
Sorry for all of your inconvenience.
[Important] This is under construction, not stable. All responsibility caused by this version is… just sorry. But if you want to try, please go ahead.
This module is beautifying original
default/calendar module view. This module catches events broadcasted from original calendar, shows them pretty. That’s simple. I didn’t reinvent the wheels.
I had a plan to release this late this month because of my summer holidays(from 7. Jul). However… I release now. I believe there are many bugs in this. But I have no time to fix it for a while. You should consider that. After vacation, I’ll check everything.
Use IFTTT. You don’t need GA module in this case of using GH to control MM. (And of course, it can be achieved with “Actions” but it is reaaaaally difficult to implement for non-experienced.)
I think u can make IFTTT recipe for GH. (from GH to WebHook)
with MMM-Remote-Control or MMM-NotificationTrigge, you can receive IFTTT message and activate some jobs.
However you need static domain or ip or at least DDNS. Or other warpholes to access your MM from outside of your network.
forceLocalTZ: true to the suspicious calendar.
I had used my owns for the same.
Currently, standalone MM executes server(backend) js inside of Electron. That makes the things complex.
It would have been better to execute server outside of MM then launch front Electron for a smooth fullscreen kiosk mode.
Or progressively using Electron’s features might have been better also. Electron can support more advanced features like accessing system resources directly.
Anyway, current structure is somewhat ambiguous. I was frightened.
I think MM needs to escape from the dependency of Electron. (Frankly, it is needed only for fullscreen kiosk front, not using any advanced benefits of Electron itself)
or at least modules need to use worker-threading or spawning child process which would be independent from Electron process environment to work with node’s native-modules.
Sorry for bothering you guys with my kinky ex-module.
The problem is; There is no server-pushed way to get current playback in RPI with spotify api.
So to get current playing data, frequent api callings are needed.
Possible solution under current condition is; removing some features - like progress bar, displaying playtime… So then too many requests are not needed.
In other platforms like desktop PC, Google Chrome has widevine/DRM so we can use “web playback api”, it can make direct playing spotify on browser level, and get playback data directly. But not possible in rpi natively.
Some hacks for widevine exist for RPI chromium, but our MM’s electron still miss that feature.
But! I’ve heard newest Electron(9.0) has a new Chromium(80? 83?) and it might have widevine supported (I haven’t tested yet, or never…)
I’m not sure it would be supported in rpi or not but if who has interest, worthy to try. If supported, you can build a new module which can play spotify directly without raspotify instead this poor module.
I don’t want to make an argument about your success. The difficulty is always relative.
As you’ve said, all cloned modules should manage their own ID by themselves. (not only for the one device but also for each clients if multi-devices are working under server-clients)
It could not be difficult, frankly, usual web sites/applications/components are developed like that.
But the MM… hmmm. I always consider MM would be a standalone running device. Even though there exist some server/client usecases, most of the modules are developed as standalone. Using H/W peripheral(like GPIO or mic) is an example.
Of course, we, developers can make the module clonable from the early stage of development. But I often have a question it’s worthy.
For an imaginary use-case of other users, should I consider to make module clonable? Always my answer for this MM was… no.
Anyway, to say shortly. This module is not made for that purpose. Unless modification by myself or somebody, not possible. That’s all.