MagicMirror² v2.13.0 is available! For more information about this release, check out this topic.

New to building modules. plz help



  • @Djninja926 figure out the data differences from the 1st api used to the new one, and how you have to fix the output format



  • @sdetweil I dont get what you mean



  • @Djninja926 the code u changed had some expected data format back from the service it called.
    it used that data format in the code to make the visual part of the output

    the new api (that url ) provides data in a different format.

    as an example of the type of thing I am talking about,

    1 has a spreadsheet with 4 columns, and 1 has a spreadsheet with 8 columns and none of the column names are the same.
    the code expected to find 4 columns with specific names. they aren’t there

    how do you reconcile that?

    =====> but these apis return json data not excel spreadsheets, it is just an example of the work you need to do



  • @sdetweil how do I make it JSON format



  • @sdetweil or how do I make the module take whatever format the urlApi is



  • @Djninja926 >how do I make it JSON format

    the data is already in json format (old and new) JSON is just a structure, like a spreadsheet, it doesn’t control the actual content

    how do I make the module take whatever format the urlApi is

    good luck with that… i don’t know of any software learning that would be capable of that
    old data

    {
      "userId": 1,
      "id": 1,
      "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
      "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
    }
    

    new data

    {"wus": 18, "rank": 0, "total_users": 2656615, "active_50": 1, "path": "donor/Apia_Okorafor", "wus_cert": "https://apps.foldingathome.org/awards?user=72700656&type=wus", "id": 72700656, "credit_cert": "https://apps.foldingathome.org/awards?user=72700656&type=score", "last": "2020-04-28 02:35:06", "name": "Apia_Okorafor", "teams": [{"wus": 18, "last": "2020-04-28 02:35:06", "uid": 72700656, "active_50": 1, "active_7": 1, "credit": 31157, "team": 223518, "name": "LinusTechTips_Team"}], "active_7": 1, "credit": 31157}
    

    the code only used the title field from the data, but there is no title field at all in the new data

    if (this.dataRequest) {
    			var wrapperDataRequest = document.createElement("div");
    			// check format https://jsonplaceholder.typicode.com/posts/1
    			wrapperDataRequest.innerHTML = this.dataRequest.title;
    
    			var labelDataRequest = document.createElement("label");
    			// Use translate function
    			//             this id defined in translations files
    			labelDataRequest.innerHTML = this.translate("TITLE");
    
    
    			wrapper.appendChild(labelDataRequest);
    			wrapper.appendChild(wrapperDataRequest);
    		}
    


  • @sdetweil I got it working. thank you for your help



  • @Djninja926 cool…


Log in to reply