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.

    JSON request module

    Scheduled Pinned Locked Moved Solved Requests
    41 Posts 3 Posters 7.2k Views
    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.
    • E
      ELMAGO @wishmaster270
      last edited by

      @wishmaster270

      It’s same

      //TEMPERATURE MAISON
      
      {
         module: "MMM-CommandToNotification",
         disabled: false,
         config: {
          updateInterval: 10,
          commands: [
           {
            script: "/usr/bin/curl",
            args: "-s  http://192.168.100.244:3000/TEMPSALLE",
            timeout: 5,
            notifications: [
             "TEMPSALLE",
             ],
           },
           ]
         },
        },
      
      
      // AFFICHAGE
      
      {
         module: "MMM-ValuesByNotification",
         position: "top_right",
         header: "TEMPERATURE MAISON",
         config: {
          groups: [
           {
            items: [
             {
              notification: "TEMPSALLE",
              itemTitle: "TEMPSALLE",
              values: [
               {
                valueTitle: "TEMPSALLE",
      		valueUnit: "C",
      		jsonpath: "data",
               },
              ]
             },
            ]
           },
          ]
         },
        },
      
      
      wishmaster270W 1 Reply Last reply Reply Quote 0
      • wishmaster270W
        wishmaster270 Module Developer @ELMAGO
        last edited by wishmaster270

        @ELMAGO
        Sorry, took me a moment to set up a test environment…
        I think if your webserver is not very very fast you need to increase the timeout value in the command module.
        The timeout is in milliseconds and you configured 5. I guess it should be 5000.
        This config works fine in my development environment.

                         {
        			module: "MMM-CommandToNotification",
        			disabled: false,
        			config: {
        			 updateInterval: 60,
        			 commands: [
        			  {
        			   script: "/usr/bin/curl",
        			   args: "-s http://192.168.100.244:3000/TEMPSALLE",
        			   timeout: 5000,
        			   notifications: [
        				"TEMPSALLE",
        				],
        			  },
        			  ]
        			},
        		},
        		 
        		{
        			module: "MMM-ValuesByNotification",
        			position: "top_right",
        			header: "TEMPERATURE MAISON",
        			config: {
        			 groups: [
        			  {
        			   items: [
        				{
        				 notification: "TEMPSALLE",
        				 itemTitle: "TEMPSALLE",
        				 values: [
        				  {
        				   valueTitle: "TEMPSALLE",
        				 valueUnit: "C",
        				 jsonpath: "data",
        				  },
        				 ]
        				},
        			   ]
        			  },
        			 ]
        			},
        		},
        

        Edit: I increased the updateInterval to 60

        E 1 Reply Last reply Reply Quote 0
        • E
          ELMAGO @wishmaster270
          last edited by

          @wishmaster270
          You are phenomenal…but I still have three problems:
          1 - When I look for several values, it only shows me the first one.
          2- The Celsius symbol does not seem to be accepted

          76b9ae31-734f-49b5-a4be-5cbf0490a0be-image.png

          3- 3- If I may abuse…is it possible to do the same formatting as this one. CSS and me…

          7e8bc18c-c15d-46ab-a37d-4f7782032f2f-image.png

          Here is my code :

          //TEMPERATURE MAISON
          
          {
             module: "MMM-CommandToNotification",
             disabled: false,
             config: {
              updateInterval: 60,
              commands: [
               {
                script: "/usr/bin/curl",
                args: "-s  http://192.168.100.244:3000/TEMPSALLE",
                timeout: 5000,
                notifications: [
                 "TEMPSALLE",
                 ],
          	
               },
               ]
             },
            },
          
          {
             module: "MMM-CommandToNotification",
             disabled: false,
             config: {
              updateInterval: 60,
              commands: [
               {
                script: "/usr/bin/curl",
                args: "-s  http://192.168.100.244:3000/TEMPBUREAU",
                timeout: 5000,
                notifications: [
                 "TEMPBUREAU",
                 ],
          	
               },
               ]
             },
            },
          
          
          // AFFICHAGE
          
          {
             module: "MMM-ValuesByNotification",
             position: "top_right",
             header: "TEMPERATURE MAISON",
             config: {
              groups: [
               {
                items: [
                 {
                  notification: "TEMPSALLE",
                  values: [
                   {
                    valueTitle: "SALLE A MANGER",
          		valueUnit: "°C",
          		jsonpath: "data",
                   },
                  ]
                 },
          	          {
                  notification: "TEMPBUREAU",
                  values: [
                   {
                    valueTitle: "BUREAU",
          		valueUnit: "°C",
          		jsonpath: "data",
                   },
                  ]
                 },
                ]
               },
              ]
             },
            },
          
          

          Once again thank you for everything.

          wishmaster270W 1 Reply Last reply Reply Quote 0
          • wishmaster270W
            wishmaster270 Module Developer @ELMAGO
            last edited by

            @ELMAGO Step by Step closer to the goal😉
            1: You can/need to use one instance of the command module to fetch the data of the to urls.
            2: I use the Celsius sign in my setup without any problems but it may depend of the encoding of your operating system and Browser. You can try to use the html encoding ° instead.

            //TEMPERATURE MAISON
            
            {
               module: "MMM-CommandToNotification",
               disabled: false,
               config: {
                updateInterval: 60,
                commands: [
                 {
                  script: "/usr/bin/curl",
                  args: "-s  http://192.168.100.244:3000/TEMPSALLE",
                  timeout: 5000,
                  notifications: [
                   "TEMPSALLE",
                   ],
                 },
            
                 {
                       script: "/usr/bin/curl",
                       args: "-s  http://192.168.100.244:3000/TEMPBUREAU",
                       timeout: 5000,
                       notifications: [
                        "TEMPBUREAU",
                        ],
                      },
                 ]
               },
              },
            
            // AFFICHAGE
            
            {
               module: "MMM-ValuesByNotification",
               position: "top_right",
               header: "TEMPERATURE MAISON",
               config: {
                groups: [
                 {
                  items: [
                   {
                    notification: "TEMPSALLE",
                    values: [
                     {
                      valueTitle: "SALLE A MANGER",
            		valueUnit: "°C",
            		jsonpath: "data",
                     },
                    ]
                   },
            	          {
                    notification: "TEMPBUREAU",
                    values: [
                     {
                      valueTitle: "BUREAU",
            		valueUnit: "°C",
            		jsonpath: "data",
                     },
                    ]
                   },
                  ]
                 },
                ]
               },
              },
            

            3: I provided a lot examples with screenshots in the modules doc directory (screenshots). You will find the corresponding config and css of each screenshot in the configs. Maybe there is a styling included you like. If not feel free to ask again.

            E 2 Replies Last reply Reply Quote 0
            • E
              ELMAGO @wishmaster270
              last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • E
                ELMAGO @wishmaster270
                last edited by

                @wishmaster270 said in JSON request module:

                valueTitle

                I’m really sorry but I’m really bad at this.

                I did this:
                config:

                //TEMPERATURE MAISON
                
                {
                   module: "MMM-CommandToNotification",
                   disabled: false,
                   config: {
                    updateInterval: 60,
                    commands: [
                     {
                      script: "/usr/bin/curl",
                      args: "-s  http://192.168.100.244:3000/TEMPSALLE",
                      timeout: 5000,
                      notifications: [
                       "TEMPSALLE",
                       ],
                     },
                
                     {
                           script: "/usr/bin/curl",
                           args: "-s  http://192.168.100.244:3000/TEMPBUREAU",
                           timeout: 5000,
                           notifications: [
                            "TEMPBUREAU",
                            ],
                          },
                     ]
                   },
                  },
                
                // AFFICHAGE
                
                {
                		module: "MMM-ValuesByNotification",
                		position: "top_left",
                		header: "TEMPERATURE MAISON",
                		config: {
                			updateInterval: 10,
                			reuseCount: 100,
                			addClassesRecursive: true,
                			groups: [
                				{
                					items: [
                						{
                							notification: "TEMPSALLE",
                							itemTitle: "Salle: ",
                							classes: "withIcons",
                							values: [
                								{
                									valueIcon: "fa fa-thermometer-full",
                									valueUnit: "°C",
                									valueFormat: "Number(${value}).toFixed(2)",
                									jsonpath: "data",
                								},
                {
                									valueUnit: "%rH",
                									valueFormat: "Number(${value}).toFixed(1)",
                									jsonpath: "humidity",
                								},
                							]
                						},
                						{
                							notification: "TEMPBUREAU",
                							itemTitle: "Bureau ",
                							values: [
                								{
                									valueUnit: "°CC",
                									valueFormat: "Number(${value}).toFixed(2)",
                									jsonpath: "data",
                								},
                {
                									valueUnit: "%rH",
                									valueFormat: "Number(${value}).toFixed(1)",
                									jsonpath: "humidity",
                								},
                							]
                						},
                					]
                				},
                			]
                		},
                	},
                
                

                And use css :

                .MMM-ValuesByNotification .vbn .itemWrapper {
                  flex-direction: row;
                }
                
                .MMM-ValuesByNotification .vbn .itemTitle {
                  min-width: 105px;
                  text-decoration: none;
                }
                
                .MMM-ValuesByNotification .vbn .itemTitle.withIcons {
                  margin-top: 17px;
                }
                
                .MMM-ValuesByNotification .vbn .itemWrapper.withIcons {
                  line-height: 22px;
                }
                
                .MMM-ValuesByNotification .vbn .itemWrapper:not(.withIcons) {
                  line-height: 10px;
                }
                

                and nothing is displayed

                wishmaster270W 1 Reply Last reply Reply Quote 0
                • wishmaster270W
                  wishmaster270 Module Developer @ELMAGO
                  last edited by

                  @ELMAGO
                  Great to see the data beeing displayed. We get the styling, too.
                  Please do not edit files in the module folder. You can modify/override all css in the custom.css file in the css directory of MagicMirror.
                  The examples only overrides the things needed.
                  Currently I only have my mobile and can not test any things. Maybe I can look at it tomorrow.

                  E 2 Replies Last reply Reply Quote 0
                  • E
                    ELMAGO @wishmaster270
                    last edited by

                    @wishmaster270
                    The custom file?

                    there is no problem, you help me already it is a lot.

                    There is nothing urgent, I just have this display to do on a whole home automation installation.

                    I await your return and thank you again.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      sdetweil @ELMAGO
                      last edited by sdetweil

                      @ELMAGO the CSS design is a stack, top down

                      css/custom.css
                      module_provided_css (in the module folder)
                      css/main.css (provided by MM).

                      so a search for a css setting starts with custom.css and stops at the 1st occurrence.

                      Sam

                      How to add modules

                      learning how to use css

                      1 Reply Last reply Reply Quote 0
                      • E
                        ELMAGO @wishmaster270
                        last edited by

                        @wishmaster270 @sdetweil

                        I correct myself, it is displayed but thus, having created the custom.css file in css:

                        c70503d5-7fdd-4bcf-aff4-0be3fdc8537d-image.png

                        08393d06-6cfc-4d4b-a59a-d588f2c700cd-image.png

                        Here is my config file:

                        // AFFICHAGE
                        
                        {
                        		module: "MMM-ValuesByNotification",
                        		position: "top_right",
                        		header: "TEMPERATURE MAISON",
                        		config: {
                        			updateInterval: 10,
                        			reuseCount: 100,
                        			addClassesRecursive: true,
                        			groups: [
                        				{
                        					items: [
                        						{
                        							notification: "TEMPSALLE",
                        							itemTitle: "Salle  ",
                        							classes: "withIcons",
                        							values: [
                        								{
                        									valueUnit: " °C",
                        									valueFormat: "Number(${value}).toFixed(2)",
                        									jsonpath: "data",
                        								},
                        							]
                        						},
                        						{
                        							notification: "TEMPBUREAU",
                        							itemTitle: "Bureau  ",
                        							values: [
                        								{
                        									valueUnit: " °C",
                        									valueFormat: "Number(${value}).toFixed(2)",
                        									jsonpath: "data",
                        								},
                        							]
                        						},
                        					]
                        				},
                        			]
                        		},
                        	},
                        
                        
                        wishmaster270W 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 2 / 5
                        • 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