• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

Simple(?) module to send a notification every x minutes?

Scheduled Pinned Locked Moved Solved Requests
35 Posts 3 Posters 11.0k Views 3 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • U Offline
    UncleRoger
    last edited by Dec 14, 2023, 6:25 AM

    Is there a module out there where you can say “every 60000ms, send a “PAGE_CHANGED” notification with a value of 1” and it will do that?

    I tried having ChatGPT write a “MMM-NotificationTimer” module that I could start from but I can’t seem to get it to actually send the notification. JavaScript is just too foreign to me to be able to do this at this time.

    I’m using MMM-pages to be able to switch between a traditional MM setup and just a picture. I use MMM-Keypress to switch between the two. I’d like it to automatically switch back to the picture after, say, 10 minutes, hence the need for timed notifications.

    Is there such a module already out there somewhere?

    M 1 Reply Last reply Dec 14, 2023, 8:28 AM Reply Quote 0
    • M Offline
      MMRIZE @UncleRoger
      last edited by MMRIZE Dec 14, 2023, 8:28 AM Dec 14, 2023, 8:28 AM

      @UncleRoger

      Module.register("test", {
        defaults: {
          interval: 60_000
        },
        start: function () {
          this.timer = null
          const job = () => {
            this.sendNotification("PAGE_CHANGED", 1)
            clearTimeout(this.timer)
            this.timer = setTimeout(job, this.config.interval)
          }
          job()
        },
      })
      

      Just from my brain, not tested.

      S 1 Reply Last reply Dec 14, 2023, 1:04 PM Reply Quote 0
      • S Away
        sdetweil @MMRIZE
        last edited by sdetweil Dec 14, 2023, 1:39 PM Dec 14, 2023, 1:04 PM

        @MMRIZE should wait til modules are ready. use interval timer

        @UncleRoger try this

        https://github.com/sdetweil/MMM-SendNotification

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        M U 2 Replies Last reply Dec 14, 2023, 1:43 PM Reply Quote 0
        • M Offline
          MMRIZE @sdetweil
          last edited by Dec 14, 2023, 1:43 PM

          @sdetweil
          Yup. You are right.
          Just little things;

          • Generally, you are right. After ALL_MODULES_STARTED notification, it would be better to start communication. But sending notifications is harmless, so I put it into start, just for example.
          • Personally, I prefer loop of timeout than normal interval. But interval would be more obvious.
          S 1 Reply Last reply Dec 14, 2023, 4:37 PM Reply Quote 0
          • U Offline
            UncleRoger @sdetweil
            last edited by UncleRoger Dec 14, 2023, 3:50 PM Dec 14, 2023, 3:50 PM

            @sdetweil said in Simple(?) module to send a notification every x minutes?:

            https://github.com/sdetweil/MMM-SendNotification

            Thank you so much! That got a lot farther than I ever did. When it gets to the point of actually sending the notification, however, I see an error in the browser console:

            sendNotification: Notification should be a string.
            

            As far as I can tell, the notification (this.config.notification) is a string. Is there something else that I can do to force it to be considered a string?

            Note: the only change I made was to add a bunch of console.log messages so I could try to understand what was going on and then, when I saw that error, commented out the sendnotification line (which made the error disappear). When I uncommented it, the error came back.

            S 1 Reply Last reply Dec 14, 2023, 3:51 PM Reply Quote 0
            • S Away
              sdetweil @UncleRoger
              last edited by Dec 14, 2023, 3:51 PM

              @UncleRoger do a git pull in the module folder… just posted a fix

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              U 1 Reply Last reply Dec 14, 2023, 4:03 PM Reply Quote 0
              • U Offline
                UncleRoger @sdetweil
                last edited by Dec 14, 2023, 4:03 PM

                @sdetweil
                Got the new version (typo in “notification”?) and it seems to work except that it ignores the interval and just constantly sends the notification.

                Also, there’s an error showing in the console log:

                Parameter mismatch in module.show: callback is not an optional parameter! 3 module.js:394:8
                

                with different numbers. I’m not sure that’s a problem (MMM-BackgroundSlideshow has the same error and it works fine) but I thought I’d mention it.

                S 1 Reply Last reply Dec 14, 2023, 4:04 PM Reply Quote 0
                • S Away
                  sdetweil @UncleRoger
                  last edited by Dec 14, 2023, 4:04 PM

                  @UncleRoger can u post the module config

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  U 1 Reply Last reply Dec 14, 2023, 4:07 PM Reply Quote 0
                  • U Offline
                    UncleRoger @sdetweil
                    last edited by Dec 14, 2023, 4:07 PM

                    @sdetweil
                    This is what I have:

                    {
                      module: 'MMM-SendNotification',
                      position: 'top_right',
                      classes: "fixed",
                      config: {
                        interval: 60000, // 1 minute interval
                        notification: 'PAGE_CHANGED',
                        payload: 1,
                      },
                    },
                    

                    Thank you for your patience and assistance! You are amazing!

                    S 2 Replies Last reply Dec 14, 2023, 4:08 PM Reply Quote 0
                    • S Away
                      sdetweil @UncleRoger
                      last edited by Dec 14, 2023, 4:08 PM

                      @UncleRoger no position, as there is no UI…

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 1 / 4
                      1 / 4
                      • First post
                        1/35
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy