--- title: "Job Functionのコーディング" url: https://docs.catalyst.zoho.com/ja/tutorials/birthday-greetings/nodejs/code-job-func/ description: "Job Schedulingサービスを使用して誕生日グリーティングアプリケーションを構築し、指定した相手にメールで自動的に誕生日の挨拶を送信します。" last_updated: 2026-02-23T12:39:41Z service: All Services type: tutorial related_links: - name: "Job Functions" url: /ja/serverless/help/functions/job-functions/ - name: "Job Scheduling SDK" url: /ja/sdk/nodejs/v2/job-scheduling/overview/ - name: "Job Scheduling API" url: /ja/api/code-reference/job-scheduling/jobpool/get-all-jobpool/#GetAllJobPools --- # Job Functionのコーディング 次に、Function Job PoolからFunction Jobが実行される際にトリガーされるJob Functionをコーディングします。このファンクションは、指定した相手にメールで誕生日グリーティングを送信するために使用されます。このファンクションは[Mail SDK](https://docs.catalyst.zoho.com/ja/sdk/nodejs/v2/cloud-scale/mail/send-email/)を使用します。 [ファンクション](https://docs.catalyst.zoho.com/ja/cli/v1/project-directory-structure/functions-directory/)ディレクトリ内のJob Function `BirthdayGreetings/functions/dynamic_cron/`には以下が含まれます: * `index.js`メインファンクションファイル * `catalyst-config.json`設定ファイル * Nodeモジュール * [`package.json`](https://docs.npmjs.com/files/package.json)および[`package-lock.json`](https://docs.npmjs.com/configuring-npm/package-lock-json.html)依存関係ファイル。 `index.js`ファイルにコードを追加します。 以下のコードをコピーして`index.js`ファイルに貼り付けてください。 > **Note:** このセクションのコードを十分に理解するために、必ず目を通してください。 **index.js** ```javascript 'use strict'; const catalyst = require('zcatalyst-sdk-node'); module.exports = async (jobRequest, context) => { const catalystApp = catalyst.initialize(context); try { console.log("Jobs", jobRequest.getAllJobParams()); const { id, name, email, message, birthday } = jobRequest.getAllJobParams(); await catalystApp.email().sendMail({ from_email: 'emmy@zylker.com', // 送信者のメールアドレスを追加 to_email: [email], html_mode: true, subject: `Birthday Wishes for ${name}`, content: `Hello ${name}, ${message}`, }); console.log(`Email sent successfully to ${email}`); context.closeWithSuccess('Email sent successfully.'); } catch (error) { console.error('Error:', error); context.closeWithFailure('Failed to send email.'); } }; ``` > **Note:** `15`行目に、Mailコンポーネントで設定した送信者メールアドレスを追加してください。 アプリケーションに必要なすべてのファンクションの設定が完了しました。