JavaScriptロジックを定期(自動)的にキックする方法

お世話になっております。

外部プログラムからkintone REST APIを使って、特定なアプリにレコードを取得、登録、更新、削除は可能ですが、

kintone上アップロードされているJavaScriptロジックを呼び出す(キック)方法はありますでしょうか?

定期的にjavascript処理を走らせたいです。

 

chengweister様

お世話になっております。
トヨクモの江田と申します。

Node.jsのライブラリのpuppeteernode-cronを用いて、定期的にkintoneにアクセスさせるのはいかがでしょうか?

const puppeteer = require('puppeteer');
const cron = require('node-cron');
cron.schedule('*/10 * * * * *', async () => { //10秒ごとに実行
  const url = 'https:// ****.cybozu.com/k/**** /show#record= ****'; //アクセスしたいページのURL
  const basicUser = ' ****'; //Basic認証のユーザー名(設定している場合のみ)
  const basicPassword = ' ****'; //Basic認証のパスワード(設定している場合のみ)
  const user = ' ****'; //kintoneのユーザー名
  const password = ' ****'; //kintoneのパスワード
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.setExtraHTTPHeaders({ //Basic認証を設定している場合のみ
    Authorization: `Basic ${new Buffer.from(`${basicUser}:${basicPassword}`).toString('base64')}`
  });
  await page.goto(url);
  await page.type('input[name="username"]', user);
  await page.type('input[name="password"]', password);
  await page.evaluate(({ }) => {
    document.getElementsByClassName('login-button')[0].click();
  }, {});
  await page.waitForNavigation({ waitUntil: "domcontentloaded" });
  await browser.close();
  console.log(new Date);
});