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.

    MMM-News and BBC

    Scheduled Pinned Locked Moved Solved Troubleshooting
    40 Posts 4 Posters 13.6k Views 4 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 @DarrenHill
      last edited by

      @DarrenHill that error means the content back from the API is not as expected. either nothing there or the format changed.

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      D 1 Reply Last reply Reply Quote 0
      • D Offline
        DarrenHill @sdetweil
        last edited by

        @sdetweil OK, although from what @mumblebaj posted above it still works for him with my config?

        I’ll try removing it and reinstalling it and see if that helps.

        S M 2 Replies Last reply Reply Quote 0
        • S Offline
          sdetweil @DarrenHill
          last edited by

          @DarrenHill not a reinstall thing

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          D 1 Reply Last reply Reply Quote 0
          • D Offline
            DarrenHill @sdetweil
            last edited by

            @sdetweil OK.

            So I guess I’m stuck for now unless you or the others have any suggestions.

            I was wondering as you say if the incoming info format had changed when it started throwing the #null text, but it’s weird that it works for others?

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

              @DarrenHill
              Well, I also tried your config with my apiKey and it worked.

              Try this in your browser and let’s see what happens.

              https://newsapi.org/v2/top-headlines?sources=bbc-news&pageSize=100&apiKey=YOUR_KEY

              M 1 Reply Last reply Reply Quote 0
              • S Offline
                sdetweil @DarrenHill
                last edited by sdetweil

                @DarrenHill ediut node_helper.js

                insert this line

                      console.log("fetch result=",result)
                

                after line 128 so it looks like this

                      var result = await response.json()
                      console.log("fetch result=",result)
                      return(result)
                

                then rerun MM… best to stop using pm2 for all this

                pm2 stop all
                

                then

                cd ~/MagicMirror
                npm start >somefile.txt 2>&1
                

                wait 15 seconds

                ctrl-m to minimize MM
                then ctrl-c on the terminal window you use to start MM

                then edit somefile.txt

                to look for status:
                (ctrl-w in nano)

                this is another dumb api… there is an error , but it doesn’t return it in the return code, but in the data!!!.. stupid…

                for mine it says (with a bad key)

                [06.09.2022 14:56.29.138] [LOG]   fetch result= {
                  status: 'error',
                  code: 'apiKeyInvalid',
                  message: 'Your API key is invalid or incorrect. Check your key, or go to https://newsapi.org to create a free API key.'
                }
                

                Sam

                How to add modules

                learning how to use browser developers window for css changes

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

                  @MMRIZE said in MMM-News and BBC:

                  @DarrenHill
                  Well, I also tried your config with my apiKey and it worked.

                  Try this in your browser and let’s see what happens.

                  https://newsapi.org/v2/top-headlines?sources=bbc-news&pageSize=100&apiKey=YOUR_KEY

                  It should be like something similar to this(if your apiKey is valid);

                  {"status":"ok","totalResults":10,"articles":[{"source":{"id":"bbc-news","name":"BBC News"},"author":"BBC News","title":"Vaping: Juul to pay $438.5 m in youth marketing probe","description":"US prosecutors accuse the firm of \"relentlessly\" targeting underage buyers.","url":"http://www.bbc.co.uk/news/business-62813896","urlToImage":"https://ichef.bbci.co.uk/news/1024/branded_news/1F91/production/_126618080_323275f83124ee4f8c4cbed6b71c6807fe92d57c.jpg","publishedAt":"2022-09-06T19:52:21.045172Z","content":"Juul Labs will pay $438.5m (£380m) to end a probe of its advertising to underage buyers as it rose to be one of the top e-cigarette firms in the US.\r\nThe deal with 33 states and Puerto Rico also rest… [+1826 chars]"}, …
                  
                  D 1 Reply Last reply Reply Quote 0
                  • D Offline
                    DarrenHill @MMRIZE
                    last edited by DarrenHill

                    @MMRIZE said in MMM-News and BBC:

                    https://newsapi.org/v2/top-headlines?sources=bbc-news&pageSize=100&apiKey=YOUR_KEY

                    I get this, which looks slightly different to yours? :

                    {"status":"ok","totalResults":10,"articles":[{"title":"Vaping: Juul to pay $438.5 m in youth marketing probe","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T19:52:21.045172Z","url":"http://www.bbc.co.uk/news/business-62813896"},{"title":"Eliza Fletcher: Police identify body found in search for heiress","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T16:52:18.6995928Z","url":"http://www.bbc.co.uk/news/world-us-canada-62811661"},{"title":"Ukraine war: Russians to pay €45 more to enter EU under new rules","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T16:37:23.3671715Z","url":"http://www.bbc.co.uk/news/world-europe-62811675"},{"title":"Fat Leonard: Malaysian businessman linked to US Navy scandal escapes","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T16:22:22.2671956Z","url":"http://www.bbc.co.uk/news/world-us-canada-62764226"},{"title":"Canada stabbings: Police hunt remaining suspect after Saskatchewan attacks","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T15:22:24.1190163Z","url":"http://www.bbc.co.uk/news/live/world-us-canada-62811629"},{"title":"Ukraine: Ben Stiller and Sean Penn latest Americans banned from Russia","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T12:52:14.8462267Z","url":"http://www.bbc.co.uk/news/world-europe-62806655"},{"title":"Canada stabbings: Relatives identify 'random' victims of Saskatchewan attack","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T11:07:21.1055569Z","url":"http://www.bbc.co.uk/news/world-us-canada-62804826"},{"title":"Liz Truss: Boris Johnson to give farewell speech before new PM takes office","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-06T04:37:21.3806544Z","url":"http://www.bbc.co.uk/news/live/uk-politics-62802807"},{"title":"Keith Davis: He was protecting the oceans - then he disappeared","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-05T20:52:23.0241991Z","url":"http://www.bbc.co.uk/news/world-us-canada-62603911"},{"title":"Timed Teaser: How did Putin mark Gorbachev's death?","author":"BBC News","source":{"Id":"bbc-news","Name":"BBC News"},"publishedAt":"2022-09-05T20:37:23.1798468Z","url":"http://www.bbc.co.uk/news/world-us-canada-62763889"}]}
                    

                    @sdetweil I’ll do your test now…

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

                      @DarrenHill
                      Ok, I found something. I don’t know why, but your result has “articles.source.Name” instead of “articles.source.name” that makes this error.

                      S D 2 Replies Last reply Reply Quote 0
                      • S Offline
                        sdetweil @MMRIZE
                        last edited by

                        @MMRIZE yes, was just about to post that

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • D Offline
                          DarrenHill @sdetweil
                          last edited by

                          @sdetweil I get this (for the relevant bit):

                          
                          [06.09.2022 21:11.46.552] [LOG]   fetch result= {
                            status: 'ok',
                            totalResults: 10,
                            articles: [
                              {
                                title: 'Vaping: Juul to pay $438.5 m in youth marketing probe',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T19:52:21.045172Z',
                                url: 'http://www.bbc.co.uk/news/business-62813896'
                              },
                              {
                                title: 'Eliza Fletcher: Police identify body found in search for heiress',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T16:52:18.6995928Z',
                                url: 'http://www.bbc.co.uk/news/world-us-canada-62811661'
                              },
                              {
                                title: 'Ukraine war: Russians to pay €45 more to enter EU under new rules',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T16:37:23.3671715Z',
                                url: 'http://www.bbc.co.uk/news/world-europe-62811675'
                              },
                              {
                                title: 'Fat Leonard: Malaysian businessman linked to US Navy scandal escapes',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T16:22:22.2671956Z',
                                url: 'http://www.bbc.co.uk/news/world-us-canada-62764226'
                              },
                              {
                                title: 'Canada stabbings: Police hunt remaining suspect after Saskatchewan attacks',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T15:22:24.1190163Z',
                                url: 'http://www.bbc.co.uk/news/live/world-us-canada-62811629'
                              },
                              {
                                title: 'Ukraine: Ben Stiller and Sean Penn latest Americans banned from Russia',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T12:52:14.8462267Z',
                                url: 'http://www.bbc.co.uk/news/world-europe-62806655'
                              },
                              {
                                title: "Canada stabbings: Relatives identify 'random' victims of Saskatchewan attack",
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T11:07:21.1055569Z',
                                url: 'http://www.bbc.co.uk/news/world-us-canada-62804826'
                              },
                              {
                                title: 'Liz Truss: Boris Johnson to give farewell speech before new PM takes office',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-06T04:37:21.3806544Z',
                                url: 'http://www.bbc.co.uk/news/live/uk-politics-62802807'
                              },
                              {
                                title: 'Keith Davis: He was protecting the oceans - then he disappeared',
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-05T20:52:23.0241991Z',
                                url: 'http://www.bbc.co.uk/news/world-us-canada-62603911'
                              },
                              {
                                title: "Timed Teaser: How did Putin mark Gorbachev's death?",
                                author: 'BBC News',
                                source: [Object],
                                publishedAt: '2022-09-05T20:37:23.1798468Z',
                                url: 'http://www.bbc.co.uk/news/world-us-canada-62763889'
                              }
                            ]
                          }
                          [06.09.2022 21:11.46.635] [LOG]   [NEWS] Error :  https://newsapi.org/v2/top-headlines?sources=bbc-news&pageSize=100&apiKey=<redacted> TypeError: Cannot read properties of undefined (reading 'toString')
                              at slugify (/home/pi/MagicMirror/modules/MMM-News/node_helper.js:24:17)
                              at cb (/home/pi/MagicMirror/modules/MMM-News/node_helper.js:89:33)
                              at getArticles (/home/pi/MagicMirror/modules/MMM-News/node_helper.js:136:22)
                              at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
                          
                          
                          
                          
                          S 1 Reply Last reply Reply Quote 0
                          • S Offline
                            sdetweil @DarrenHill
                            last edited by

                            @DarrenHill said in MMM-News and BBC:

                              source: [Object],
                            

                            its in there

                            Sam

                            How to add modules

                            learning how to use browser developers window for css changes

                            1 Reply Last reply Reply Quote 0
                            • D Offline
                              DarrenHill @MMRIZE
                              last edited by

                              @MMRIZE said in MMM-News and BBC:

                              @DarrenHill
                              Ok, I found something. I don’t know why, but your result has “articles.source.Name” instead of “articles.source.name” that makes this error.

                              Anything I can do to overcome that?

                              No idea why I’m getting different API returns to you guys…?

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

                                @DarrenHill @MMRIZE

                                also doesn’t get ‘content’ or ‘description’, so those will fail too…

                                Sam

                                How to add modules

                                learning how to use browser developers window for css changes

                                D 1 Reply Last reply Reply Quote 0
                                • D Offline
                                  DarrenHill @sdetweil
                                  last edited by

                                  I tried to register for a new api key, but when I tried it told me that they don’t support the UK (where I am) so I wonder if that somehow has something to do with it.

                                  This has obviously changed since I first registered, and given I’m getting some response from the API it is at least partially working, but besides that I have no idea…

                                  mumblebajM 1 Reply Last reply Reply Quote 0
                                  • mumblebajM Offline
                                    mumblebaj Module Developer @DarrenHill
                                    last edited by

                                    @DarrenHill Hi. Apologies for the late reply. I am on a different timezone than the other guys.

                                    I would suggest using MMM-NewsAPI. The same API key that you are using with MMM-News will work.

                                    Check out my modules at: https://github.com/mumblebaj?tab=repositories
                                    Check my blog-post: https://mumblebaj.xyz/
                                    Check my MM Container: https://hub.docker.com/repository/docker/mumblebaj/magicmirror/general

                                    D 1 Reply Last reply Reply Quote 0
                                    • D Offline
                                      DarrenHill @mumblebaj
                                      last edited by DarrenHill

                                      @mumblebaj - Thanks, no need to apologise.

                                      I tried the other module, and it also doesn’t show anything besides it’s “News” header title.

                                      The config I tried was:

                                              {
                                                  module: "MMM-NewsAPI",
                                                  header: "News",
                                                  position: "bottom_center",
                                                  config: {
                                                      apiKey : "<my API key>",
                                                      domains: "bbc.co.uk",
                                                      language: "en"
                                                      }
                                              },
                                      
                                      

                                      And also I tried replacing the domains: with sources: “bbc-news” and that gave the same results.

                                      There’s nothing in the logs, aside from confirming that the module is loading (as can be seen from the displayed title too).

                                      S mumblebajM 3 Replies Last reply Reply Quote 0
                                      • S Offline
                                        sdetweil @DarrenHill
                                        last edited by

                                        @DarrenHill from the doc

                                        Add DEBUG Handling.
                                        Only add debug: true to the config section if you are experiencing issues and require more information to find issues.

                                        Sam

                                        How to add modules

                                        learning how to use browser developers window for css changes

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

                                          @DarrenHill domins or sources must be inside the much more complex query section of the config

                                          see the doc

                                                              query: {
                                                                      country: "",
                                                                      category: "",
                                                                      q: "",
                                                                      qInTitle: "",
                                                                      sources: "",
                                                                      domains: "cnn.com,nytimes.com,news24.com",
                                                                      excludeDomains: "",
                                                                      language: ""
                                                              }
                                          

                                          Sam

                                          How to add modules

                                          learning how to use browser developers window for css changes

                                          1 Reply Last reply Reply Quote 0
                                          • mumblebajM Offline
                                            mumblebaj Module Developer @DarrenHill
                                            last edited by sdetweil

                                            @DarrenHill MMM-NewsAPI has a whole lot more configs. See below sample.

                                            {
                                                                    module: "MMM-NewsAPI",
                                                                    header: "news",
                                                                   //  disabled: true,
                                                                    position: "bottom_bar",
                                                                    pages: {"sport": "bottom_bar"},
                                                                    config: {
                                                                            apiKey: <api-key>,
                                                                            type: "horizontal",
                                                                            choice: "everything",
                                                                            pageSize: 20,
                                                                            sortBy: "publishedAt",
                                                                            drawInterval: 1000*30,
                                                                            templateFile: "template.html",
                                                                            fetchInterval: 1000*60*60,
                                                                            query: {
                                                                                    country: "",
                                                                                    category: "",
                                                                                    q: "",
                                                                                    qInTitle: "",
                                                                                    sources: "",
                                                                                    domains: "bbc.co.uk",
                                                                                    excludeDomains: "",
                                                                                    language: ""
                                                                                    }
                                                                            }
                                            				},

                                            Check out my modules at: https://github.com/mumblebaj?tab=repositories
                                            Check my blog-post: https://mumblebaj.xyz/
                                            Check my MM Container: https://hub.docker.com/repository/docker/mumblebaj/magicmirror/general

                                            D S 2 Replies Last reply Reply Quote 0

                                            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
                                            • 2
                                            • 1 / 2
                                            • 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