const CORE_ENDPOINT = '/terminals'; const commandError = require('./error'); const coreapi = require('../coreapi'); function help(keyword) { return ` Untuk list terminal anda, ketik perintah dengan format: ${ keyword.toUpperCase() }.<PIN> atau ${ keyword.toUpperCase() }.#<IDDOWNLINE>.<PIN> atau ${ keyword.toUpperCase() }.<TERMINALDOWNLINE>.<PIN> `.trim(); } function execute(tokens, params, cb) { if (!tokens || tokens.length < 2) { const responseParams = { body: ` ${ commandError.ERR_INVALID_FORMAT }: ${params.msg} ${ help(tokens[0]) } `.trim(), } cb(null, null, responseParams); return; } const idxDownline = (tokens.length <= 2) ? null : 1; const idxPin = (tokens.length <= 2) ? 1 : 2; let downline; let downlineStoreId; let downlineTerminalName; if (idxDownline) { downline = tokens[idxDownline]; if (downline.indexOf('#') === 0) { downlineStoreId = downline.replace(/^#/, ''); } else { downlineTerminalName = downline; } } const coreParams = { asker_terminal_name: params.from, asker_terminal_password: tokens[ idxPin ], store_id: downlineStoreId, terminal_name: downlineTerminalName, }; coreapi(CORE_ENDPOINT, coreParams, 'GET', cb); } module.exports = execute;