お世話になっております。
外部プログラムからkintone REST APIを使って、特定なアプリにレコードを取得、登録、更新、削除は可能ですが、
kintone上アップロードされているJavaScriptロジックを呼び出す(キック)方法はありますでしょうか?
定期的にjavascript処理を走らせたいです。
お世話になっております。
外部プログラムからkintone REST APIを使って、特定なアプリにレコードを取得、登録、更新、削除は可能ですが、
kintone上アップロードされているJavaScriptロジックを呼び出す(キック)方法はありますでしょうか?
定期的にjavascript処理を走らせたいです。
chengweister様
お世話になっております。
トヨクモの江田と申します。
Node.jsのライブラリのpuppeteerとnode-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);
});