new version added 1.2
- fix parse mag(*) + m3u
- removed unnecessary superfluous code
- correct assembly of devices
- Fixed adding results to the queue
![]()
new version added 1.2
![]()
Added a color-coded logger for INFO, DEBUG, ERROR, etc.
Prevented crashes on malformed or empty files.
Verified file content contains http before including.
Corrected detection of real mount points on Enigma2 (mountpoint, device, fstype, etc.).
Improved filter for tv_to_m3u:
Displays only folders and .tv files that actually contain http.
Skips incorrectly structured entries.
Added safety checks for invalid or unexpected selection formats.
Detailed logging on errors.
v.1.6 added update
please send me pm with your line for test.. if you want..
Give me the necessary for tsplayer
And that ssl library if possible
this plugin was really a challenge, i was working on it for a month.. i can't do much.
Change lists.. i don't know how to please you.. tell me if it works on barryhallen.. the rest is history.
![]()
The plugin is successfully updated ( Plugin Browser > Update plugins)
I don't know who made these changes, but something is wrong with the display of e2iplayer on my TV. I'm looking for an explanation and a fix.In the previous version from 25.05 everything was fine(all in 'center'). The resolution of the skin is Standard HD, Openatv 7.6. Thanks.
i fixed double link ;)
2025-06-10 01:53:09 [DEBUG] selectMainVideoLinks
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #1| |https://supervideo.cc/embed-yi8kpp8jtpcz.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #1| |https://dropload.io/embed-7sx59r6gagk8.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #2| |https://supervideo.cc/embed-foslmfioopfy.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #2| |https://dropload.io/embed-zwjuuz1brnpf.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #3| |https://supervideo.cc/embed-q3iahut48tq7.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #3| |https://dropload.io/embed-dz9ytmm4vn12.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #4| |https://supervideo.cc/embed-tg7p3uzxfw2j.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #4| |https://dropload.io/embed-pwjbob2po7ss.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #5| |https://supervideo.cc/embed-v55d1jscinj5.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #5| |https://dropload.io/embed-18dew01by137.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #6| |https://supervideo.cc/embed-idr4d1z0ayx6.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #6| |https://dropload.io/embed-ojq9t3dg9puh.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #7| |https://supervideo.cc/embed-3wqfsyphk7tc.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #7| |https://dropload.io/embed-vlx5e4omgvrg.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #8| |https://supervideo.cc/embed-whe9wwqob0au.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #8| |https://dropload.io/embed-7ypklsdq5goj.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |supervideo.cc #9| |https://supervideo.cc/embed-u19davn1jvgp.html|
2025-06-10 01:53:09 [DEBUG] selectLinkForCurrVideo: |dropload.io #9| |https://dropload.io/embed-9wkt4gkok22a.html|
Display MoreDisplay MoreDisplay MoreDisplay MoreDisplay MoreDisplay MoreFix YouTube 24.05.2025
youtube.py copy after:
/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/libs/[youtube_dl]/extractor/youtube.py
How to make this yt fix work with mohamed_os version please.. thanks in advance
why still mohammed_OS version or zadmario version instead of the working oe-mirrors version?
So what is the advantage of still using the others in oe-m version everything should work by now
Oe-mirrors versionI would be great if only some Italian hosts worked
if you have other working italian hosts we can add them to the oe-mirrors version
altadefinizione1 on mohammed version work very fine,in oe.mirrors version don't work
please attach version worked
You have what you asked for, But there are files that must be available in the images , so that it can be used well with you
send files to :
libgstifdsrc.so
Other files to
Restart Gui
1_0_19_4334_300C_13E_822ADB_0_0_0_20250528205105.jpg screenshot_20250528204927.jpg
have you libssl.so.3
i put here iptvtools with logger on video and save file log in to /tmp ;)
my english is terrible and google translates its own shit :)
but do you prefer the old graphics as far as I understand, or did I translate wrong?
For testing you can try the old graphics on my git. In atv there is a double class of graphics. I don't think it's bad but if you suggest it could always be improved my friend.
try on ba..
feedback please
3.0 online .. major fix ;)
inside the folder there is the language file .pot
just translate it post it and next time I will insert it in the update.
Then the nice thing is that now if you scroll the days with the arrow keys <> at least you can see them and with ok you can insert what you want and save the file.. Before not.
then with the up and down keys you can scroll the months. you can also modify what you wrote, in truth I don't know what to add or what to insert in the labels, birthday - date - description.. I have no idea but every suggestion is worth a lot. at least a beer :9 ahahah
this E-Channelizer [Official Update] - Enigma2 Tools - Linux Satellite Support Community ??
just tag the author he will read and find a solution for you :)
On base Calender from @Sirius0103
# Calendar Planner for Enigma2
A comprehensive calendar plugin for Enigma2-based receivers with event management, holiday import system, notifications, audio alerts, **ICS import support**, and contact management.
## ✨ Features
### Core Calendar Features
- **Monthly Calendar Display**: Visual calendar with color-coded days (weekends, today, events, holidays)
- **Date Information**: Load and display date-specific data from structured text files
- **Data Management**: Edit multiple fields via virtual keyboard with intuitive field navigation
- **File Operations**: Create, edit, remove, or delete date data files with custom naming (YYYYMMDD.txt)
- **Multi-language Support**: Data organized by language folders for localization
- **Smooth navigation**: with keyboard shortcuts
### Event Management System
- **Smart Event Notifications**: Get notified before events start (configurable from 0 to 60 minutes before)
- **Recurring Events**: Support for daily, weekly, monthly, and yearly recurring events
- **Visual Indicators**: Days with events are highlighted in different colors on the calendar
- **Event Browser**: View all events for a specific date or upcoming events (7-day view)
- **Event Settings**: Configurable notification duration, colors, and display options
- **Automatic Monitoring**: Background event checking every 30 seconds
- **Past Event Cleanup**: Automatic skipping of old non-recurring events to improve performance
- **Intelligent Event Time Conversion**: Auto-converts existing events when default time changes
- **Universal Navigation**: CH+/CH- wrap-around navigation in all event screens
### vCard Contact Management System
- **vCard Import/Export**: Import thousands of contacts from .vcf files with progress tracking
- **Contact Management**: Full contact database with birthday tracking and age calculation
- **Contact Browser**: Browse, search, and sort contacts by name, birthday, or category
- **Contact sorting**: (name, birthday, category)
- **Birthday Tracking**: Automatically track birthdays and show on calendar
- **Duplicate Detection**: Smart detection during import to avoid duplicate contacts
- **Multi-threaded Import**: Import large vCard files without GUI freeze
- **Contact Sorting**: Sort contacts by name, birthday, or category
- **Search Function**: Search contacts by name, phone, email, notes
- **Database Format**: Stores contacts in vCard-like format for compatibility
- **Database format converter**: (Legacy ↔ vCard)
- **Duplicate detection**: during import
- **vCard export**: to `/tmp/calendar.vcf`
- **Universal Navigation**: CH+/CH- wrap-around navigation in contact screens
### ICS Calendar Import System
- **ICS Event Management**: Browse, edit, delete imported events from .ics files
- **ICS Events Browser**: Similar to contacts browser with CH+/CH- navigation
- **ICS Event Editor**: Full-screen dialog like contact editor
- **ICS File Archive**: Store imported .ics files in `/base/ics` directory
- **Duplicate Detection**: Smart cache for fast duplicate checking of imported events
- **Enhanced Search**: Search in events titles, descriptions, dates
- **Universal Navigation**: CH+/CH- wrap-around navigation in ICS screens
### Holiday Import & Management System
- **Automatic Coloring**: Holiday days are automatically colored on the calendar
- **Country Support**: Italy, Germany, France, UK, USA, Spain, and many more
- **International Holiday Database**: Import holidays from Holidata.net for 30+ countries
- **Language Support**: Localized holiday names for each country
- **Smart Cache**: Fast loading with month-based caching system
- **Today's Holidays**: View holidays for the current day
- **Upcoming Holidays**: Display holidays for the next 30 days
- **Visual Indicators**: "H" marker shown on holiday days (configurable)
### Audio Notification System
- **Built-in Sound Alerts**: Three distinct sound types for different priorities
- **Priority-based Selection**:
- **Alert Sound**: For events currently in progress (`notify_before=0`)
- **Notify Sound**: For imminent events (≤5 minutes before)
- **Short Beep**: For regular notifications
- **Dual Format Support**: Plays both WAV and MP3 audio files
- **Auto-stop Feature**: Automatic audio cleanup after playback completion
- **Service Restoration**: Intelligently restores previous TV/radio service after audio playback
- **Configurable Sound**: Choose sound type or disable audio completely in settings
### Universal Navigation System
- **Wrap-around Navigation**: CH+/CH- navigation works in ALL screens (EventsView, EventDialog, ContactsView, ICSEventsView, ICSEventDialog, BirthdayDialog)
- **Real-time Position Display**: Shows current position like "Edit Event (3/15)" or "Contacts: 5/20"
- **Jump to Today**: BLUE button jumps to today's event from anywhere in the system
- **Return to Start**: MENU button returns to the start position where navigation began
- **Auto-save Navigation**: Changes automatically saved when navigating with CH+/CH-
- **Page Navigation**: PAGE UP/DOWN to skip 5 items at a time in long lists
- **Search Function**: TEXT button opens search dialog in all views
- **Sorting Options**: BLUE button changes sorting (dates/title/category) where applicable
- **Navigation Through Entire Database**: Not just today's events, but the ENTIRE event database
## 🎮 Key Controls
### Main Calendar
- **OK**: Main menu (Events/Holidays/Contacts/Import/Export/Converter)
- **RED**: Previous month
- **GREEN**: Next month
- **YELLOW**: Previous day
- **BLUE**: Next day
- **0**: Event management
- **LEFT/RIGHT**: Previous/Next day
- **UP/DOWN**: Previous/Next month
- **MENU**: Configuration
- **INFO/EPG**: About dialog
### Universal Navigation Controls
- **CH+**: Next item (wrap-around)
- **CH-**: Previous item (wrap-around)
- **UP/DOWN**: Standard navigation (wrap-around)
- **PAGE UP/DOWN**: Jump 5 items
- **BLUE**: Jump to TODAY'S item
- **MENU**: Return to START position
- **TEXT**: Open search dialog
- **OK**: Edit selected item
- **GREEN**: Save and close
- **RED**: Cancel
- **YELLOW**: Delete (when editing)
### Event Dialog
- **OK**: Edit current field
- **RED**: Cancel
- **GREEN**: Save event
- **YELLOW**: Delete event (edit mode only)
- **UP/DOWN**: Navigate between fields
- **LEFT/RIGHT**: Change selection options
### Events View
- **OK**: Edit selected event
- **RED**: Add new event
- **GREEN**: Edit selected event
- **YELLOW**: Delete selected event
- **BLUE**: Back to calendar
- **UP/DOWN**: Navigate event list
### ICS Browser Specific
- **OK**: Edit selected event
- **RED**: Add new event
- **GREEN**: Edit event
- **YELLOW**: Delete event (single/all)
- **BLUE**: Change sorting (date/title/category)
- **CH+**: Next event
- **CH-**: Previous event
- **TEXT**: Search events
### Contacts View
- **OK**: Edit selected contact
- **RED**: Add new contact
- **GREEN**: Edit selected contact
- **YELLOW**: Delete selected contact
- **BLUE**: Toggle sort mode (Name/Birthday/Category)
- **UP/DOWN**: Navigate contact list
### vCard Import/Export
- **OK**: Select file
- **RED**: Cancel / Close
- **GREEN**: Import selected file / Start export
- **YELLOW**: View file info (size, contacts)
- **BLUE**: Refresh file list / Toggle sort
### Database Converter
- **OK**: Show statistics
- **RED**: Cancel
- **GREEN**: Convert to vCard format
- **BLUE**: Convert to legacy format
### Birthday Dialog (Contact Editor)
- **OK**: Edit current highlighted field
- **RED**: Cancel
- **GREEN**: Save contact
- **YELLOW**: Next field
- **BLUE**: Delete contact / Clear all fields
- **UP/DOWN**: Navigate between fields
- **Field Highlighting**: Current field highlighted with color background
## 📦 Installation
1. Instalaltion Mode: Telnet/Wget:
wget -q --no-check-certificate https://raw.githubusercontent.com/Belfagor2005/Calendar/main/installer.sh -O - | /bin/bash
2. Ensure all required files are present:
- `plugin.py` - Main plugin file
- `event_manager.py` - Event management core
- `event_dialog.py` - Event add/edit interface
- `events_view.py` - Events browser
- `notification_system.py` - Notification display system
- `holidays.py` - Holiday import and management
- `vcard_importer.py` - vCard import system
- `birthday_manager.py` - Contact management
- `contacts_view.py` - Contacts browser
- `birthday_dialog.py` - Contact add/edit dialog
- `database_converter.py` - Database format converter
- `sounds/` - Audio files directory
- `buttons/` - Button images directory
- `base/` - Data storage directory structure
- `base/contacts/` - Contact storage directory
3. Audio files setup (optional but recommended):
- Place `alert.wav`, `notify.wav`, `beep.wav` in `sounds/` directory
- Or use MP3 versions: `alert.mp3`, `notify.mp3`, `beep.mp3`
- Files are included in the repository
4. Restart your receiver or reload plugins
5. Access the plugin from the Extensions menu
## 🚀 Usage
### Basic Calendar Navigation
- Open the plugin from the menu
- Use arrow keys to navigate between months and days
- Press **OK** to open the main menu with options:
- **New Date**: Create or add a new date entry
- **Edit Date**: Edit existing date data fields
- **Remove Date**: Clear data from the selected date's file
- **Delete File**: Delete the file associated with the selected date
- **Manage Events**: Access event management
- **Add Event**: Create a new event for selected date
- **Import Holidays**: Import holidays from Holidata.net
- **Show Today's Holidays**: Display holidays for current day
- **Show Upcoming Holidays**: View holidays for next 30 days
- **Manage Contacts**: Access contact management
- **Import vCard**: Import contacts from vCard files
- **Database Converter**: Convert between contact database formats
- **Cleanup Past Events**: Remove old non-recurring events
- **Exit**: Close the plugin
### Universal Navigation System
- **CH+/CH-**: Navigate through items in any screen (wrap-around)
- **BLUE**: Jump directly to today's event from anywhere
- **MENU**: Return to the starting position where you began navigation
- **PAGE UP/DOWN**: Skip 5 items at a time in long lists
- **TEXT**: Open search dialog to find specific items
- **Real-time Position**: Always see your current position (e.g., "Event 3/15")
### Event Management
- Press **0** (zero key) from main calendar to access event management
- **Add Event**: Create new events with date, time, and notification settings
- **Edit Event**: Modify existing events
- **Delete Event**: Remove unwanted events
- **Event Types**:
- One-time events (no repeat)
- Daily recurring events
- Weekly recurring events (same weekday)
- Monthly recurring events (same day of month)
- Yearly recurring events (same date annually)
- **Navigation**: Use CH+/CH- to navigate through all events in the database
### Contact Management
- **Contacts Menu**: Access from main menu to manage contacts
- **Add Contact**: Manually add new contacts with birthdays
- **Edit Contact**: Modify existing contact information
- **Delete Contact**: Remove unwanted contacts
- **Sort Contacts**: Sort by name, birthday, or category
- **Search Contacts**: Search by name, phone, email, notes
- **Birthday Tracking**: Contacts with birthdays automatically shown on calendar
- **vCard Import**: Import thousands of contacts from .vcf files
- **Navigation**: Use CH+/CH- to navigate through all contacts
### ICS Event Management
- **Import ICS**: Import events from Google Calendar .ics files
- **Browse ICS Files**: View imported ICS files in archive
- **Edit ICS Events**: Modify individual ICS events
- **Delete Events**: Remove single or all ICS events
- **Search**: Search events by title, description, date
- **Filter**: Filter events by category/labels
- **Navigation**: Use CH+/CH- to navigate through all ICS events
### Event Time Conversion System
- **Automatic Conversion**: When you change the default event time in settings, existing events are automatically converted
- **Time Tracking**: System tracks the last configured default time
- **Smart Conversion**: Converts events from both old fixed default (14:00) and last configured time
- **Calendar Refresh**: Calendar automatically repaints with converted event times
### vCard Import Process
1. Select **Import vCard** from main menu
2. Navigate to your .vcf or .vcard file
3. View file information (size, contact count)
4. Start import with progress tracking
5. Duplicate contacts are automatically skipped
6. Contacts are automatically sorted by name
### Holiday Management
- **Import Holidays**: Select a country to import holidays for current year
- **Import All**: Import holidays for all available countries at once
- **Today's View**: See all holidays happening today
- **Upcoming View**: Preview holidays for the next month
- **Automatic Integration**: Holidays are saved to existing date files
- **Color Coding**: Holiday days are automatically colored on calendar
### Database Format Converter
- **Convert to vCard**: Convert legacy contact format to standard vCard
- **Convert to Legacy**: Convert vCard format back to legacy format
- **Automatic Backup**: Creates backup before conversion
- **Progress Tracking**: Shows conversion progress
- **Data Preservation**: All contact data preserved during conversion
### Audio Notifications
- **Automatic Playback**: Sounds play automatically when events trigger
- **Visual Overlay**: 5-second visual notification appears simultaneously
- **Priority Handling**: Different sounds based on event urgency
- **Non-intrusive**: Auto-stops after playback, restores previous service
## 📁 File Structure
★ Calendar/
├── plugin.py # Main plugin entry point
├── config_manager.py # Setup plugin Options
├── event_manager.py # Event management core
├── event_dialog.py # Event add/edit interface
├── events_view.py # Events browser
├── notification_system.py # Notification display system
├── holidays.py # Holiday import and management
├── vcard_importer.py # vCard import system
├── vcf_importer.py # vCard file importer
├── birthday_manager.py # Contact management core
├── contacts_view.py # Contacts browser
├── birthday_dialog.py # Contact add/edit dialog
├── formatters.py # Plugin utils
├── ics_browser.py # Browser ICS Files
├── ics_events_view.py # ICS Events browser
├── ics_event_dialog.py # ICS Event editor
├── ics_importer.py # ICS import system
├── ics_manager.py # ICS management core
├── database_converter.py # Database format converter
├── duplicate_checker.py # Wrapper for check duplicate format converter
├── update_manager.py # Update management
├── updater.py # Plugin updater
├── sounds/ # Audio notification files
│ ├── beep.wav # Short beep (low priority)
│ ├── beep.mp3 # MP3 version
│ ├── notify.wav # Normal notification tone
│ ├── notify.mp3 # MP3 version
│ ├── alert.wav # Alert sound (high priority)
│ └── alert.mp3 # MP3 version
├── buttons/ # UI button images
├── base/ # Data storage & events.json
│ ├── events.json # Event database (JSON format)
│ ├── contacts/ # Contact storage
│ ├── holidays/ # holidays storage
│ ├── vcards/ # vcards storage
│ └── ics/ # ICS file archive
├── keymap.xml # Plugin keymap configuration
└── setup.xml
Display More
### Data File Formats
#### Date Information Files
Stored in: `base/[language]/day/YYYYMMDD.txt`
```ini
[day]
date: 2025-12-25
datepeople:
sign: Capricorn
holiday: Christmas Day
description: Christmas celebration with family.
[month]
monthpeople:
```
#### Contact Storage Format
Each contact stored as `[contact_id].txt` in `base/contacts/`:
```ini
[contact]
FN: John Doe
BDAY: 1990-05-15
TEL: +391234567890
EMAIL: john@example.com
CATEGORIES: Family, Friends
NOTE: Birthday reminder
CREATED: 2024-12-25 10:30:00
```
#### Event Database
Events stored in JSON format in `events.json`:
```json
[
{
"id": 1766153767369,
"title": "Meeting",
"description": "Team meeting",
"date": "2025-12-19",
"time": "14:30",
"repeat": "none",
"notify_before": 15,
"enabled": true,
"created": "2024-12-19 14:25:47"
}
]
```
### Holiday Integration
Holidays are imported and stored directly in date files:
- **Source**: Holidata.net (JSON Lines format)
- **Integration**: Updates `holiday:` field in existing date files
- **Multiple Holidays**: Can store multiple holidays separated by commas
- **Preservation**: Keeps existing data when adding new holidays
## ⚙️ Configuration
The plugin includes configuration options accessible through:
- **Menu → Setup** from within the plugin
### Available Settings:
- **Show in Main Menu**: Enable/disable plugin in information menu
- **Event System**: Enable/disable event management
- **Notifications**: Toggle event notifications
- **Notification Duration**: Set how long notifications appear (3-15 seconds)
- **Default Notification Time**: Minutes before event to notify (0-60)
- **Default Event Time**: Default time for new events with auto-conversion
- **Event Color**: Color for days with events on calendar
- **Show Event Indicators**: Toggle visual indicators on calendar
- **Holiday System**: Enable/disable holiday coloring
- **Show Holiday Indicators**: Toggle "H" marker on holiday days
- **Holiday Color**: Color for holiday days on calendar
- **Contact Database Format**: Choose between Legacy or vCard format
- **Audio Settings**:
- **Play Sound**: Enable/disable audio notifications
- **Sound Type**: Choose between Short beep, Notification tone, Alert sound, or None
- **Auto-start Event Monitor**: Start event monitoring on plugin launch
## 🔧 Technical Details
#### vCard Import/Export
- **Multi-threaded Architecture**: Imports large vCard files without blocking GUI
- **Progress Tracking**: Real-time progress bar with contact count
- **Duplicate Detection**: Smart duplicate checking during import
- **Error Handling**: Graceful handling of malformed vCard entries
- **Performance**: Efficient memory usage for large files
- **Fields Supported**: Name, Birthday, Phone, Email, Address, Organization, Categories, Notes, URL
- **Field Parsing**: Support for standard vCard fields with charset detection
- **vCard Export**: Export contacts to `/tmp/calendar.vcf`
- **Database Converter**: UI for format conversion
- **Auto-conversion**: Automatic format conversion option
- **Contact Sorting**: Sort by name, birthday, or category in export
- **Import**: Supports standard .vcf/.vcard files
- **Export**: Contacts can be exported to vCard format
- **Format Compatibility**: Works with vCard 2.1 and 3.0
### Contact Management
- **Birthday Calculation**: Automatic age calculation from birth dates
- **Sorting Algorithms**: Efficient sorting by name, birthday, category
- **Search Functionality**: Fast text search across multiple fields
- **File-based Storage**: Each contact stored in separate .txt file
- **Automatic Backups**: Before database format conversion
### Event Management
- **Background monitoring**: Every 30 seconds
- **Intelligent Time Conversion**: Auto-converts events when default time changes
- **Time Tracking**: Tracks last configured default time (LAST_USED_DEFAULT_TIME)
- **Universal Navigation**: Wrap-around CH+/CH- navigation across all event screens
- **Position Tracking**: Real-time position display in all interfaces
- **Auto-save Navigation**: Automatic save when navigating between items
### Notification Logic
- Notifications shown within configurable time window
- Each event notified only once per occurrence
- Automatic skipping of past non-recurring events
- Priority-based audio selection
### Holiday System Architecture
- **File-based Storage**: Holidays stored in existing date files
- **Smart Caching**: Month-based cache for fast rendering
- **International Support**: 30+ countries with localized names
- **Performance**: Reads files once per month, not per day
- **Integration**: Seamless integration with existing date data
### Audio System Architecture
- **Enigma2 Native Playback**: Uses `eServiceReference` for reliable audio playback
- **Service Management**: Intelligently handles TV/radio service interruption
- **Format Support**: Automatic detection of WAV/MP3 files
- **Error Handling**: Graceful fallback if audio files missing
- **Performance**: Minimal CPU usage during playback
### Key Components
1. **EventManager**: Central event handling with JSON storage and audio playback
2. **BirthdayManager**: Contact management with vCard import/export
3. **VCardImporter**: vCard file parser and importer with progress tracking
4. **HolidaysManager**: Holiday import, caching, and display management
5. **EventDialog**: User interface for event creation/editing with universal navigation
6. **BirthdayDialog**: Contact add/edit interface with field highlighting
7. **ContactsView**: Contact browser with sorting, search, and universal navigation
8. **DatabaseConverter**: Format conversion between Legacy and vCard
9. **EventsView**: Browser for viewing and managing events with universal navigation
10. **HolidaysImportScreen**: Interface for importing holidays by country
11. **NotificationSystem**: Display system for visual alerts
12. **AudioEngine**: Integrated sound playback using Enigma2 services
### Dependencies
- Python standard libraries: `datetime`, `json`, `os`, `urllib2`, `threading`
- Enigma2 components: `eTimer`, `ActionMap`, `Screen`, `eServiceReference`
- Custom notification system for visual alerts
- Audio files (included in repository)
## 🐛 Troubleshooting
### Common Issues
1. **vCard Import Issues**:
- Check file format is .vcf or .vcard
- Ensure file contains valid vCard data
- Check file permissions: `chmod 644 filename.vcf`
- Large files may take time to process
2. **No audio notifications**:
- Check audio files exist in `sounds/` directory
- Verify "Play Sound" is enabled in settings
- Ensure audio format is WAV or MP3
- Check file permissions: `chmod 644 sounds/*`
3. **Contacts not showing**:
- Verify contacts exist in `base/contacts/` directory
- Check file permissions on contacts folder
- Ensure birthday format is YYYY-MM-DD
- Restart plugin to reload contacts
4. **Holidays not showing/coloring**:
- Verify holiday system is enabled in settings
- Check internet connection for holiday import
- Ensure `holidays.py` file exists and is executable
- Import holidays for your country first
5. **Audio interrupts TV/radio permanently**:
- Normal behavior: audio stops automatically after 3 seconds
- Previous service should restore automatically
- Check for errors in `/tmp/enigma2.log`
6. **Database conversion errors**:
- Automatic backup created before conversion
- Check disk space availability
- Verify contact files are not corrupted
- Manual backup available in plugin directory
7. **No notifications appearing**:
- Check event system is enabled in settings
- Verify notification duration is set correctly
- Ensure event time has passed the scheduled time
8. **Events/Holidays not saving**:
- Check write permissions in plugin directory
- Verify `events.json` file exists and is writable
- Ensure `base/` directory has write permissions
9. **Calendar not displaying**:
- Ensure all skin files are present
- Check for Python errors in debug log
10. **Navigation not working**:
- Verify CH+/CH- buttons are configured in your remote
- Check that universal navigation is enabled in all dialog classes
- Ensure position tracking variables are initialized
### Debug Mode
Enable debug messages by checking the plugin logs:
```
# Event system debug
tail -f /tmp/enigma2.log | grep EventManager
# vCard import debug
tail -f /tmp/enigma2.log | grep VCardImporter
# Contact management debug
tail -f /tmp/enigma2.log | grep BirthdayManager
# Holiday system debug
tail -f /tmp/enigma2.log | grep Holidays
# Audio system debug
tail -f /tmp/enigma2.log | grep "Playing\|No sound file\|Audio"
# Navigation debug
tail -f /tmp/enigma2.log | grep "CH+\|CH-\|Navigation\|Position"
# General plugin debug
tail -f /tmp/enigma2.log | grep Calendar
```
## 📝 Changelog
### v1.0
- Initial release with basic calendar functionality
### v1.1
- Added complete event management system
- Added smart notifications with configurable timing
- Added recurring event support (daily, weekly, monthly, yearly)
- Added visual indicators for days with events
- Added event browser and management interface
### v1.2
- Added complete audio notification system with priority-based sounds
- Added support for WAV and MP3 audio formats
- Added automatic audio playback for event notifications
- Added service restoration after audio playback
- Added past event skipping for improved performance
### v1.3
- Added international holiday import system from Holidata.net
- Added automatic holiday coloring on calendar
- Added "H" indicator for holiday days
- Added country selection for holiday import (30+ countries)
- Added smart cache system for fast holiday loading
- Added today's and upcoming holidays display
### v1.4
- Improved calendar rendering with holiday/event priority system
- Enhanced day selection with blue background over holidays/events
- Fixed skin warnings and widget count mismatches
- Improved error handling and debugging information
- Enhanced navigation and user interface
### v1.5
- **vCard import/export system for contacts**
- Complete contact management with birthday tracking
- Contact browser with sorting by name, birthday, category
- Multi-threaded vCard import with progress tracking
- Database format converter (Legacy ↔ vCard)
- Search function for contacts
- Duplicate detection during vCard import
- Birthday dialog with field highlighting
- Contact storage in vCard-like format
- Memory management for large contact imports
- Enhanced user interface for contact management
- Automatic backups before database conversion
### v1.6
- **vCard Export**: Export contacts to `/tmp/calendar.vcf`
- **Database Converter**: UI for format conversion
- **Auto-conversion**: Automatic format conversion option
- **Contact Sorting**: Sort by name, birthday, or category in export
- **Progress Tracking**: Visual feedback for all operations
- **Performance**: Faster contact deduplication with cache
- **UI**: Better progress bars and completion messages
- **Config**: New database format settings
### v1.7
- **ICS Event Management**: Browse, edit, delete imported events
- **ICS Events Browser**: Similar to contacts browser with navigation
- **ICS Event Editor**: Full-screen dialog like contact editor
- **ICS File Archive**: Store imported .ics files in `/base/ics`
- **Duplicate Detection**: Smart cache for fast duplicate checking
- **Enhanced Search**: Search in events titles, descriptions, dates
### v1.8
- **Universal Navigation System**: CH+/CH- wrap-around navigation in ALL screens
- **Intelligent Event Time Conversion**: Auto-converts events when default time changes
- **Real-time Position Display**: Shows current position in all interfaces
- **Jump to Today**: BLUE button jumps to today's event from anywhere
- **Auto-save Navigation**: Changes saved when navigating with CH+/CH-
- **Page Navigation**: PAGE UP/DOWN to skip 5 items
- **Unified Interface**: Same navigation across all dialogs and browsers
### v1.9
- **Implemented auto-start system at decoder boot
## 🤝 Contributing
Contributions are welcome! Please ensure:
- Code follows existing style and structure
- New features include appropriate configuration options
- All changes are tested on Enigma2 receivers
- Audio files follow naming convention: `beep`, `notify`, `alert` with `.wav` or `.mp3` extension
- Holiday data follows JSON Lines format compatible with Holidata.net
- vCard import supports standard vCard 2.1/3.0 format
- Navigation system maintains wrap-around functionality across all screens
## 📄 License
This plugin is open-source software. See the LICENSE file for details.
## 🙏 Credits
- **Original Developer**: Sirius0103
- **Modifications & Event System**: Lululla
- **vCard System & Contact Management**: Lululla
- **Audio Notification System**: Integrated by Lululla
- **Holiday Import System**: Integrated by Lululla
- **ICS Import & Universal Navigation**: Lululla
- **Homepage**: http://www.linuxsat-support.com - http://www.corvoboys.org
---
*Note: This plugin requires an Enigma2-based receiver (OpenPLi, OpenATV, etc.)*
*Audio notifications work best with receivers that support audio playback via eServiceReference*
*Holiday import requires internet connection to access Holidata.net*
*vCard import requires .vcf or .vcard files in standard vCard format*
*Contact management requires sufficient disk space for contact storage*
*Universal navigation requires CH+/CH- buttons on your remote control*
```
![]()
Display MoreThanks Lululla for give that plugin kiss of life
i try your modification now , try to add Arabic hosts by transferring that hosts to path
/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts
but i miss something as massage displayed as attached
could you guide me what to do
-------------------------------------
i try another tricky way by transfer files for tsplayer now it work but i hope to use all host directly from main Arabic section
the link for files here
I've never used xxxhost, sorry. I already wrote that.
don1t work
not integrated with E2Player
such a message
I can only speak to those who offer me a well-made log, because as I have already described, I have done a very aggressive PEP8, and formatted many functions, corrected many errors.
Whether it worked or not worked or I do not know and I do not care.
But 30,000 lines of code and 3 days to go blind, you can not dismiss me with a does not work, abstain.
Greetings.
I'll think about it..
you have mount (hdd or usb)?
select output directory first..
otherwise from telnet command
df -h /media/hdd
or
df -h /media/usb
the message seems clear to me, what can I do
Fix Index · Belfagor2005/e2player@02fee34
Those who know this module better than me, surely, can take a look and maybe find a solution, I just have to move some duplicate code out of class to lighten the code. Nothing else
I can't try the module for obvious reasons: everyone at home has their own rules, I have 2 women
omg.. my stupid error.. setValue.. not setChoices
try.. use telnet command for update and report please
The beer you offer me has strange effects.. thanks to the 2 users who offered me the beer.
v.1.1 added requests options