--- title: "Codificar la Job Function" url: https://docs.catalyst.zoho.com/es/tutorials/birthday-greetings/nodejs/code-job-func/ description: "Construye una aplicación de saludos de cumpleaños usando el servicio Job Scheduling y envía automáticamente saludos de cumpleaños a la persona requerida a través de su correo electrónico." last_updated: 2026-03-20T16:21:56Z service: All Services type: tutorial related_links: - name: "Job Functions" url: /es/serverless/help/functions/job-functions/ - name: "Job Scheduling SDK" url: /es/sdk/nodejs/v2/job-scheduling/overview/ - name: "Job Scheduling API" url: /es/api/code-reference/job-scheduling/jobpool/get-all-jobpool/#GetAllJobPools --- # Codificar la Job Function Ahora codifiquemos la job function que se activará cuando un Function Job se ejecute desde el Function Job Pool. Esta función se usará para enviar el saludo de cumpleaños a la persona requerida a través de su correo electrónico. Esta función empleará el [Mail SDK](https://docs.catalyst.zoho.com/es/sdk/nodejs/v2/cloud-scale/mail/send-email/). La job function presente en el directorio de [funciones](https://docs.catalyst.zoho.com/es/cli/v1/project-directory-structure/functions-directory/), `BirthdayGreetings/functions/dynamic_cron/` contiene: * El archivo principal de la función `index.js` * El archivo de configuración `catalyst-config.json` * Módulos de Node * Archivos de dependencias [`package.json`](https://docs.npmjs.com/files/package.json) y [`package-lock.json`](https://docs.npmjs.com/configuring-npm/package-lock-json.html). Agregarás código en el archivo `index.js`. Copia el código dado a continuación y pégalo en el archivo `index.js`. > **Nota:** Por favor revisa el código en esta sección para asegurarte de que lo comprendes completamente. **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', // Agrega la dirección de correo del remitente 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.'); } }; ``` > **Nota:** Asegúrate de agregar la dirección de correo del remitente que configuraste usando el componente Mail en la línea `15`. Todas las funciones requeridas han sido configuradas para tu aplicación.