MediaWiki API result

This is the HTML representation of the JSON format. HTML is good for debugging, but is unsuitable for application use.

Specify the format parameter to change the output format. To see the non-HTML representation of the JSON format, set format=json.

See the complete documentation, or the API help for more information.

{
    "batchcomplete": "",
    "warnings": {
        "main": {
            "*": "Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."
        },
        "revisions": {
            "*": "Because \"rvslots\" was not specified, a legacy format has been used for the output. This format is deprecated, and in the future the new format will always be used."
        }
    },
    "query": {
        "pages": {
            "1312": {
                "pageid": 1312,
                "ns": 0,
                "title": "TASMOTA",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "IOT4SH01 Device template:\n\n{\"NAME\":\"IOT4SH01DS\",\"GPIO\":[255,255,255,255,255,255,255,255,255,4,255,255,255],\"FLAG\":15,\"BASE\":18}"
                    }
                ]
            },
            "1289": {
                "pageid": 1289,
                "ns": 0,
                "title": "Using with NeoGPS and Arduino",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "\n<source lang=c++>\n#include <NMEAGPS.h>\n\n#define MAPLESERIAL\n\n#define DEBUG_PORT Serial\n#define PLATFORM \"DUE\" \nHardwareSerial &GPSport = Serial2; \n#define USING_GPS_PORT \"Serial2\"                             \n\n\nstatic NMEAGPS   gps;  \n\n//----------------------------------------------------------------\n\nstatic void printL( Print & outs, int32_t degE7 );\nstatic void printL( Print & outs, int32_t degE7 )\n{\n  // Extract and print negative sign\n  if (degE7 < 0) {\n    degE7 = -degE7;\n    outs.print( '-' );\n  }\n\n  // Whole degrees\n  int32_t deg = degE7 / 10000000L;\n  outs.print( deg );\n  outs.print( '.' );\n\n  // Get fractional degrees\n  degE7 -= deg*10000000L;\n\n  // Print leading zeroes, if needed\n  int32_t factor = 1000000L;\n  while ((degE7 < factor) && (factor > 1L)){\n    outs.print( '0' );\n    factor /= 10L;\n  }\n  \n  // Print fractional degrees\n  outs.print( degE7 );\n}\n\nstatic void doSomeWork();\n\nstatic void doSomeWork( const gps_fix & fix )\n{\n  //  This is the best place to do your time-consuming work, right after\n  //     the RMC sentence was received.  If you do anything in \"loop()\",\n  //     you could cause GPS characters to be lost, and you will not\n  //     get a good lat/lon.\n  //  For this example, we just print the lat/lon.  If you print too much,\n  //     this routine will not get back to \"loop()\" in time to process\n  //     the next set of GPS data.\n\n  if (fix.valid.location) {\n\n    if ( fix.dateTime.seconds < 10 )\n      DEBUG_PORT.print( '0' );\n    DEBUG_PORT.print( fix.dateTime.seconds );\n    DEBUG_PORT.print( ',' );\n\n    // DEBUG_PORT.print( fix.latitude(), 6 ); // floating-point display\n    // DEBUG_PORT.print( fix.latitudeL() ); // integer display\n    printL( DEBUG_PORT, fix.latitudeL() ); // prints int like a float\n    DEBUG_PORT.print( ',' );\n    // DEBUG_PORT.print( fix.longitude(), 6 ); // floating-point display\n    // DEBUG_PORT.print( fix.longitudeL() );  // integer display\n    printL( DEBUG_PORT, fix.longitudeL() ); // prints int like a float\n\n    DEBUG_PORT.print( ',' );\n    if (fix.valid.satellites){\n      DEBUG_PORT.print(\"Satellites:\"); \n      DEBUG_PORT.print( fix.satellites );\n    }\n\n    DEBUG_PORT.print( ',' );\n    \n    DEBUG_PORT.print( fix.speed(), 6 );\n    DEBUG_PORT.print( F(\" kn = \") );\n    DEBUG_PORT.print( fix.speed_kph(), 6 );\n    DEBUG_PORT.print( F(\" kph\") );\n\n  } else {\n    // No valid location data yet!\n    DEBUG_PORT.print( '?' );\n  }\n\n  DEBUG_PORT.println();\n\n} // doSomeWork\n\nstatic void GPSloop();\nstatic void GPSloop()\n{\n  while (gps.available( GPSport ))\n    doSomeWork( gps.read() );\n\n} // GPSloop\n\nvoid setup() {\n  // put your setup code here, to run once:\nSerial.begin(115200);\nGPSport.begin(9600);  \ndelay(1000);\n}\n\nvoid loop() {\n  GPSloop();\n}\n\n</source>"
                    }
                ]
            }
        }
    }
}