|
| 1 | + |
| 2 | +# Attendance |
| 3 | + |
| 4 | +The OpenSPP Attendance module (spp_attendance) provides a comprehensive system for managing and tracking participant attendance across various social protection programs and farmer registries. It enables organizations to accurately record who attended specific events, when, where, and for what purpose, ensuring accountability and informing program delivery. |
| 5 | + |
| 6 | +## Purpose |
| 7 | + |
| 8 | +This module streamlines the process of tracking participant engagement and presence, critical for program effectiveness and compliance. It accomplishes the following key capabilities: |
| 9 | + |
| 10 | +* **Record Participant Attendance:** Accurately logs the presence or absence of individuals at specific program events, such as training sessions, benefit distributions, or community meetings. This ensures precise data for monitoring and evaluation. |
| 11 | +* **Manage Program Participants:** Creates and maintains a registry of individuals participating in social protection programs, linking their attendance records to their core profile information. This centralizes participant data for easier management. |
| 12 | +* **Categorize Attendance Events:** Defines and categorizes different types of attendance (e.g., "Cash Transfer Distribution," "Health Education Workshop") and specific locations where these events occur. This provides granular insights into program activities. |
| 13 | +* **Integrate with External Systems:** Facilitates the secure import of participant data from external registries and allows external applications to submit or query attendance records via a robust API. This supports data synchronization across the OpenSPP ecosystem. |
| 14 | +* **Monitor Participant Engagement:** Provides tools to view an individual's attendance history and aggregated attendance data, offering valuable insights into participation patterns and program reach. This helps in assessing program impact and identifying areas for improvement. |
| 15 | + |
| 16 | +## Dependencies and Integration |
| 17 | + |
| 18 | +The spp_attendance module integrates seamlessly with other core OpenSPP components and extends foundational Odoo functionalities: |
| 19 | + |
| 20 | +* **Base (base):** As a core module, `spp_attendance` relies on the standard Odoo `base` module for fundamental system functionalities, data models, and user interface elements. |
| 21 | +* **OpenSPP API: Oauth (spp_oauth):** `spp_attendance` leverages the `spp_oauth` module to provide secure API access for external applications. This ensures that any attendance data submitted or queried by external systems is authenticated and authorized, protecting sensitive participant information. |
| 22 | +* **Partner Management (res.partner):** The module extends Odoo's core `res.partner` model to manage program participants (subscribers). Each attendance subscriber is linked to a `res.partner` record, allowing `spp_attendance` to utilize existing contact information while adding specific details relevant to program participation, such as a unique person identifier and attendance history. |
| 23 | + |
| 24 | +This module serves as a foundational component for other program-specific modules that require accurate participant attendance records for their operations, such as benefit disbursement, case management, or training program management. |
| 25 | + |
| 26 | +## Additional Functionality |
| 27 | + |
| 28 | +The `spp_attendance` module offers a range of features designed to provide flexible and robust attendance management: |
| 29 | + |
| 30 | +### Participant (Subscriber) Management |
| 31 | + |
| 32 | +Users can create and manage detailed profiles for program participants, known as subscribers. Each subscriber is uniquely identified and linked to a core OpenSPP contact, ensuring consistency. The module automatically manages the underlying contact record when a subscriber is created or updated, including details like full name, additional names, gender, email, and phone numbers. |
| 33 | + |
| 34 | +### Flexible Attendance Recording |
| 35 | + |
| 36 | +The module enables recording of attendance events with specific details. For each record, users specify the attendance date, time, and category (either "Present" or "Absent"). Additional context can be added through a description and an external URL, useful for linking to external resources or evidence of attendance. |
| 37 | + |
| 38 | +* **Configurable Uniqueness:** System administrators can configure rules to prevent duplicate attendance entries for a single participant. This includes options to ensure uniqueness based on combinations of date, time, attendance type, and location, preventing data entry errors and ensuring data integrity. |
| 39 | +* **Attendance History:** Users can quickly retrieve a comprehensive attendance history for any participant, filtering by date ranges, attendance type, or location, providing a clear overview of their engagement. |
| 40 | + |
| 41 | +### Custom Attendance Types and Locations |
| 42 | + |
| 43 | +To accommodate diverse program needs, the module allows for the definition of custom attendance types and locations. |
| 44 | + |
| 45 | +* **Attendance Types:** Organizations can define various types of attendance events (e.g., "Training Session," "Cash Distribution," "Health Screening"). Each type can have a name and description, allowing for clear classification of activities. |
| 46 | +* **Attendance Locations:** Users can establish a list of specific locations where attendance events occur (e.g., "District Office A," "Community Hall B"). This helps in geographic tracking and reporting of program activities. |
| 47 | + |
| 48 | +### External System Integration |
| 49 | + |
| 50 | +The `spp_attendance` module supports integration with external systems for both data import and API-driven attendance management. |
| 51 | + |
| 52 | +* **Secure API Access:** Organizations can generate unique Client ID and Client Secret credentials for external applications. These credentials enable secure, authenticated access to the `spp_attendance` API, allowing external systems (e.g., mobile attendance capture apps) to submit new attendance records or query existing ones. |
| 53 | +* **Registry Data Import:** A dedicated wizard facilitates the import of participant data from external registries. This feature includes configurable mapping of fields (such as personal information, identifiers, and contact details) to ensure accurate and efficient synchronization of participant records into OpenSPP. |
| 54 | + |
| 55 | +## Conclusion |
| 56 | + |
| 57 | +The OpenSPP Attendance module is essential for effectively managing and monitoring participant engagement within social protection programs, providing robust tools for recording, categorizing, and integrating attendance data across the OpenSPP platform. |
0 commit comments