horde / activesync
ActiveSync server library
Requires
- php: ^7.4 || ^8
- ext-ctype: *
- horde/compress: ^3 || dev-FRAMEWORK_6_0
- horde/date: ^3 || dev-FRAMEWORK_6_0
- horde/exception: ^3 || dev-FRAMEWORK_6_0
- horde/icalendar: ^3 || dev-FRAMEWORK_6_0
- horde/log: ^3 || dev-FRAMEWORK_6_0
- horde/mapi: ^2 || dev-FRAMEWORK_6_0
- horde/mime: ^3 || dev-FRAMEWORK_6_0
- horde/stream: ^2 || dev-FRAMEWORK_6_0
- horde/support: ^3 || dev-FRAMEWORK_6_0
- horde/translation: ^3 || dev-FRAMEWORK_6_0
- horde/util: ^3 || dev-FRAMEWORK_6_0
Suggests
- horde/db: ^3 || dev-FRAMEWORK_6_0
- horde/imap_client: ^3 || dev-FRAMEWORK_6_0
- horde/mail: ^3 || dev-FRAMEWORK_6_0
- horde/mongo: ^2 || dev-FRAMEWORK_6_0
- horde/test: ^3 || dev-FRAMEWORK_6_0
- horde/text_filter: ^3 || dev-FRAMEWORK_6_0
- dev-FRAMEWORK_6_0
- v3.0.0alpha4
- 3.0.0alpha2
- 3.0.0alpha1
- 2.41.9
- 2.41.8
- 2.41.7
- 2.41.6
- 2.41.5
- 2.41.4
- 2.41.3
- 2.41.2
- 2.41.1
- 2.41.0
- 2.40.2
- 2.40.1
- 2.40.0
- 2.39.9
- 2.39.8
- 2.39.7
- 2.39.6
- 2.39.5
- 2.39.4
- 2.39.3
- 2.39.2
- 2.39.1
- 2.39.0
- 2.38.8
- 2.38.7
- 2.38.6
- 2.38.5
- 2.38.4
- 2.38.3
- 2.38.2
- 2.38.1
- 2.38.0
- 2.37.4
- 2.37.3
- 2.37.2
- 2.37.1
- 2.37.0
- 2.36.0
- 2.35.0
- 2.34.10
- 2.34.9
- 2.34.8
- 2.34.7
- 2.34.6
- 2.34.5
- 2.34.4
- 2.34.3
- 2.34.2
- 2.34.1
- 2.34.0
- 2.33.3
- 2.33.2
- 2.33.1
- 2.33.0
- 2.32.0
- 2.31.10
- 2.31.9
- 2.31.8
- 2.31.7
- 2.31.6
- 2.31.5
- 2.31.4
- 2.31.3
- 2.31.2
- 2.31.1
- 2.31.0
- 2.30.6
- 2.30.5
- 2.30.4
- 2.30.3
- 2.30.2
- 2.30.1
- 2.30.0
- 2.29.2
- 2.29.1
- 2.29.0
- 2.28.6
- 2.28.5
- 2.28.4
- 2.28.3
- 2.28.2
- 2.28.1
- 2.28.0
- 2.27.1
- 2.27.0
- 2.26.1
- 2.26.0
- 2.25.0
- 2.24.1
- 2.24.0
- 2.23.1
- 2.23.0
- 2.22.0
- 2.21.0
- 2.20.5
- 2.20.4
- 2.20.3
- 2.20.2
- 2.20.1
- 2.20.0
- 2.19.4
- 2.19.3
- 2.19.2
- 2.19.1
- 2.19.0
- 2.18.1
- 2.18.0
- 2.17.0
- 2.16.11
- 2.16.10
- 2.16.9
- 2.16.8
- 2.16.7
- 2.16.6
- 2.16.5
- 2.16.4
- 2.16.3
- 2.16.2
- 2.16.1
- 2.16.0
- 2.15.1
- 2.15.0
- 2.13.1
- 2.12.4
- 2.12.3
- 2.12.2
- 2.9.3
- 2.9.2
- 2.8.5
- dev-FRAMEWORK_5_2
- dev-TDannhauer-handle_IDNA-errors-for_reply-to
- dev-master
- dev-opaque_test
This package is auto-updated.
Last update: 2025-04-19 11:02:28 UTC
README
AI generated on 2025 april 19th
Overview
Horde ActiveSync is a robust implementation of the Microsoft Exchange ActiveSync (EAS) protocol, designed to provide synchronization capabilities between mobile devices and email servers. This implementation supports various EAS protocol versions and provides a flexible framework for integrating with different backend systems.
System Architecture
Core Components
-
ActiveSync Server (
Horde_ActiveSync
)- Main entry point for all ActiveSync operations
- Handles protocol version negotiation
- Manages device authentication and state
- Coordinates between different components
-
Protocol Handlers
- Supports multiple EAS protocol versions (2.5, 12.0, 12.1, 14.0, 14.1, 16.0)
- Handles protocol-specific features and requirements
- Manages version-specific headers and responses
-
State Management
- Device state persistence
- Sync state tracking
- Policy enforcement
- Device provisioning
-
Data Synchronization
- Folder hierarchy management
- Item synchronization
- Conflict resolution
- Change tracking
Key Features
-
Multi-Protocol Support
- Supports EAS versions 2.5 through 16.0
- Automatic version negotiation
- Backward compatibility
-
Security
- Device authentication
- Policy enforcement
- Remote wipe capabilities
- Certificate validation
-
Data Synchronization
- Email synchronization
- Calendar synchronization
- Contact synchronization
- Task synchronization
- Notes synchronization
-
Device Management
- Device provisioning
- Policy enforcement
- Device state tracking
- Remote wipe capabilities
Protocol Support
Supported Commands
- Sync
- SendMail
- SmartForward
- SmartReply
- GetAttachment
- GetHierarchy
- CreateCollection
- DeleteCollection
- MoveCollection
- FolderSync
- FolderCreate
- FolderDelete
- FolderUpdate
- MoveItems
- GetItemEstimate
- MeetingResponse
- Search
- Settings
- Ping
- ItemOperations
- Provision
- ResolveRecipients
- ValidateCert
Supported Data Types
- Contacts
- Calendar
- Tasks
- Notes
- SMS
Integration Points
-
Backend Driver
- Abstract interface for backend integration
- Customizable authentication
- Data access layer
-
State Storage
- Device state persistence
- Sync state management
- Policy storage
-
Logging
- Flexible logging system
- Debug capabilities
- Error tracking
Security Features
-
Authentication
- User authentication
- Device authentication
- Domain support
-
Policy Enforcement
- Device policies
- Security policies
- Remote wipe capabilities
-
Data Protection
- Secure communication
- Certificate validation
- Data encryption
Technical Details
Protocol Versions
- 2.5 (6.5.7638.1)
- 12.0
- 12.1
- 14.0
- 14.1
- 16.0
Data Formats
- WBXML encoding/decoding
- Multipart support
- MIME handling
- Truncation support
Performance Considerations
- Memory usage optimization
- Data truncation options
- Batch processing
- State caching
Integration Guide
Backend Integration
- Implement
Horde_ActiveSync_Driver_Base
- Configure authentication
- Implement data access methods
- Set up state storage
Configuration
- Set up logging
- Configure protocol versions
- Set security policies
- Configure device management
Best Practices
-
Security
- Implement proper authentication
- Enforce device policies
- Monitor device access
-
Performance
- Optimize data access
- Implement proper caching
- Monitor resource usage
-
Maintenance
- Regular state cleanup
- Monitor device connections
- Update security policies
Dependencies
- PHP 7.0 or higher
- Horde Framework
- WBXML support
- SSL/TLS support
License
This software is licensed under the GPLv2 license. See the LICENSE file for details.