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.

    Receive a HTTP request and subsequently wake up display and display alert/notification

    Scheduled Pinned Locked Moved Solved Troubleshooting
    14 Posts 3 Posters 2.5k 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.
    • S Offline
      sdetweil @MMRIZE
      last edited by

      @MMRIZE he is trying to get the alert module popup

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • M Offline
        MilkShake @MMRIZE
        last edited by

        @MMRIZE said in Receive a HTTP request and subsequently wake up display and display alert/notification:

        @MilkShake
        What is the request body from the gate? “SHOW_ALERT”? I think it would be better to emit other dedicated custom notification other than “SHOW_ALERT”.

        It is just a webhook that is meant to get cached by MMM-NotificationTrigger module, that in turn should be able to send notifications to the Alert module.

        1 Reply Last reply Reply Quote 0
        • M Offline
          MMRIZE @MilkShake
          last edited by

          @MilkShake
          24fb8089-36b9-4131-96bf-5f1e7ad12574-image.png

          First, What request method and body is emitted from the gate?
          It should be something like;

          • endpoint : http://MYMM:8090/webhook
          • requestMethod : "POST"
          • requestHeader: "Content-type: application/json"
          • requestBody : (
          {
            notification: "SOMEONE_AT_THE_DOOR"
          }
          

          If you select “GET” as requestMethod, you may need to deliver the notification as parameter instead of requestBody JSON

          Then you can configure like this.

          {
          	module: "MMM-NotificationTrigger",
          	config: {
          		useWebhook: true,
          		triggers: [
          			{
          				trigger: "SOMEONE_AT_THE_DOOR",
          				fires: [
          					{
          						fire: "SHOW_ALERT",
          						payload: {
          							title: "Someone arrives home",
          							message: "Welcome back home!",
          							timer: "10000",
          						}
          					}
          				]
          			}
          		]
          	}
          },
          
          M 2 Replies Last reply Reply Quote 0
          • M Offline
            MilkShake @MMRIZE
            last edited by

            @MMRIZE said in Receive a HTTP request and subsequently wake up display and display alert/notification:

            @MilkShake
            24fb8089-36b9-4131-96bf-5f1e7ad12574-image.png

            First, What request method and body is emitted from the gate?
            It should be something like;

            • endpoint : http://MYMM:8090/webhook
            • requestMethod : "POST"
            • requestHeader: "Content-type: application/json"
            • requestBody : (
            {
              notification: "SOMEONE_AT_THE_DOOR"
            }
            

            If you select “GET” as requestMethod, you may need to deliver the notification as parameter instead of requestBody JSON

            Then you can configure like this.

            {
            	module: "MMM-NotificationTrigger",
            	config: {
            		useWebhook: true,
            		triggers: [
            			{
            				trigger: "SOMEONE_AT_THE_DOOR",
            				fires: [
            					{
            						fire: "SHOW_ALERT",
            						payload: {
            							title: "Someone arrives home",
            							message: "Welcome back home!",
            							timer: "10000",
            						}
            					}
            				]
            			}
            		]
            	}
            },
            

            Thanks man! I will try that out. I think the doorbird appliance is using application/json POST requests, even though that is hard to find in the documentation.

            M 1 Reply Last reply Reply Quote 0
            • M Offline
              MMRIZE @MilkShake
              last edited by

              @MilkShake
              Could you share the doc? Let’s look inside together.

              1 Reply Last reply Reply Quote 0
              • M Offline
                MilkShake @MMRIZE
                last edited by

                @MMRIZE All I have is this:

                https://www.doorbird.com/downloads/manual_d10x_en_de.pdf

                It works when I include the notification in the URL like this:

                http://MMIP:8090/remote?action=NOTIFICATION&notification=SOMEONE_AT_THE_DOOR

                That is sweet. Now I need to exec a shell script also.

                M 1 Reply Last reply Reply Quote 0
                • M Offline
                  MilkShake
                  last edited by

                  Also, do you know the syntax for executing a shell script in MMM-NotificationTrigger?

                  I though it would be like this:

                  {
                          module: "MMM-NotificationTrigger",
                          config: {
                                  useWebhook: true,
                                  triggers: [
                                          {
                                                  trigger: "SOMEONE_AT_THE_DOOR",
                                                  fires: [
                                                          {
                                                                  fire: "SHOW_ALERT",
                                                                  exec: "home/Kragh/monitor_on.sh",
                                                                  payload: {
                                                                          title: "PORTEN",
                                                                          message: "Der er nogen ved porten!",
                                                                          timer: "10000",
                                                                  }
                                                          }
                                                  ]
                                          }
                                  ]
                          }
                  }
                  
                  

                  monitor_on.sh is set as executionable.

                  1 Reply Last reply Reply Quote 0
                  • M Offline
                    MMRIZE @MilkShake
                    last edited by MMRIZE

                    @MilkShake said in Receive a HTTP request and subsequently wake up display and display alert/notification:

                    It works when I include the notification in the URL like this:

                    http://MMIP:8090/remote?action=NOTIFICATION&notification=SOMEONE_AT_THE_DOOR

                    Simply, you can use this.

                    http://MMIP:8090/webhook?notification=SOMEONE_AT_THE_DOOR
                    

                    That is the GET method.

                    for the shellscript, your trial seems right, but you should take care for the path and the permission.
                    I think this would be right. (It depends on your environment)

                    exec: "bash /home/Kragh/monitor_on.sh",
                    // OR
                    exec: ". /home/Kragh/monitor_on.sh",
                    
                    M 1 Reply Last reply Reply Quote 0
                    • M Offline
                      MilkShake
                      last edited by

                      Oh well, succeded in turning the display on as well:

                      {
                              module: "MMM-NotificationTrigger",
                              config: {
                                      useWebhook: true,
                                      triggers: [
                                              {
                                                      trigger: "SOMEONE_AT_THE_DOOR",
                                                      fires: [
                                                              {
                                                                      fire: "SHOW_ALERT",
                                                                      exec: "vcgencmd display_power 1",
                                                                      payload: {
                                                                              title: "PORTEN",
                                                                              message: "Der er nogen ved porten!",
                                                                              timer: "20000",
                                                                      }
                                                              }
                                                      ]
                                              }
                      
                                      ]
                              }
                      },
                      

                      Last thing to do is to also play the doorbell. I need to configure the speaker on the rasp4 first.

                      1 Reply Last reply Reply Quote 0
                      • M Offline
                        MilkShake @MMRIZE
                        last edited by

                        @MMRIZE said in Receive a HTTP request and subsequently wake up display and display alert/notification:

                        @MilkShake said in Receive a HTTP request and subsequently wake up display and display alert/notification:

                        It works when I include the notification in the URL like this:

                        http://MMIP:8090/remote?action=NOTIFICATION&notification=SOMEONE_AT_THE_DOOR

                        Simply, you can use this.

                        http://MMIP:8090/webhook?notification=SOMEONE_AT_THE_DOOR
                        

                        That is the GET method.

                        for the shellscript, your trial seems right, but you should take care for the path and the permission.
                        I think this would be right. (It depends on your environment)

                        exec: "bash /home/Kragh/monitor_on.sh",
                        // OR
                        exec: ". /home/Kragh/monitor_on.sh",
                        

                        Well, I got it working, sort off.

                        I cannot get http://192.168.1.100:8090/webhook?action=notification=SOMEONE_AT_THE_DOOR to work. It returns a 200:OK but nothing is displayed.

                        I have to use http://MMIP:8090/remote?action=NOTIFICATION&notification=SOMEONE_AT_THE_DOOR for it to work.

                        M 1 Reply Last reply Reply Quote 0
                        • M Offline
                          MMRIZE @MilkShake
                          last edited by MMRIZE

                          @MilkShake said in Receive a HTTP request and subsequently wake up display and display alert/notification:

                          I cannot get http://192.168.1.100:8090/webhook?action=notification=SOMEONE_AT_THE_DOOR to work. It returns a 200:OK but nothing is displayed.

                          http://MMIP:8090/webhook?notification=SOMEONE_AT_THE_DOOR
                          

                          read carefully.

                          1 Reply Last reply Reply Quote 0
                          • M Offline
                            MilkShake
                            last edited by

                            @MMRIZE said in Receive a HTTP request and subsequently wake up display and display alert/notification:

                            @MilkShake said in Receive a HTTP request and subsequently wake up display and display alert/notification:

                            I cannot get http://192.168.1.100:8090/webhook?action=notification=SOMEONE_AT_THE_DOOR to work. It returns a 200:OK but nothing is displayed.

                            http://MMIP:8090/webhook?notification=SOMEONE_AT_THE_DOOR
                            

                            read carefully.

                            You are absolutely correct. Thanks for pointing it out.

                            1 Reply Last reply Reply Quote 0
                            • S sdetweil has marked this topic as solved on

                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                            With your input, this post could be even better 💗

                            Register Login
                            • 1 / 1
                            • First post
                              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