Activities aneb kam se poděly mikroformáty v IE 8

9. 7. 2008 19:54 (aktualizováno) Martin Hassman

Posledně jsme si ukázali, jak používat aktivity (activities) ve Firefoxu a v beta verzi Internet Exploreru 8 a předvedli jsme si aktivitu pro otevírání webových stránek v mobilních prohlížečích. Dnes si vysvětlíme, co jsou aktivity zač a jak si vytvořit své vlastní. Vysvětlím, proč se mi koncept aktivit líbí a proč by v některých případech mohly (nebo dokonce měly) nahradit stávající rozšíření Firefoxu.

Z Firefoxu do mobilu aneb pouzivame activities

Mobilní kód odkazující na minulý díl.

Pokud jste si aktivitu pro posílání stránek do mobilních prohlížečů pomocí mobilních kódů ještě nevyzkoušeli, můžete to před dalším čtením napravit.

Specifikace OpenService

Aktivity jsou popsány specifikací OpenService Format. Jedná se o XML soubory s jednoduchou strukturou (viz XML soubor aktivity pro zobrazování mobilních kódů), které popisují tři druhy akcí týkající se webové stránky zobrazované v prohlížeči:

  • akce zobrazované stránky
  • akce vyznačeného odkazu
  • akce vybraného textu

Pomocí nich dokážeme jednoduše volat rozličné služby na webu.

Akce zobrazované stránky

Akce zobrazované stránky je výchozí akcí a pracuje s celou stránkou. Najdeme ji v kontextovém menu prohlížeče. K dispozici má URL stránky a její titulek. Tyto dva parametry postačí k definici běžných akcí jako je např. přidání stránky do del.icio.us, přeložení stránky do jiného jazyka nebo nalezení údajů o stránce (PageRank, příbuzné stránky). V mém případě zavolám vygenerování mobilního kódu zobrazené stránky, které vykonává qrcode.kaywa.com. Kód vypadá takto:

    <activityAction context="document">
      <execute method="post" action="http://qrcode.kaywa.com/">
        <parameter name="qr_cnt_frmt" value="{documentUrl}" />
        <parameter name="qr_cnt_type" value="qr_cnt_type_url" />
        <parameter name="qr_cnt" value="{documentUrl}" />
        <parameter name="qr_size" value="8" />
      </execute>
      <preview method="get"
        action="http://qrcode.kaywa.com/img.php?s=8&d={documentUrl}" />
    </activityAction>

Všimněte si context=„dokument“ označuje, že popisujeme akci zobrazované stránky. Následují sekce execute a preview, které popisují jednoduché GET nebo POST dotazy na požadovanou službu. Akce execute se vyvolá, pokud akci vybereme v menu, akce preview se vyvolá, pokud na položku v menu pouze najedeme myší.

Akce vyznačeného odkazu

V případě, že jsme vybrali odkaz na stránce (např. jsme na něj najeli myší a otevřeli kontextové menu), vyvolá se akce vyznačeného odkazu. Popis akce je podobný, k dispozici máme navíc parametr {link} obsahující vybraný odkaz. V mém případě zavolám vygenerování mobilního kódu pro vybraný odkaz:

    <activityAction context="link">
      <execute method="post" action="http://qrcode.kaywa.com/">
        <parameter name="qr_cnt_frmt" value="{link}" />
        <parameter name="qr_cnt_type" value="qr_cnt_type_url" />
        <parameter name="qr_cnt" value="{link}" />
        <parameter name="qr_size" value="8" />
      </execute>
      <preview method="get" action="http://qrcode.kaywa.com/img.php?s=8&d={link}" />
    </activityAction>

Kromě označení context=„link“ a použití parametru {link} je příklad shodný s předchozím.

Akce vybraného textu

Pokud uživatel vybere na stránce text, je k dispozici akce vybraného textu. Typické využití je nalezení textu ve vyhledávačích nebo přeložení označeného textu. Pro specifický text můžeme použít specifické akce, pokud např. označíme adresu, můžeme ji nalézt na mapě. Ovšem je to uživatel, kdo vybere akci (a ví, že se jedná třeba o adresu), pro prohlížeč se jedná jen o vyznačený text, kterému nijak nerozumí.

V mém případě sice tato akce nemá velký smysl, ale abych ji vyzkoušel, vygeneruji při jejím zavolání mobilní kód, který obsahuje SMS zprávu z označeného textu (použiji k tomu protokol smsto:).

    <activityAction context="selection">
      <execute method="post" action="http://qrcode.kaywa.com/">
        <parameter name="qr_cnt_frmt" value="SMSTO:000:{selection}" />
        <parameter name="qr_cnt_type" value="qr_cnt_type_sms" />
        <parameter name="qr_cnt_0" value="000" />
        <parameter name="qr_cnt" value="{selection}" />
        <parameter name="qr_size" value="8" />
      </execute>
      <preview method="get"
        action="http://qrcode.kaywa.com/img.php?s=8&d=SMSTO:000:{selection}" />
    </activityAction>

Všimněte si označení context=„selection“ a použití parametru {selection}. Zbytek již znáte.

Celý soubor se všemi akcemi najdete na adrese http://a.met.cz/activities/Sen­d_qrdata.com.xml

Kam se poděly mikroformáty v Internet Exploreru 8

Dříve se odhadovalo, že Internet Explorer 8 bude obsahovat mikroformáty. Aby ne, když Bill Gates v rozhovoru prohlásil, že mikroformáty jsou potřeba, a když se objevil inzerát na pracovní pozici v týmu IE, který citoval mikroformáty mezi požadovanými znalostmi.

První beta verze Internet Exploreru 8 vyšla a dvě novinky skutečně mikroformáty připomínají, jedná se o aktivity a weblices (webové výřezy).

Webslices

O webslices se více dočtete v příspěvku Připravte se na výřezy u Aleše Roubíčka nebo na BrokenLinks. Jedná se o zajímavou recyklaci mikroformátu hAtom. Ta může být užitečná, ovšem objevila se i kritika, proč IE8 přichází s vlastním upraveným formátem, místo aby použil existující.

Aktivity

Druhou novinkou jsou zmíněné aktivity. Práce s nimi na první pohled hodně připomíná práci s mikroformáty ve Firefoxu. Když jsem je uviděl poprvé, jásal jsem: „Máme to doma, jsou tam!“ Pak jsem se na ně podíval důkladněji a byl jsem zklamán.

Podobnost aktivit s mikroformáty je pouze zdánlivá a nikoliv proto, že by se jednalo o jiný formát, ale protože aktivity umožňují tak 1–2% z toho, co by v prohlížeči dokázaly mikroformáty. Proč tak málo? Všimněte si, co jsem o aktivitách psal výše – je to člověk, který musí poznat, co daný text nebo odkaz obsahuje. Internet Explorer 8 zůstává v rukou uživatele stále tím „tupým“ nástrojem, který obsahu webové stránky nijak nerozumí (což je přesně jedna z hlavních věcí, kterou mikroformáty mění).

Přes veškerou mou kritiku se mi activities líbí a jedná se o jednu z těch světlejších stránek IE8. Líbí se mi natolik, že bych je rác viděl i v dalších prohlížečích (možné to je, jejich specifikace je veřená). A nelíbí se jenom mě, Michael Kaply je naportoval ve formě rozšíření do Firefoxu. První částečně funkční verzi měl hotovu za několi hodin, plně funkční verzi vydal za několik dní po té. Že za tak krátký čas? Inu To souvisí s jednoduchostí (možná až přílišnou jednoduchostí) celého konceptu aktivit.

Pokračování příště

Internet Explorer tedy obecnou podporu mikroformátů neobsahuje, ale přesto se mu podařilo na stagnující vývoj uživatelského rozhraní webových prohlížečů přijít se zajímavou novinkou. Zda se ujme, to teprve uvidíme.

Do příštího dílu si nechám porovnání aktivit s rozšířeními prohlížeče, a proč můžou být aktivity tou lepší volbou, i přestože jsou mnohem jednodušší.

Sdílet

  • 28. 6. 2008 8:35

    Aleš Roubíček (neregistrovaný)

    Pěkný článek a opět děkuji za odkaz :) Ad hslices a recuklace hatom: Myslím, že podstatný rozdíl je v určení samotného mikroformátu. Zatím co hatom je primárně pro feed (tedy předpokládáse, že bude obsahovat několik položek), hslice je jen jeden kus. To že používá některé společné třídy je myslím chvály hodné, protože zbytečně nevznikne přilišný guláš v názvech tříd. Navíc můžeme mít na jedne stránce feed a zároveň první položku mít označenou jako výřez. :)