Firefox 3 – strona WWW jako mechanizm obsługi protokołu

Chciałem o tym zablogować już wcześniej, ale kiedy w końcu się do tego zabrałem, okazało się, że w angielskiej MDC jest już o tej funkcji całkiem niezły artykuł, dlatego uznałem, że lepiej go po prostu przetłumaczyć: Obsługa protokołów przez aplikacje WWW.

W tym miejscu tylko krótko i mniej technicznie – w Firefoksie 3 istnieje możliwość zarejestrowania jako mechanizm obsługi protokołu nie tylko aplikacji istniejącej na dysku twardym użytkownika w postaci pliku wykonywalnego (np. Thunderbird dla protokołu “mailto” czy Pidgin albo AdiumX dla protokołu “xmpp”), ale również aplikacji webowej.

Jak to działa? Rejestrujemy protokół, niech to będzie choćby wspomniane mailto. Użytkownik klika klasyczny link: example@example.org i… zamiast Thunderbirda czy Outlooka, Firefox otwiera po prostu jego ulubiony webmail. Dokładnie w ten sam sposób zarejestrować można każdy inny protokół (prawie, z wyjątkiem m. in. http i https).

Co to oznacza dla zwykłego użytkownika? Jeśli na przykład do obsługi wiadomości e-mail zamiast tradycyjnego klienta poczty wolisz używać webowego interfejsu Poczty Interii, OnetPoczty czy też Poczty Wirtualnej Polski, to Firefox 3 da Ci taką możliwość! Klikasz link do e-maila i otwiera Ci się Twój webmail, który automatycznie przechodzi do tworzenia wiadomości i wypełnia pola takie jak “Adresat”, “Temat” czy “Kopia” otrzymanymi z linku wartościami.

Co więcej, polska edycja Firefoksa 3 zawiera na liście proponowanych mechanizmów obsługi protokołu mailto właśnie trzy powyższe systemy webmail (wersja angielska – na razie tylko Yahoo). W jednej z kolejnych wersji po wersji 3.0 Mozilla dołączy do Firefoksa także obsługę GMaila, wymaga to jednak jeszcze nieco pracy ze strony Google.

Dopisane później: dla podkreślenia, że tu wcale nie chodzi tylko o mailto… Firefox 3 (polski i angielski) zawiera jeszcze przykładowy handler dla protokołu kalendarza webcal: – 30boxes (niestety, w wersji angielskiej), w kolejnych wersjach powinien dołączyć też Google Calendar i, jeśli tylko taki znajdziemy, jakiś polski odpowiednik. :)

25 responses to “Firefox 3 – strona WWW jako mechanizm obsługi protokołu

  1. Szok!!!!11sto Opera ma to od nie-pamiętam-kiedy.

  2. Wasacz: nie ma, przynajmniej wg Wikipedii, a i ja jakoś nie widzę registerProtocolHandler w 9.50-cośtam…

  3. ja

    Nie wiadomo moze czy planowane jest dodanie poczta.o2.pl ? Te wyzej wymienuione bije ona na glowe..

  4. Nic nie stoi na przeszkodzie, żeby dołożyć sobie dowolną ilość stron obsługujących dowolne handlery – wystarczy, by dana aplikacja webowa potrafiła przeparsować href z danym protokołem.

    Ze strony specyfikacji WHAT WG Web Applications 1.0, która definiuje tę funkcjonalność, nie ma żadnych przeszkód, żeby użytkownik jednym klikiem nie mógł sobie dodać O2 jako poczty czy Meebo jako komunikatora.

    Warto to zaimplementować niezależnie od tego, czy dana strona znajdzie się w Firefoksie czy nie – można się spodziewać, że Safari, Konqueror i Opera (a może i IE) też będą to wkrótce obsługiwać. :)

  5. sielakos

    OOo…. i to jest to na co długo czekałem ;] Dziwie się, że dopiero teraz to wprowadzili.

  6. Didimos

    A jaki problem jest z gmailem?

  7. To jest problem po stronie Google’a. Upierali się, że wszystko zrobią jak trzeba, a potem zamiast parsować hrefa, chcieli mieć każde pole (cc, bcc, subject, body itd.) w osobnym parametrze, a to tak nie działa – więc termin minął, Fx 3 rc 1 jest zamrożony i Google musi poczekać, nawet jeśli już zrobili wszystko. :)

  8. Pingback: Manageria, czyli jednak jest im wszystko jedno « marcoos.techblog

  9. Andrzej Kobylański

    >>Google musi poczekać, nawet jeśli już zrobili wszystko.
    Z tego rozumiem, że u Googla to już działa.
    A czy można samemu zarejestrować mechanizm obsługi protokołu mailto: dla Gmaila i jak to zrobić?
    BTW, w Twoim tłumaczeniu artykułu na MDC jest błąd.
    W części “Obsługa protokołu” w ramce Uwaga jest: “serwer będzie musiał podczas przetworzyć otrzymany adres” Czegoś tu chyba brakuje.

  10. matrixik

    @Andrzej Kobylański

    Może zobacz to:
    Mailto 2 Webmail (skrypt do Gresemonkey)
    http://userscripts.org/scripts/show/11324

    I Gmail Manager też to potrafi ustawić:
    http://www.longfocus.com/firefox/gmanager/

  11. ja

    czyli jak z tym o2 bo w koncu nie wiem? dodac gdzies w opsjach?

  12. Matrixik pokazuje, jak to zrobić w Fx 2 dla ston nie obsługujących Web Applications 1.0. Tutaj natomiast przedstawiam zgodny ze standardami sposób nie wymagający żadnych rozszerzeń w Fx 3.

    Co do O2 – jeśli zaimplementują ten fragment specyfikacji, to będzie można ich dodać jednym wywołaniem opisanej w artykule na MDC funkcji. Dotyczy to każdej witryny i każdego protokołu.

    Różnica jest więc tylko taka, że trzy w/w portale za zachętą Mozilli zaimplementowały to już i ze względu na wysoką liczbę użytkowników zostały dołączone jako predefiniowane (wg tej samej zasady masz w Firefoksie np. predefiniowane wyszukiwarki Google i Allegro.pl).

  13. Andrzej: nie, nie działa. Tam powinno być “zrobiliby”. Niemniej jednak, niczego to nie zmienia. :)

    Można dodać – albo przez dopisanie do region.properties, albo przez wywołanie registerProtocolHandler na danej stronie (choćby “skryptozakładką” vel “bookmarkletem”). Wchodzisz na example.org i wpisujesz w pasek adresu: javascript:navigator.registerProtocolHandler(“mailto”, “https://example.org/foo/shmoo/%s”, “Example.org”), wciskasz Enter, klikasz Ok. (taki link powinna zawierać sama strona).

  14. marcoos, tak sie składa, że Opera potrafi użyć strony internetowej do obslugi np. mailto. Troszkę byś się zainteresował, a wiedziałbyś, że jedynie brak jej sensownego GUI, bo sam mechanizm istnieje od bardzo dawna.

  15. Livio: szukałem i nie znalazłem. A i nie jestem pewien, czy naprawdę mówimy o tej samej funkcji.

    Poza tym, dla 95% użytkowników brak UI = brak tej funkcji.

  16. marcoos: Statystyki czyjego autorstwa? Funkcja ma się dobrze.

  17. marcoos, zaktualizuj umiejętność czytania do nowszej wersji.

    Porównaj:

    > potrafi użyć strony internetowej do obslugi np. mailto.
    > strona WWW jako mechanizm obsługi protokołu

    I jak?

    Chyba to samo :> .

  18. Livio: to super zarąbiście, że Opera to ma (o ile ma, a jeśli ma, to ciekawe czy zgodnie z WebApps 1.0).

    Googlowanie przez pięć minut za tym nie dało mi żadnych wyników. Więcej czasu na zabawę w poszukiwanie ukrytych ficzerów w konkurencyjnej przeglądarce nie mam, sorry.

    Jeśli więc naprawdę ma, to fajnie, ale jeśli ja, power user, tego *nie widzę*. Skoro ja tego nie widzę, to normalny użytkownik tego też nie zobaczy.

  19. > Jeśli więc naprawdę ma, to fajnie, ale jeśli ja, power user, tego *nie widzę*. Skoro ja tego nie widzę, to normalny użytkownik tego też nie zobaczy.

    Opera nie chwali się wszystkim, co robi. Może to i błąd, a może nie. I tak jej nie używam. Wiem tylko, co potrafi.

  20. GnoM

    Livio>

    To ja poproszę o instrukcję, jak zmusić Operę do otwarcia po kliknięciu linku mailto skrzynki na wp.pl i wypełnienia danych adresowych. Bo o takiej funkcjonalności jest przecież mowa.

  21. Livio: ja też bym z chęcią się dowiedział… Bo jakoś nie wiem jak to zrobic… hmm…

  22. tadek

    brakuje live.com i gmail no i o2.pl

  23. adawo

    Fajna sprawa :)

    A co to tego Gmaila, nie byłbym sobą gdybym nie przetrząsną Google i oto rezultaty ;p

    http://lifehacker.com/392287/set-firefox-3-to-launch-gmail-for-mailto-links

    Działa, sprawdzałem ;)

  24. tojajarek

    Napisałeś, że można to zrobić w Firefox, a napiszesz “Jak to zrobić”? Bo webmail którego używam ma możliwość użycia do wysłania listu czegoś takiego https://costam.pl?write=

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

MDN

Better JavaScript docs for a better Web on MDN

Archiwum

%d bloggers like this: