Lịch Google là trình xử lý mặc định của giao thức webcal cho các tệp iCal / ICS


20

Tôi muốn Lịch Google mở URI bằng lược đồ Webcal (wikipedia) (cung cấp tệp ICS), tương tự như cách Gmail có thể được đặt thành trình xử lý mặc định cho mailto:các liên kết.

Cụ thể hơn, tôi muốn Lịch Google nhập chúng vào lịch chính của mình. (Bạn có thể nhập thủ công tệp ICS trong Lịch Google bằng cách nhấp vào mũi tên nhỏ bên cạnh Lịch khác, chọn Lịch nhập từ danh sách thả xuống, điều hướng đến tệp .ICS và chọn Nhập.)

Tôi không biết nếu điều này là có thể, nhưng tôi hy vọng ai đó sẽ có một ý tưởng tuyệt vời.

Câu trả lời:


14

Crom

Trình duyệt chromium cung cấp tùy chọn này khi bạn đăng nhập lần đầu vào Lịch Google:

Lịch Google trong trình duyệt Chromium cung cấp để xử lý các giao thức webcal

Nếu bạn đã vô tình trả lời Novề câu hỏi này, bạn có thể nhấn Wrenchnút thanh công cụ và đi đến Settings. Nhấp Show advanced settings, tìm Content settings...(ngay sau tiêu đề Quyền riêng tư) và tìm Manage handlersnút. Nhấp vào Xbên cạnh giao thức bị bỏ qua mà bạn muốn xóa. Ngoài ra, bạn có thể nhập vào protocol handlershộp tìm kiếm trong cài đặt Chromium. Xem ảnh chụp màn hình bên dưới.

Hoàn tác bỏ qua trình xử lý giao thức trong trình duyệt Chromium

Firefox

Tôi đã tìm thấy bài đăng này trên stackexchange giải thích cách đạt được điều tương tự trong Firefox, nhưng điều này không hiệu quả với tôi trên firefox 12 và 15: điều này hoạt động với tôi nếu tôi tắt tùy chọn Never save history (Chế độ duyệt web riêng tư):

Truy cập trang web của Lịch Google và nhấn Ctrl+Shift+K.

Dán cái này sau dấu>

navigator.registerProtocolHandler("webcal","https://www.google.com/calendar/render?cid=%s","Google Calendar");

Nhấn phím enter và nhấp vào Add applicationnút sẽ xuất hiện bên dưới thanh công cụ.

Bảng điều khiển Firefox

Firefox chấp nhận giao thức hanlder

Bạn có thể cần để chuyển đổi các gecko.handlerService.allowRegisterFromDifferentHosttùy chọn trong about:configđể truetrước khi cố gắng này (nếu google chuyển hướng bạn đến một miền google địa phương). Hãy nhớ trả lại thành false sau khi gọi hàm registerProtocolHandler vì các trang web độc hại có thể khai thác điều này. Xem chi tiết tại đây .


Cá nhân, tôi đang tìm kiếm tùy chọn cho Chrome / Chromium. Trong trường hợp một người không phản ứng đúng trong lần đăng nhập đầu tiên, có tùy chọn nào mở không?
Rasmus

Có, bạn có thể xóa một trình xử lý giao thức bị bỏ qua. Xem câu trả lời chỉnh sửa của tôi!
jeremija

1
Tôi thấy rằng tôi cần đặt javascript:navigator.registerProtocolHandler("webcal","https://www.google.com/calendar/render?cid=%s","Google Calendar");thanh vị trí trong Google Chrome để làm cho nó hoạt động.
Mikko Rantalainen

Tôi đã thử giải pháp Firefox nhưng khi nhấp vào tệp .ics tôi có bật lên để lưu trữ hoặc mở bằng gedit (vì đó là tệp VCS / ICS) có mẹo nào không? btw superuser.com/a/442494/216033 đề cập đến một giải pháp tương tự.
TiloBunt

ở đây một ics thử nghiệm (đã tìm thấy nó trong khi tôi tìm kiếm giải pháp) calendar-a-googleproductforums-com.googlegroups.com/attach/ chủ
TiloBunt

15

Trong các phiên bản mới hơn của Chromium / Chrome, bạn cần đăng nhập vào lịch google và nhấp vào biểu tượng kim cương chồng chéo trong thanh địa chỉ.

Ảnh chụp màn hình

Chọn "Sử dụng Lịch Google", sau đó nhấp vào xong. Điều này sẽ đăng ký lịch google như một trình xử lý cho các liên kết webcal.

Lưu ý:
Bạn có thể cần đặt Chromium để cho phép các trang web trở thành trình xử lý giao thức mặc định. Bạn có thể làm như vậy thông qua:

  1. Cài đặt nâng cao -> Quyền riêng tư, Cài đặt nội dung -> Trình xử lý
  2. Chọn "Cho phép các trang web yêu cầu trở thành trình xử lý mặc định cho giao thức"

Không hoạt động trong chrome ...
Banee Ishaque K

1

Vì tôi đã gặp câu hỏi tương tự như OP và mọi thứ đã thay đổi kể từ khi câu trả lời được chấp nhận được đăng, tôi nghĩ tôi muốn chia sẻ những phát hiện của mình. Các hướng dẫn sau đây chủ yếu dành cho Firefox, nhưng ngoài những khác biệt nhỏ, chúng cũng nên hoạt động trong Chrome.

[2019-03-08] Cập nhật: phản ánh hành vi mới của Firefox

Bởi vì sử dụng

    javascript:window.navigator.registerProtocolHandler("webcal","https://calendar.google.com/calendar/r?cid=%s","Google Calendar");

tại bảng điều khiển của Firefox cho kết quả

SecurityError: Quyền bị từ chối thêm https://www.google.com/calWiki/render?cid=%s làm trình xử lý giao thức

ngày nay, đây là cách mới để "làm cho nó xảy ra":

  1. Điều hướng đến about:config, xác nhận rủi ro bằng cách nhấp vào nút.
  2. Nhập webcal, lọc danh sách vào các mục của loại gecko.handlerService.schemes.webcal.[...].
  3. Nhấp vào Editnút ở bên phải của mục bạn đã chọn [...].name(vì 30 Hộp đã bị bỏ qua với Firefox 67 , tôi đã chọn [...].0.name)
  4. Nhập tên bạn muốn, ví dụ Google Calendarvà nhấp vào Save.
  5. Nhấp vào Editnút của [...].uriTemplatemục tương ứng của bạn , tức là cái ngay bên dưới mục đã chỉnh sửa của bạn.
  6. Dán URL https://calendar.google.com/calendar/r?cid=%svà nhấp Save.
  7. Đi đến lựa chọn của Firefox cho các ứng dụng liên quan đến bằng cách nhấp liên tục , ⚙ Options, ⚙ Generaltùy chọn trình đơn và sau đó cuộn xuống Applicationsđoạn văn.
  8. Tìm kiếm danh sách webcalbằng cách nhập nó vào hộp tìm kiếm ngay phía trên danh sách hoặc thông qua cuộn.
  9. Nhấp vào trình đơn thả xuống ở nửa bên phải của mục nhập và chọn Use Google Calendar(hoặc bất kỳ tên nào bạn đã chọn theo hướng dẫn số 4).

Lịch kiểm tra: https://www.webcal.fi/en/calendars.php

HTH. Nếu không, chỉ cần để lại một bình luận dưới đây.


Đã làm theo tất cả các bước nhưng vẫn không hoạt động với tôi trên FF 50.1.0 / Ubuntu x64. Tất cả là như bạn đã nói nhưng ics vẫn gọi hộp thoại với xử lý nội dung (lưu hoặc chạy ứng dụng). Tôi đã thử navigator.registerContentHandlerphương pháp nhưng vẫn không có kết quả, URI / gcal không được đăng ký cho loại mime:text/calendar
b1r3k

1
Xin lỗi, nhưng có vẻ như Google hoặc Mozilla đã thay đổi một cái gì đó và do đó nó không hoạt động vào lúc này. Mặc dù vậy, bạn vẫn có thể tự thêm một mục nhập cho gecko.handlerService.schemes.webcal.X.namegecko.handlerService.schemes.webcal.X.uriTemplate(trong đó X là số cao hơn mục hiện tại cao nhất) trong about:configURL. Sau đó, bạn có thể tiếp tục với hướng dẫn # 5.
Yoda

Tôi chỉ thử điều này trên Google Chrome mới nhất mà không gặp may. Tôi có thể yêu cầu trình xử lý đăng ký, nhưng không may mắn khi tải tệp ICS vào Google Cal với trình xử lý đó đã được đăng ký.
Craig Lambie

@CraigLambie Trước hết, thật buồn khi thấy câu trả lời của tôi bị " -1ed" bởi những người dùng Chrome không hài lòng. Thứ hai, tôi chưa bao giờ nói "hướng dẫn cũng hoạt động trong Chrome". Thay vào đó, tôi tuyên bố rõ ràng : " ngoài những khác biệt nhỏ, họ nên làm việc trong Chrome"! Cuối cùng, vì tôi sẽ không bao giờ sử dụng Chrome, tôi chỉ đơn giản là không quan tâm đến cách nó xử lý các liên kết web - đối với Firefox nó hoạt động và đó là lý do đằng sau toàn bộ câu trả lời này ngay từ đầu - đối với các giải pháp dựa trên Chromium, hãy xem câu trả lời của @peonicles hoặc @jeremija và yêu cầu họ sửa lỗi Chrome thêm.
Yoda
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.