Calendar database
m (→Colour) |
m (removed section edit links with __NOEDITSECTION__ magic word to prettify the page a bit) |
||
(49 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
- | The calendar database can be found in /home/user/.calendar/calendardb. The goal of this | + | The [[Open development/Maemo roadmap/Fremantle|Maemo 5]] calendar database can be found in <code>/home/user/.calendar/calendardb</code>. The goal of this article is to provide enough information on the calendar database in order to implement mass modifying/adding/deleting events verifying some criterias (string match in title, locations, comments for example). It could be easy then to write a small shell script using zenity and sqlite3 to perform this tasks. |
- | If you want to help editing this | + | If you want to help editing this article and writing useful informations on fields or new scripts, feel free to copy your own database on your computer and analyze it with some tools like "SQLite Database Browser" (Linux/Debian). The datatypes are those listed in the [http://www.sqlite.org/datatype3.html SQLite documentation]. |
+ | __NOEDITSECTION__<!-- removes section edit links as they look quite ugly on this page. -ashley on 8 June 2013 --> | ||
+ | == [[#toc|Structure]] == | ||
+ | === [[#toc|Tables & fields]] === | ||
- | = | + | ==== [[#toc|ALARM]] ==== |
- | = | + | ===== Id ===== |
- | == | + | ===== Trigger ===== |
+ | ===== Repeat ===== | ||
+ | ===== Duration ===== | ||
+ | ===== Action ===== | ||
+ | ===== CookieId ===== | ||
+ | ===== Attach ===== | ||
- | === | + | ==== [[#toc|Birthdays]] ==== |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | = | + | {| class="wikitable" |
- | + | |+ Birthdays table | |
- | + | |- | |
- | ==== | + | ! Field !! Type !! Description |
+ | |- | ||
+ | | Id || integer || primary key | ||
+ | |- | ||
+ | | DayMonth || integer || Day and month as a combined integer. Calculated as: month*100+day (day with a leading zero). 1102 means November 2 | ||
+ | |- | ||
+ | | Year || integer || Year as a number. | ||
+ | |} | ||
+ | |||
+ | ==== [[#toc|Calendars]] ==== | ||
- | + | {| class="wikitable" | |
- | + | |+ Calendars table | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
|- | |- | ||
- | + | ! Field !! Type !! Description | |
|- | |- | ||
- | | | + | | CalendarId || integer || primary key |
|- | |- | ||
- | | | + | | Name || text || name of the calendar |
|- | |- | ||
- | | | + | | Colour || integer || 0 = dark blue, 1 = green, 2 = dark pink, 3 = orange, 4 = purple, 5 = yellow, 6 = white, 7 = light blue, 8 = light pink, 9 = yellow-green |
|- | |- | ||
- | | | + | | isVisible || integer || 0 = not visible, 1 = visible |
|- | |- | ||
- | | | + | | isReadonly || integer || 0 = writeable, 1 = not writeable |
|- | |- | ||
- | | | + | | CalendarType || integer || 0 = local, 1 = intelligent, 2 = ?, 3 = private, 4 = synchronized |
|- | |- | ||
- | | | + | | CalendarTune || text || Path to the calendar alarm sound. Default path: <code>/usr/share/sounds/ui-calendar_alarm_default.aac</code> |
|- | |- | ||
- | | | + | | CalendarVersion || || |
|- | |- | ||
- | | | + | | CalendarProfile || || |
|} | |} | ||
- | ==== | + | ==== [[#toc|ComponentDetails]] ==== |
- | ==== | + | |
- | ==== | + | ===== Id ===== |
- | ==== | + | ===== ComponentType ===== |
- | ==== | + | ===== Class ===== |
- | ==== | + | ===== Geo ===== |
+ | ===== Priority ===== | ||
+ | ===== DateStamp ===== | ||
+ | ===== Sequence ===== | ||
+ | ===== Transparency ===== | ||
+ | ===== Uid ===== | ||
+ | ===== Url ===== | ||
+ | ===== Attach ===== | ||
+ | ===== Category ===== | ||
+ | ===== Comment ===== | ||
+ | ===== Contact ===== | ||
+ | ===== Related ===== | ||
+ | ===== Resources ===== | ||
+ | ===== Percent ===== | ||
+ | ===== Completed ===== | ||
+ | |||
+ | ==== [[#toc|Components]] ==== | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+ Components table | ||
+ | |- | ||
+ | ! Field !! Type !! Description | ||
+ | |- | ||
+ | | Id || integer || primary key | ||
+ | |- | ||
+ | | CalendarId || integer || association with the corresponding [[#Calendar|calender]] | ||
+ | |- | ||
+ | | ComponentType || integer || 1 = event, 2 = task, 3 = note, 4 = birthday | ||
+ | |- | ||
+ | | Flags || integer || 3 = has recursive entry, 4 = has alarm, 5 = has both | ||
+ | |- | ||
+ | | DateStart || integer || UTC start date in Unix Time Format (number of seconds since 01/01/1970) | ||
+ | |- | ||
+ | | DateEnd || integer || -1 = undefined, otherwise UTC end date in Unix Time Format (number of seconds since 01/01/1970) | ||
+ | |- | ||
+ | | Summary || text || title [event, task, note, birthday] | ||
+ | |- | ||
+ | | Location || text || location [event] | ||
+ | |- | ||
+ | | Description || text || comments [event, task, note] | ||
+ | |- | ||
+ | | Status || integer || -1 = undefined [event, note]. 0 = incomplete [task], 1 = complete [task], yyyy = year [birthday] | ||
+ | |- | ||
+ | | Uid || || | ||
+ | |- | ||
+ | | Until || integer || -1 = none [event, tastk, note], 2145913199 = end of calendar / limit of the Unix Time Format, other integer = end date of a recurrence [event, birthday] | ||
+ | |- | ||
+ | | AllDay || integer || 0 = in limited time [event, task, note], 1 = all day [event, birthday] | ||
+ | |- | ||
+ | | CreatedTime || integer || date of creation | ||
+ | |- | ||
+ | | ModifiedTime || integer || last date of modification | ||
+ | |- | ||
+ | | Tzid || text || time zone identifier, for example "<code>Europe/Paris</code>" | ||
+ | |- | ||
+ | | TzOffset || text || time zone offset in seconds compared to UTC, for example "<code>7200</code>" (2 hours) | ||
+ | |} | ||
+ | |||
+ | ==== [[#toc|IDMAP]] ==== | ||
+ | |||
+ | ===== LocalId ===== | ||
+ | ===== ExternalId ===== | ||
+ | |||
+ | ==== [[#toc|Instances]] ==== | ||
+ | |||
+ | ===== Id ===== | ||
+ | ===== DateStart ===== | ||
+ | ===== DateEnd ===== | ||
+ | |||
+ | ==== [[#toc|Parameters]] ==== | ||
+ | |||
+ | ===== ComponentId ===== | ||
+ | ===== PropertyType ===== | ||
+ | ===== PropertyValue ===== | ||
+ | ===== ParamName ===== | ||
+ | ===== ParamValue ===== | ||
+ | |||
+ | ==== [[#toc|RECURSIVE]] ==== | ||
- | = | + | ===== Id ===== |
- | ==== Id = | + | ===== Rrule ===== |
- | + | ===== Rdates ===== | |
- | ==== | + | ===== Exdates ===== |
- | + | ===== Exrule ===== | |
- | ==== | + | ===== RecurrenceId ===== |
- | + | ===== Rtype ===== | |
- | ==== | + | |
- | + | ||
- | ==== | + | |
- | + | ||
- | ==== | + | |
- | + | ||
- | == | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ==== | + | |
- | === | + | ==== [[#toc|TIMEZONE]] ==== |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | === | + | ===== Location ===== |
- | ==== | + | ===== Tzid ===== |
- | ==== | + | ===== DtStartStd ===== |
+ | ===== DtStartDst ===== | ||
+ | ===== TzOffsetStd ===== | ||
+ | ===== TzOffsetDst ===== | ||
+ | ===== RRuleStd ===== | ||
+ | ===== RRuleDst ===== | ||
+ | ===== TzName ===== | ||
+ | ===== DSTFlag ===== | ||
- | |||
- | |||
- | |||
- | |||
- | === | + | ==== [[#toc|Trash]] ==== |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | === | + | ===== ComponentId ===== |
- | ==== | + | ===== CalendarId ===== |
- | ==== | + | ===== ComponentType ===== |
- | ==== | + | ===== DeletedTime ===== |
- | ==== | + | ===== CreatedTime ===== |
- | + | ||
- | == | + | |
- | ==== | + | |
- | === | + | ==== [[#toc|XProperties]] ==== |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | === | + | ===== ComponentId ===== |
- | + | ===== XPropertyName ===== | |
- | ==== | + | ===== XPropertyValue ===== |
- | + | ||
- | == | + | |
- | ==== | + | |
- | === | + | ==== [[#toc|sqlite_sequence]] ==== |
- | + | ||
- | + | ||
- | + | ||
- | === | + | ===== name ===== |
- | ==== | + | ===== seq ===== |
- | == | + | |
+ | === [[#toc|Indices]] === | ||
+ | ==== IDX_ALARM ==== | ||
+ | ==== IDX_BIRTHDAYS_DATE ==== | ||
+ | ==== IDX_BIRTHDAYS_IDS ==== | ||
+ | ==== IDX_CALENDAR ==== | ||
+ | ==== IDX_COMPONENT ==== | ||
+ | ==== IDX_DETAILS ==== | ||
+ | ==== IDX_INST ==== | ||
+ | ==== IDX_RECURSIVE ==== | ||
+ | ==== IDX_TIMEZONE ==== | ||
+ | ==== IDX_TRASH ==== | ||
- | + | [[Category:Fremantle]] | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
[[Category:Calendar]] | [[Category:Calendar]] |
Latest revision as of 12:14, 8 June 2013
The Maemo 5 calendar database can be found in /home/user/.calendar/calendardb
. The goal of this article is to provide enough information on the calendar database in order to implement mass modifying/adding/deleting events verifying some criterias (string match in title, locations, comments for example). It could be easy then to write a small shell script using zenity and sqlite3 to perform this tasks.
If you want to help editing this article and writing useful informations on fields or new scripts, feel free to copy your own database on your computer and analyze it with some tools like "SQLite Database Browser" (Linux/Debian). The datatypes are those listed in the SQLite documentation.
Contents |
Structure
Tables & fields
ALARM
Id
Trigger
Repeat
Duration
Action
CookieId
Attach
Birthdays
Field | Type | Description |
---|---|---|
Id | integer | primary key |
DayMonth | integer | Day and month as a combined integer. Calculated as: month*100+day (day with a leading zero). 1102 means November 2 |
Year | integer | Year as a number. |
Calendars
Field | Type | Description |
---|---|---|
CalendarId | integer | primary key |
Name | text | name of the calendar |
Colour | integer | 0 = dark blue, 1 = green, 2 = dark pink, 3 = orange, 4 = purple, 5 = yellow, 6 = white, 7 = light blue, 8 = light pink, 9 = yellow-green |
isVisible | integer | 0 = not visible, 1 = visible |
isReadonly | integer | 0 = writeable, 1 = not writeable |
CalendarType | integer | 0 = local, 1 = intelligent, 2 = ?, 3 = private, 4 = synchronized |
CalendarTune | text | Path to the calendar alarm sound. Default path: /usr/share/sounds/ui-calendar_alarm_default.aac
|
CalendarVersion | ||
CalendarProfile |
ComponentDetails
Id
ComponentType
Class
Geo
Priority
DateStamp
Sequence
Transparency
Uid
Url
Attach
Category
Comment
Contact
Related
Resources
Percent
Completed
Components
Field | Type | Description |
---|---|---|
Id | integer | primary key |
CalendarId | integer | association with the corresponding calender |
ComponentType | integer | 1 = event, 2 = task, 3 = note, 4 = birthday |
Flags | integer | 3 = has recursive entry, 4 = has alarm, 5 = has both |
DateStart | integer | UTC start date in Unix Time Format (number of seconds since 01/01/1970) |
DateEnd | integer | -1 = undefined, otherwise UTC end date in Unix Time Format (number of seconds since 01/01/1970) |
Summary | text | title [event, task, note, birthday] |
Location | text | location [event] |
Description | text | comments [event, task, note] |
Status | integer | -1 = undefined [event, note]. 0 = incomplete [task], 1 = complete [task], yyyy = year [birthday] |
Uid | ||
Until | integer | -1 = none [event, tastk, note], 2145913199 = end of calendar / limit of the Unix Time Format, other integer = end date of a recurrence [event, birthday] |
AllDay | integer | 0 = in limited time [event, task, note], 1 = all day [event, birthday] |
CreatedTime | integer | date of creation |
ModifiedTime | integer | last date of modification |
Tzid | text | time zone identifier, for example "Europe/Paris "
|
TzOffset | text | time zone offset in seconds compared to UTC, for example "7200 " (2 hours)
|
IDMAP
LocalId
ExternalId
Instances
Id
DateStart
DateEnd
Parameters
ComponentId
PropertyType
PropertyValue
ParamName
ParamValue
RECURSIVE
Id
Rrule
Rdates
Exdates
Exrule
RecurrenceId
Rtype
TIMEZONE
Location
Tzid
DtStartStd
DtStartDst
TzOffsetStd
TzOffsetDst
RRuleStd
RRuleDst
TzName
DSTFlag
Trash
ComponentId
CalendarId
ComponentType
DeletedTime
CreatedTime
XProperties
ComponentId
XPropertyName
XPropertyValue
sqlite_sequence
name
seq
Indices
IDX_ALARM
IDX_BIRTHDAYS_DATE
IDX_BIRTHDAYS_IDS
IDX_CALENDAR
IDX_COMPONENT
IDX_DETAILS
IDX_INST
IDX_RECURSIVE
IDX_TIMEZONE
IDX_TRASH
- This page was last modified on 8 June 2013, at 12:14.
- This page has been accessed 80,231 times.