Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kernel serve CalDAV service on path /caldav/ #13321

Merged
merged 5 commits into from
Dec 1, 2024

Conversation

Zuoqiu-Yingyi
Copy link
Contributor

  • 内核在 /caldav 路径下提供 CalDAV 服务
    The kernel provides CalDAV service on path /caldav.
  • 该服务可管理 *.ics 文件
    This service can manage *.ics files.
    • <workspace>/data/storage/caldav/principals/<principal>/<home-set>/<calendar>/<event-id>.ics

参考 | Reference:

依赖 | Dependency:

关联 | Relevance:

@Zuoqiu-Yingyi Zuoqiu-Yingyi marked this pull request as ready for review December 1, 2024 14:16
@88250 88250 changed the title Kernel serve CalDAV service on path /caldav/ Kernel serve CalDAV service on path /caldav/ Dec 1, 2024
@88250 88250 added this to the 3.1.14 milestone Dec 1, 2024
@88250 88250 merged commit 62d6c13 into siyuan-note:dev Dec 1, 2024
1 check passed
@88250
Copy link
Member

88250 commented Dec 1, 2024

感谢你的贡献,思源有你更精彩!
Thank you for your contribution. SiYuan will be more wonderful with you!

@Zuoqiu-Yingyi Zuoqiu-Yingyi deleted the feat/caldav branch December 1, 2024 18:04
EightDoor added a commit to EightDoor/siyuan that referenced this pull request Dec 6, 2024
* commit '1710194122495d282a51650441d9fc80804561bb': (189 commits)
  🔖 Release v3.1.14
  ⬆️ Upgrade kernel deps
  🎨 siyuan-note#13320
  🎨 Support HarmonyOS NEXT system
  🎨 Support HarmonyOS NEXT system
  🎨 Support HarmonyOS NEXT system
  🎨 Support HarmonyOS NEXT system
  🎨 Support HarmonyOS NEXT system
  🎨 Support HarmonyOS NEXT system
  🎨 Support HarmonyOS NEXT system
  🎨 siyuan-note#13334
  🎨 siyuan-note#13181
  🎨 Improve exporting block ref siyuan-note#13283
  🎨 Clean code
  🐛 Fix NPE
  📝 Update changelogs
  🎨 siyuan-note#13324
  🐛 Fix NPE
  🎨 Improve image width setting siyuan-note#12516 siyuan-note#13327
  🧑‍💻 Kernel serve CalDAV service on path `/caldav/` (siyuan-note#13321)
  ...

# Conflicts:
#	README.md
@loonghfut
Copy link

有详细使用此服务的教程吗,目前我只在thunderbird上成功实现,但在安卓手机上无法发现此服务下的日历。

@Zuoqiu-Yingyi
Copy link
Contributor Author

有详细使用此服务的教程吗,目前我只在thunderbird上成功实现,但在安卓手机上无法发现此服务下的日历。

请问能提供一下所使用的的 APP 吗, 我排查一下是否存在兼容性问题

@loonghfut
Copy link

请问能提供一下所使用的的 APP 吗, 我排查一下是否存在兼容性问题

DAVx5

和小米日历

@Zuoqiu-Yingyi
Copy link
Contributor Author

DAVx5

DAVx5 的 PROPFIND 请求使用如下带有名称空间的请求同时查询 CalDAV 与 CarddAV,而本 PR 所使用的的 go-webdav 库不支持解析该方案

<?xml version='1.0' encoding='UTF-8' ?>
<propfind xmlns="DAV:"
    xmlns:CAL="urn:ietf:params:xml:ns:caldav"
    xmlns:CARD="urn:ietf:params:xml:ns:carddav">
    <prop>
        <resourcetype />
        <current-user-privilege-set />
        <displayname />
        <owner />
        <CARD:addressbook-description />
        <CARD:supported-address-data />
        <CAL:calendar-description />
        <n0:calendar-color xmlns:n0="http://apple.com/ns/ical/" />
        <CAL:supported-calendar-component-set />
        <n1:source xmlns:n1="http://calendarserver.org/ns/" />
        <n2:push-transports xmlns:n2="DAV:Push" />
        <n3:topic xmlns:n3="DAV:Push" />
    </prop>
</propfind>

@loonghfut
Copy link

DAVx5

DAVx5 的 PROPFIND 请求使用如下带有名称空间的请求同时查询 CalDAV 与 CarddAV,而本 PR 所使用的的 go-webdav 库不支持解析该方案

感谢回复,
您是否有使用安卓连接caldav,如有,可以告知我用的什么软件吗?

@Zuoqiu-Yingyi
Copy link
Contributor Author

感谢回复, 您是否有使用安卓连接caldav,如有,可以告知我用的什么软件吗?

我也仅在 thunderbird 中进行了测试, 因为其开发者工具方便调试

@loonghfut
Copy link

嗯,了解了
感谢回复,也感谢您对思源的pr。

mouyase pushed a commit to mouyase/siyuan that referenced this pull request Feb 28, 2025
* 🎨 define the interface of CalDAV

* 🎨 Adjust iCalendar files directory structure

* 🎨 Implement CalDAV Calendar manage functions

* 🎨 Implement CalDAV calendar object manage functions

* 🎨 improve ETag scheme
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants