itoolkit is a Node.js interface to XMLSERVICE to access all things IBM i.
XMLSERVICE provides interfaces to interact with IBM i resources such as programs and commands. XMLSERVICE receives xml input and returns xml output.
For example run a CL command by sending the following XML input to XMLSERVICE.
<?xml version="1.0" encoding="UTF-8"?>
<myscript>
<cmdexec="rexx">RTVJOBA USRLIBL(?) SYSLIBL(?)</cmd>
</myscript>XMLSERVICE will run the command and respond with XML output.
<?xml version="1.0" encoding="UTF-8"?>
<myscript>
<cmdexec="rexx">
<success>+++ success RTVJOBA USRLIBL(?) SYSLIBL(?)</success>
<row>
<datadesc="USRLIBL">QGPL QTEMP</data>
</row>
<row>
<datadesc="SYSLIBL">QSYS QSYS2 QHLPSYS QUSRSYS</data>
</row>
</cmd>
</myscript>itoolkit can run the same CL command with:
const{ Connection, CommandCall }=require('itoolkit');const{ parseString }=require('xml2js');constconnection=newConnection({transport: 'ssh',transportOptions: {host: 'myhost',username: 'myuser',password: 'mypassword'},});constcommand=newCommandCall({type: 'cl',command: 'RTVJOBA USRLIBL(?) SYSLIBL(?)'});connection.add(command);connection.run((error,xmlOutput)=>{if(error){throwerror;}parseString(xmlOutput,(parseError,result)=>{if(parseError){throwparseError;}console.log(JSON.stringify(result));});The purpose of this package is to simplify the process of creating XMLSERVICE input, invoking XMLSERVICE, and returning XMLSERVICE output from Node.js.
$ npm install itoolkitPlease read the docs.
Refer to the README.
Please read the contribution guidelines.