Hi!
I try to map calendar entries to RPID elements - unfortunately this is
not trivial.
Calender entries can be roughly characterized with:
Subject: What is happening
Location: Were is it happening
When: Start-stop
Particpation-Status: e.g. free/tentative/busy/out-of-office
I suggest the following mapping:
1. publish calender event inside a person element as it refers to the
activites/status of a person
2. Subject: <note> element inside the <activities>
3. Location: PIDFLO civic location inside the <person> element
4. When: use from/until attributes of <activities>
5. Participation-Status: <note> element inside the <person> element
Unsolved problems with this mapping:
- publishing multiple activities (e.g. future meetings) requires
multiple <person> elements. IMO it would be better to have a single
<person> with multiple <activities> (the activities have different
from/until) but activities are not extensible. Thus the location can not
be located within the activities and needs to be put inside the <person>
element.
- Participation status: This relates to iCal's "Free/Busy Time Type".
RPID lacks an element for this data type. As a workaround I think the
<note> element inside the <person> element is suitable.
- For the watcher there is no standardized way to relate these <person>
element with the user's calender. IMO the <class> element can be used to
classify the <person> data, e.g. <class>calender</calender>. But the
classes are not standardized, thus only proprietary watchers will detect
and render the calender entries correct.
What do you think? Is there a better approach for my mapping? Any
comments are appreciated.
regards
Klaus
PS: The above mapping will produce such presence documents:
An example with 2 calender entries:
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf"
xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
xmlns:lt="urn:ietf:params:xml:ns:location-type"
xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid"
xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"
xmlns:cl="urn:ietf:params:xml:ns:pidf:geopriv10:civicLoc"
entity="pres:[email protected]">
<dm:person id="calender01">
<rpid:activities from="2010-05-30T12:00:00+02:00"
until="2010-05-30T17:00:00+02:00">
<rpid:note>SIMPLE Strategy Meeting</rpid:note>
<rpid:meeting/>
</rpid:activities>
<rpid:class>calender</rpid:class>
<gp:geopriv>
<gp:location-info>
<cl:civicAddress xml:lang="de">
<cl:country>AT</cl:country>
<cl:A1>Wien</cl:A1>
<cl:A2>Wien</cl:A2>
<cl:A3>Wien</cl:A3>
<cl:A4>1</cl:A4>
<cl:RD>Karlsplatz</cl:RD>
<cl:HNO>;1;;;;;;Stg.;2;;;;;;9;;</cl:HNO>
<cl:PC>1010</cl:PC>
</cl:civicAddress>
</gp:location-info>
<usage-rules/>
</gp:geopriv>
<dm:note>tentative</dm:note>
<dm:timestamp>2010-05-30T16:09:44+02:00</dm:timestamp>
</dm:person>
<dm:person id="calender02">
<rpid:activities from="2010-05-30T17:00:00+02:00"
until="2010-05-30T18:00:00+02:00">
<rpid:note>jour fixe</rpid:note>
<rpid:meeting/>
</rpid:activities>
<rpid:class>calender</rpid:class>
<gp:geopriv>
<gp:location-info>
<cl:civicAddress xml:lang="en">
<cl:NAM>Office Mr. Doe</cl:NAM>
</cl:civicAddress>
</gp:location-info>
<usage-rules/>
</gp:geopriv>
<dm:note>busy</dm:note>
<dm:timestamp>2010-05-30T16:09:44+02:00</dm:timestamp>
</dm:person>
</presence>
_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors