abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 18:22 | Nová verze

    Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    10.5. 19:11 | Nová verze

    Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 9
    10.5. 04:11 | Nová verze

    Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    9.5. 22:22 | Bezpečnostní upozornění

    Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].

    Ladislav Hagara | Komentářů: 20
    9.5. 21:11 | Zajímavý článek

    V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.

    Ladislav Hagara | Komentářů: 41
    9.5. 14:33 | Pozvánky

    O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    8.5. 21:55 | Nová verze

    Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.

    Ladislav Hagara | Komentářů: 20
    8.5. 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 7
    8.5. 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    7.5. 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (65%)
     (7%)
     (13%)
     (15%)
    Celkem 168 hlasů
     Komentářů: 11, poslední 10.5. 18:00
    Rozcestník

    Integrace s adress bookem na Linuxu

    23.5.2008 11:44 | Přečteno: 928× | Java | poslední úprava: 23.5.2008 12:16

    V rámci importů kontaktů do programu Esmska mě napadlo, že bych mohl naprogramovat jednoduchý importer z Address Booku na Macu. To se mi podařilo, avšak otázka je, zda něco takového lze jednoduše udělat i na Linuxu.

    Nástin situace

    Esmska je program pro odesílání SMS z počítače. Ke své práci využívá kontakty, které si můžete uložit. Je zde i volba importu ze souboru. Typickým příkladem je vCard. Avšak ne každého furt baví lézt do svého programu, kde má uložené kontakty a při každé změně dělat export a import do Esmsky.

    Co je hotové?

    Vyrobil jsem prototyp, který proleze celý adresář a v Javě jej vráti jako Stringové pole. Protože toto není možno udělat v Javě, je nutno použít JNI - alias programování v C. V současné době mám hotový export z aplikace Address Book na Mac OS X. A protože jsme na Abclinuxu, tak bych rád něco takového viděl i pro Linux.

    O co mi jde?

    Upozorňuji předem, že jsem zatím vůbec nikde negooglil. Chtěl bych se zeptat zdejší programátorské komunity, zda se někdo s podobným problémem již nesetkal. Rád bych, aby vznikl kód, který bude umět prohledat jak aplikaci Kontact, tak i Evolution a ideálně i Thunderbird.

    Jak na to?

    Řešení je prosté. Musíte implementovat jednu metodu, která má hlavičku v podobě C/C++ funkce. Pokud se vám tento jazyk nelíbí (já ho docela nesnáším), můžete v rámci implementace této metody volat jiný jazyk. V mém případě to bylo Objective-C. Pokud to dokážete v Pythonu, Lispu, nebo v assembleru... Je mi to šumák. Java vyžaduje volání té céčkové metody. Co se děje uvnitř - to už je jen a jen na vás.

    Závěr

    Mě bude úplně stačit, když mě vhodným směrem popostrčíte. Není nutno hned dávat naprogramovanou knihovnu, ačkoliv bych vám za ní líbal ruce nohy. Když mi ukážete, kde mám stáhnout vhodný framework, budu i za to vděčný. Jo, a pokud se tu najde člověk, co by zvládl takovýto export z Outlooku... :-)

    Ukázka kódu je na adrese: http://www.ptakopysk.cz/algi/Archive.zip. Je tam ukázkový zdroják v Javě a implementace v Objective-C, včetně header filu s názvem export.h. Ten je nutno implementovat, ostatní je nepodstatné...

    Update

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    23.5.2008 12:42 pnemec | skóre: 8 | blog: jotter
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    Tak nějak nechápu o co vám jde? Přijde mi, že se snažíte synchronizovat program esems se svými kontakty?
    Já podobný problém řešil na linuxu i na Mac OSu. Na linuxu při programování superkaramba appletu. Na Macu při exportu fotek z iPhota. Z konfigurace kontactu (kadressbooku) lze zjistit zdroje (vcal, ldap) které je možné přímo použít a načíst. Na Macu existuje "Apple Script", kterým můžete velice pohodlně ovládat většinu aplikací. Říct AdresBooku abz exportoval kontakty přímo do souboru půjde velice velice pohodlně. A máte jistotu že na nic nezapomente. Myslím že se souborem s kontakty se vám bude pracovat lépe než s adresářem.
    Algi avatar 23.5.2008 12:52 Algi | skóre: 1 | blog: Sinner
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    Export do souborů je přesně to, co já nechci. Nutí to totiž uživatele dělat něco, co vlastně dělat nemusí. Proč by si nemohl program sám tyto kontakty vytáhnout? AppleScript není vůbec potřeba. Stačí zavolat API AddressBooku a ten vám to všechno vrátí přímo za běhu, aniž byste musel cokoliv exportovat. Mým cílem je, aby bych přímo z programu Esmska viděl kontakty co jsou uložené v AddressBooku a mohl je z něj pohodlně naimportovat.

    Takováto integrace programů není nic exotického. Stačí se podívat na Lightroom, který dokáže importovat fotky z iPhoto, Mail, který ví o vaší hudební sbírce, apod. Žádný z těchto programů vás nenutí, abyste nejdřív v iPhoto exportovali obrázky a pak vlezli do Lightroomu a tam je importovali...

    Btw. současný princip importů v Esmsce spočívá právě v tom, že se načítají a parsují vCard soubory. To je sice hezké, ale není to pro uživatele pohodlné...
    I'm a firestarter, twisted firestarter...
    Algi avatar 23.5.2008 13:08 Algi | skóre: 1 | blog: Sinner
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    Jinak díky za radu co se týče toho Kontactu. Pokud se tam stačí napojit na nějaký vCard, tak to bude vcelku pohodlné. Teď už jenom zbývá najít, jak to má vyřešené Thunderbird... Tomu kódu v Pythonu bohužel moc nerozumím, ale snad z toho něco pochopím :-)
    I'm a firestarter, twisted firestarter...
    23.5.2008 22:43 pnemec | skóre: 8 | blog: jotter
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    No uživatel by nic moc dělat nemusel. Export do souboru by se dělal automaticky. Ale chápu, že šáhnout přímo do AB je pohodlnější. Měl jsem ale za to že, je to možné jen z ObjectC na MacOSu. Mátě nějaké info o tom jak to dělat z javy?
    Algi avatar 24.5.2008 09:44 Algi | skóre: 1 | blog: Sinner
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    No, z Javy to prave podle me moc nejde. Proto to resim pomoci JNI. Jde o to, ze to nejde uz z principu. Protoze kazdy system ma sve programy pro adresar. Na konci clanku uvadim odkaz na API, ktere pouziva GNOME. Je sice trochu odlisne, ale implementace podle me bude primitivni...
    I'm a firestarter, twisted firestarter...
    xkucf03 avatar 25.5.2008 20:05 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    Pro KAddressBook jde použít toto: načíst obsah souboru ~/.kde/share/apps/kabc/std.vcf. Přístup přes API by byl samozřejmě lepší, ale pokud k adresáři přistupovat jen pro čtení, tak se dá použít tohle - a nepotřebuješ žádné JNI. (pokud by uživatel měl kontakty jinde než v lokálních souborech, pak už by API bylo potřeba, nebo by se dalo spojit rovnou s LDAPem, pokud by byl bez hesla).

    BTW: když už jsme u té integrace, nezkoušeli jste někdo propojit Javu a nějakého správce hesel (KWalletManager)?
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Algi avatar 25.5.2008 20:25 Algi | skóre: 1 | blog: Sinner
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    Výborně, to s KAddressBookem je skvělá rada. Rozhodně se bude hodit. Mě to stačí read-only.

    Co se týče integrace se správcem hesel, tak mám takový dojem, že to je možné vcelku pohodlně bez nativního kódu. Nevím teď, jak je na tom Java od Sunu, ale ta Applovská se umí připojit vcelku snadno pomocí:
    KeyStore keyStore = KeyStore.getInstance("KeychainStore", "Apple");
    keyStore.load(new FileInputStream("/path/to the/keychainfile.keychain"),"password".toCharArray());
    
    Ovšem nevím, jestli je to přesně to, co hledáš :-)
    I'm a firestarter, twisted firestarter...
    xkucf03 avatar 25.5.2008 21:54 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    To je ono, akorát v KDE to asi tak jednoduše nejde.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Algi avatar 25.5.2008 22:07 Algi | skóre: 1 | blog: Sinner
    Rozbalit Rozbalit vše Re: Integrace s adress bookem na Linuxu
    Můžu se zeptat ještě na jednu věc? Existuje na Linuxu něco jako Universal Binary? Rád bych knihovnu pro Linux přeložil rovnou jak pro 32-bit, tak i pro 64-bit. Lze to nějak zařídit, nebo je třeba mít ty knihovny dvě - pro každou variantu zvlášť?

    Konkrétně bych dosáhl něčeho obdobného tomuto:
    Algis-Companion:Sample marian$ file libExport.dylib
    libExport.dylib: Mach-O universal binary with 4 architectures
    libExport.dylib (for architecture i386):	Mach-O dynamically linked shared library i386
    libExport.dylib (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
    libExport.dylib (for architecture ppc7400):	Mach-O dynamically linked shared library ppc
    libExport.dylib (for architecture ppc64):	Mach-O 64-bit dynamically linked shared library ppc64
    
    I'm a firestarter, twisted firestarter...

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.