sobota 17. března 2012

VOIP a levné volání (nejen) přes Android

Spousta z Vás určitě ví, co VOIP neboli Voice over Internet Protocol znamená a jak funguje, někteří však tento pojem slyší poprvé. Jednoduše přeloženo jde o volání přes internet. Nejedná se ale o službu jako např. Skype, ale o regulérní náhradu pevné linky - nemusím mít zapnutý počítač abych mohl telefonovat. Pro laika je tedy podstatné to, že se pro něj kromě telefonního čísla (a i to lze za příplatek převést) v podstatě nic nemění. Jen ten kabel od telefonu povede místo do telefonní zásuvky do switche s internetem. Pro VOIP existuje několik poskytovatelů, liší se zejména cenou a spolehlivostí.


Jaké jsou tedy hlavní výhody VOIP obecně?

  • pro laika žádná změna, stále ten samý telefon jaký měl doposud
  • žádné měsíční poplatky, máte předplacený kredit a kolik provoláte, tolik provoláte
  • velmi nízké ceny, volání na mobilní operátory se pohybují od 1,50 Kč/min, volání na pevnou linku od 40 haléřů/min
  • snad všude je účtování po vteřinách, voláte 5 vteřin, zaplatíte 5 vteřin
  • dostupnost zmeškaných hovorů, volaných čísel atp. na internetu
  • kromě volání z "pevného" telefonu můžete ze svého účtu volat přes PC, mobil... odkudkoliv, kde je internet
  • volání mezi čísly od stejného poskytovatele bývá zdarma
  • na jeden účet možnost více telefonních čísel
Pokud Vás tedy zajímá převod standardní pevné linky na VOIP, existují 2 varianty. První variantou je pořídit si VOIP telefon, do kterého rovnou připojíte kabel s internetem. Druhou variantou je ponechat si stávající telefon a spojení s internetem zařídit speciální "krabičkou". Většinou bývá nákup tohoto zařízení kompenzován nabitím kreditu v jeho ceně. Koupím zařízení za 1000 Kč a poskytovatel mi na účet připíše kredit 1000 Kč, který můžu provolat skoro v neomezeném čase. My máme doma VOIP více než 5 let a kredit 2 400 Kč došel teprv před pár měsíci. Zkuste si spočítat kolik zaplatíte O2 jen za to, že máte jejich telefonní číslo - dělalo to zhruba 300 Kč měsíčně.
Tímto bych ukončil sekci vhodnou především pro technicky méně zdatné.

VOIP a volání přes Android
Volat přes VOIP jde s libovolným klientem podporujícím SIP, podstatné je mít přístup k internetu. Je tedy jedno, jestli budeme telefonovat z pevné linky, PC, chytrého telefonu... navenek se volanému zobrazí vždy stejné telefonní číslo.
Na mém telefonu s Androidem jsem vyzkoušel aplikaci CSipSimple, která mě nadchla svojí integrací s telefonem. Aplikace disponuje rozsáhlými možnostmi nastavení:

  • možnost více VOIP účtů
  • volby kdy a na jakým způsobem má být SIP připojený k síti
  • kodeky a nastavení vyzvánění
  • možnost nastavit uživatelské rozhraní
  • filtry pro telefonní čísla
V mém případě mám nastaveno to, že při připojení přes wifi mi telefon nabídne před vytočením kontaktu, zda má volat přes VOIP nebo použít mobil.

    pondělí 5. prosince 2011

    Přejmenování fotek podle data a času v EXIF

    Automatické otočení fotek a následné přejmenování podle data a času v exif.

    jhead -autorot -ft -nf%y%m%d-%H%M%S *

    pondělí 21. listopadu 2011

    KMix je při přihlášení ztlumený

    https://bugs.kde.org/show_bug.cgi?id=249180

    1. smazat .kde4/share/config/kmixrc
    2. odstranit zaškrtnutí v KMix "Obnovit hlasitost při přihlášení" (funguje to opačně :-/ )

    pátek 11. listopadu 2011

    Jak zprovoznit JTAG pro Quartus II a Nios

    Ověřeno pro vývojový kit Altera DE2-70.


    Vytvoříme pravidlo pro udev
    $ nano /etc/udev/rules.d/51-usbblaster.rules


    # USB-Blaster
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6001", MODE="0666"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6002", MODE="0666"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6003", MODE="0666"

    Načteme znovu udev pravidla
    $ udevadm control --reload-rule

    Dále provedeme následující
    $ mkdir /etc/jtagd
    $ cp /opt/altera/11.0/quartus/linux/pgm_parts.txt /etc/jtagd/jtagd.pgm_parts

    Spustíme Nios2 Command Shell
    $ /opt/altera/11.0/nios2eds/nios2_command_shell.sh 

    ------------------------------------------------
    Altera Nios2 Command Shell [GCC 4]

    Version 11.0, Build 157
    ------------------------------------------------

    $ jtagconfig --enum
    1) USB-Blaster [2-1.2]
      020B60DD   EP2C70

    $ killall jtagd
    $ jtagd

    Nahrajeme .sof soubor
    $ nios2-configure-sof nios2_quartus2_project_time_limited.sof

    Tento projekt má omezení kvůli licenci, proto v Quartusu by při nahrání vyskočila hláška:
    "Click Cancel to stop using OpenCore Plus IP"
    Nesmíme dát Cancel, pokud chceme do Niosu nahrávat!
    V konzoli se nám výpis obdobně zastaví, můžeme pak ukončit písmenem "q".
    Zatím neukončujeme a proces si buď dáme na pozadí abychom mohli psát další příkazy nebo otevřeme další okno terminálu.

    Info: SRAM Object File ./nios2_quartus2_project_time_limited.sof contains time-limited megafunction that supports OpenCore Plus feature -- Vendor: 0x6AF7, Product: 0x00A2
    Info: *******************************************************************                                                                
    Info: Running Quartus II Programmer
    Info: Command: quartus_pgm --no_banner --mode=jtag -o p;./nios2_quartus2_project_time_limited.sof
    Info: Using programming cable "USB-Blaster [2-1.2]"
    Info: Using programming file ./nios2_quartus2_project_time_limited.sof with checksum 0x007F2952 for device EP2C70F896@1
    Info: Started Programmer operation at Sat Nov 12 00:32:51 2011
    Info: Configuring device index 1
    Info: Device 1 contains JTAG ID code 0x020B60DD
    Info: Configuration succeeded -- 1 device(s) configured
    Info: Successfully performed operation(s)
    Info: Ended Programmer operation at Sat Nov 12 00:32:54 2011
    Info: Quartus II Programmer was successful. 0 errors, 0 warnings
        Info: Peak virtual memory: 101 megabytes
        Info: Processing ended: Sat Nov 12 00:32:57 2011
        Info: Elapsed time: 00:00:06
        Info: Total CPU time (on all processors): 00:00:00
    Please enter i for info and q to quit:

    Poté nahrajeme .elf soubor
    $ nios2-download count_binary.elf 

    Using cable "USB-Blaster [2-1.2]", device 1, instance 0x00
    Pausing target processor: OK
    Initializing CPU cache (if present)
    OK
    Downloaded 12KB in 0.0s
    Verified OK
    Leaving target processor paused

    Nyní se vrátíme k nahrávání .sof a zmačkneme "q" (obdoba Cancel v Quartus II)
    Please enter i for info and q to quit: q
    Info: Quartus II Programmer was successful. 0 errors, 0 warnings
        Info: Peak virtual memory: 101 megabytes
        Info: Processing ended: Sat Nov 12 00:43:26 2011
        Info: Elapsed time: 00:04:12
        Info: Total CPU time (on all processors): 00:00:00

    sobota 24. září 2011

    Kompilace optimalizovaného jádra bez initrd

    Pro kompilaci jádra optimalizovaného přímo pro konkrétní hardware, bez potřeby initrd slouží následující postup:

    1. rozbalit zdrojáky
    2. stáhnout si dodatečné patche pro Archlinux z AURu
    3. patch -Np1 -i alps-v3-protocol-support-v1.patch ...
    4. make localyesconfig - vybere v config pouze takové volby, které jsou potřebné pro použií aktuálně zavedených modulů. Proto je nejlepší zapojit a zapnout všechny zařízení, zasunout flashdisk, pustit wifi a bluetooth... Všechny volby jsou nastavené jako součást jádra, ne jako moduly.
    5. make menuconfig - nastavíme ručně další potřebné volby

    CONFIG_BLK_DEV_SD=y - pro správné zavedení SATA disku bez initrd
    CONFIG_EXT4_FS=y - podpora EXT4
    CONFIG_TUN=y - pro virtualizaci (Universal TUN/TAP device driver)
    CONFIG_BRIDGE=y - pro virtualizaci (802.1d Ethernet Bridging)

    Pro notebook a jeho řízení frekvence nastavíme default power-governor na "ondemand" a přidáme do jádra i možnosti "powersave", "conservative" a "performance".

    6. make -j5 - zkompilujeme s volbou pro 4 jádra
    7. make modules_install - nainstalujeme moduly (asi jeden :))
    8. cp arch/x86_64/boot/bzImage /boot/vmlinuz-linux-mainline-dell
    9. upravíme záznam v Grubu

    úterý 6. září 2011

    Canon bez USB Mass Storage

    Pro připojení fotoaparátu Canon bez podpory USB Mass Storage je v prostředí KDE nutné nainstalovat balík kdegraphics-kamera jinak to hází chybu:

    URL cannot be listed
    camera:/

    Gwenview potřebuje /usr/lib/kde4/kio_kamera.so a /usr/share/kde4/services/camera.protocol pro protokol camera:/ . Po nainstalování balíku lze normálně importovat fotky nebo prohlížet obsah karty.

    Dell Latitude E6410 a touchpad ALPS v linuxu

    Dell Latitude používá ALPS touchpad, který linux standardně nerozpozná. Funguje jen pohyb kursoru a kliknutí.
    Pro úplnou funkčnost je potřeba použít patch jádra, následně začnou fungovat multi-touch gesta a další vlastnosti. V KDE lze touchpad pohodlně konfigurovat v KCM pomocí balíku kcm_touchpad.
    Zde je odkaz na bugzillu, zabývající se touchpadem ALPS.