Computerei

Donnerstag, 24. März 2011

QNAP: Xdove Mailbackup auf Samba-Share

Xdove auf dem QNAP sieht zwar ein zeitgesteuertes Backup des IMAP-Servers vor. Dies ist zu konfigurieren unter http://qnapserver/xdove. Hin und wieder ist hier alles mit einem roten Kreut versehen (auch wenn der IMAP-Server ganz normal funktioniert). Dann ist ein Server-Neustart nötig via /etc/init.d/xdove.sh restart
Dieses Backup landet aber in /share/MD0_DATA/.qpkg/XDove/xdove/archives/. Falls man eine externe Platte mit der eingebauten QNAP-Backup-Funktion nutzt, werden hier jedoch nur Windows-Samba-Shares gesichert.

Um diese beiden Backup-Funktionen zu vereinen, erweitert man das Skript /share/MD0_DATA/.qpkg/XDove/bin-utils/xdove-backup.sh umfolgende Zeilen (mit einem Samba-Share "Data" mit Unterverzeichnis "Mailarchiv"):

## hinter die Zeile mit: RESTORE_FILES=""
# variables for backup to external harddisk backuping SMB share
EXT_BACKUP_SHARE="Data/Mailarchiv"
EXT_BACKUP_ARCHIVE="latest_xdove_archive"

## hinter die Zeile mit: cd ${QPKG_INSTALL_PATH}/${QPKG_NAME}/${ARCHIVE_DIR}
# link latest archive to SMB share for backup to external disk
rm ${QPKG_BASE}/${EXT_BACKUP_SHARE}/${EXT_BACKUP_ARCHIVE}
ln -s ${QPKG_INSTALL_PATH}/${QPKG_NAME}/${ARCHIVE_DIR}/${ARCHIVE_NAME} ${QPKG_BASE}/${EXT_BACKUP_SHARE}/${EXT_BACKUP_ARCHIVE}

Sonntag, 20. März 2011

QNAP 419P+ mit XDove 1.3 auf Firmware 3.4

Bei der Auslieferung der Firmware 3.4.0 Build 0212T für das NAS QNAP TS-419P+ wurde die Konfiguration für XDove nicht korrekt angepasst.

Im QPKG wird XDove 1.3 mit Dovecot 1.2.9 angeboten. Die damit installierte Config ist jedoch nur für Dovecot 1.1.x gültig.

Daher muss per Hand die Datei /share/MD0_DATA/.qpkg/XDove/dovecot/etc/dovecot/dovecot.conf angepasst werden:

#ssl_disable = yes
ssl = no

und
#login_greeting_capability = yes

Bei der Fehlersuche können helfen:
cat /var/log/dovecot/dovecot-info.log
cat /var/log/dovecot/dovecot.log

Sonntag, 13. März 2011

QNAP: Autostart (autorun.sh) flash-schonend

Eigene Applikationen beim Reboot/Boot automatisch zu starten kann man beim QNAP TS-419-P+ über die autorun.sh steuern, wie im QNAP Wiki beschrieben.

Einzig der dort vorgeschlagene Ort ist etwas versteckt.
meine autorun.sh sieht deshalb so aus:

#!/bin/sh
/mnt/HDA_ROOT/myautorun.sh


Auf /share/MD0_DATA liegen eher Applikation, auf /mnt/HD0_ROOT liegen Systemdateien.

Verlagernd in eine andere Batch-Datei sollte man die autorun.sh in jedem Fall, um bei häufigem Editieren den Flash zu schonen.

Samstag, 5. März 2011

QNAP - SAMBA-Zugriff von Linux Ubuntu aus

Auf meinem QNAP TS-419-P+ möchte ich ressourcensparend nicht einen SMB- und einen NFS-Server parallel laufen lassen. Da ich durch Windows-Clients auf SAMBA angewiesen bin, möchte ich NFS deaktivieren und von Linux-, insbesondere Ubuntu-Clients auf die SMB-Shares zugreifen.

Komischerweise hatte mit der Grundinstallation ein Zugriff von Windows 7 aus funktioniert, der Ubuntu-Client lieferte jedoch "permission denied". Zur Fehleranalyse habe ich auf dem QNAP unter "System Administration -> System Logs -> System Connection Logs" das Logging für "all Events" aktiviert. Dann fährt die CPU-Last zwar auf über 50% bei jedem SMB-Zugriff. Aber man sieht sofort, welche Zugriffe versucht werden.

Ergebnis ist:
  • Auf dem QNAP ist unter "Network Services -> Microsoft Networking -> Advanced Options" die Option "Allow only NTLMv2 authentication".
  • Windows 7 nutzt NTMv2.
  • Bei Ubuntu und auf dem Asus eeePC 701 ist NTLMv2 standardmässig nicht aktiv.
  • Der Samba-Client unter Linux lässt sich mit einer zusätzlichen Konfigurationszeile zur Nutzung von NTLMv2 bewegen (unter Ubuntu /etc/samba/smb.conf):client ntlmv2 auth = yes

Donnerstag, 3. Februar 2011

Cisco IP-Phone 7960 an Fritzbox

Das Cisco 7960 ist ein älteres SIP-Phones, das sechs SIP-Accounts parallel unterstützt. Dazu muss allerdings eine SIP- und keine SCCP-Firmware aufgespielt sein.

Die Konfiguration bezieht es dann von einem TFTP-Server im selben Subnetz.
Zunächst sucht es nach der Datei SIPDefault.cnf. Auch wenn alle anderen telefonspezifische Dateien in einem Unterordner auf dem TFTP-Server liegen können, so muss diese Datei im Hauptverzeichnis liegen.

DIPDefault.cnf könnte so aussehen:


# SIP Default Generic Configuration File
# Registrar FRITZ!Box 7270

# Image Version
# image_version: P0S3-8-12-00 Auskommentiert da SIP Firmware schon geladen ist

# Proxy Server Nichtbenötigte auskommentiert
proxy1_address: "<IP der Fritzbox>" ; Can be dotted IP or FQDN
# proxy2_address: "" ; Can be dotted IP or FQDN
# proxy3_address: "" ; Can be dotted IP or FQDN
# proxy4_address: "" ; Can be dotted IP or FQDN
# proxy5_address: "" ; Can be dotted IP or FQDN
# proxy6_address: "" ; Can be dotted IP or FQDN

# Proxy Server Port (default - 5060) Nichtbenötigte auskommentiert
proxy1_port: 5060
# proxy2_port: 5060
# proxy3_port: 5060
# proxy4_port: 5060
# proxy5_port: 5060
# proxy6_port: 5060

# Proxy Registration (0-disable (default), 1-enable)
proxy_register: 1

# Phone Registration Expiration [1-3932100 sec] (Default - 3600)
timer_register_expires: 3600

# Codec for media stream (g711ulaw (default), g711alaw, g729a)
preferred_codec: "g711alaw"

# TOS bits in media stream [0-5] (Default - 5)
tos_media: 5

# Inband DTMF Settings (0-disable, 1-enable (default))
dtmf_inband: 1

# Out of band DTMF Settings (none-disable, avt-avt enable (default), avt_always - always avt )
dtmf_outofband: "0"

# DTMF dB Level Settings (1-6dB down, 2-3db down, 3-nominal (default), 4-3db up, 5-6dB up)
dtmf_db_level: 3

# SIP Timers
timer_t1: 500 ; Default 500 msec
timer_t2: 4000 ; Default 4 sec
sip_retx: 10 ; Default 10
sip_invite_retx: 6 ; Default 6
timer_invite_expires: 180 ; Default 180 sec

####### New Parameters added in Release 2.0 #######

# template (.xml format file relative to the TFTP root directory)
# dial_template: dialplan Auskommentiert, da keine dialplan.xml da ist

# TFTP Phone Specific Configuration File Directory
tftp_cfg_dir: "./cisco7960/" ; Example: ./sip_phone/

# Time Server (There are multiple values and configurations refer to Admin Guide for Specifics)
sntp_server: "ntp.sipgate.net" ; SNTP Server IP Address
sntp_mode: directedbroadcast ; unicast, multicast, anycast, or directedbroadcast (default)
time_zone: CET ; Time Zone Phone is in
dst_offset: 1 ; Offset from Phone's time when DST is in effect
dst_start_month: April ; Month in which DST starts
dst_start_day: "" ; Day of month in which DST starts
dst_start_day_of_week: Sun ; Day of week in which DST starts
dst_start_week_of_month: 1 ; Week of month in which DST starts
dst_start_time: 02 ; Time of day in which DST starts
dst_stop_month: Oct ; Month in which DST stops
dst_stop_day: "" ; Day of month in which DST stops
dst_stop_day_of_week: Sunday ; Day of week in which DST stops
dst_stop_week_of_month: 8 ; Week of month in which DST stops 8=last week of month
dst_stop_time: 2 ; Time of day in which DST stops
dst_auto_adjust: 1 ; Enable(1-Default)/Disable(0) DST automatic adjustment
time_format_24hr: 1 ; Enable(1 - 24Hr Default)/Disable(0 - 12Hr)

# Do Not Disturb Control (0-off, 1-on, 2-off with no user control, 3-on with no user control)
dnd_control: 0 ; Default 0 (Do Not Disturb feature is off)

# Caller ID Blocking (0-disbaled, 1-enabled, 2-disabled no user control, 3-enabled no user control)
callerid_blocking: 0 ; Default 0 (Disable sending all calls as anonymous)

# Anonymous Call Blocking (0-disabled, 1-enabled, 2-disabled no user control, 3-enabled no user control)
anonymous_call_block: 0 ; Default 0 (Disable blocking of anonymous calls)

# DTMF AVT Payload (Dynamic payload range for AVT tones - 96-127)
dtmf_avt_payload: 101 ; Default 101

# Sync value of the phone used for remote reset
sync: 1 ; Default 1

####### New Parameters added in Release 2.1 #######

# Backup Proxy Support
proxy_backup: "" ; Dotted IP of Backup Proxy
proxy_backup_port: 5060 ; Backup Proxy port (default is 5060)

# Emergency Proxy Support
proxy_emergency: "<IP der Fritzbox>" ; Dotted IP of Emergency Proxy
proxy_emergency_port: 5060 ; Emergency Proxy port (default is 5060)

# Configurable VAD option
enable_vad: 0 ; VAD setting 0-disable (Default), 1-enable

####### New Parameters added in Release 2.2 ######

# NAT/Firewall Traversal
nat_enable: 0 ; 0-Disabled (default), 1-Enabled
# nat_address: "" ; WAN IP address of NAT box (dotted IP or DNS A record only)
# voip_control_port: 5060 ; UDP port used for SIP messages (default - 5060)
# start_media_port: 16384 ; Start RTP range for media (default - 16384)
# end_media_port: 32766 ; End RTP range for media (default - 32766)
# nat_received_processing: 1 ; 0-Disabled (default), 1-Enabled

# Outbound Proxy Support
outbound_proxy: "<IP der Fritzbox>" ; restricted to dotted IP or DNS A record only
outbound_proxy_port: 5060 ; default is 5060

####### New Parameter added in Release 3.0 #######

# Allow for the bridge on a 3way call to join remaining parties upon hangup
cnf_join_enable : 0 ; 0-Disabled, 1-Enabled (default)

####### New Parameters added in Release 3.1 #######

# Allow Transfer to be completed while target phone is still ringing
semi_attended_transfer: 0 ; 0-Disabled, 1-Enabled (default)

# Telnet Level (enable or disable the ability to telnet into the phone)
telnet_level: 2 ; 0-Disabled (default), 1-Enabled, 2-Privileged

####### New Parameters added in Release 4.0 #######

# XML URLs
services_url: "http://webserver/cisco7960/cisco7960services.xml" ; URL for external Phone Services
directory_url: "" ; URL for external Directory location
logo_url: "http://webserver/cisco7960/logo.bmp" ; URL for image

# HTTP Proxy Support
http_proxy_addr: "" ; Address of HTTP Proxy server
http_proxy_port: 80 ; Port of HTTP Proxy Server (80-default)

# Dynamic DNS/TFTP Support
dyn_dns_addr_1: "<IP der Fritzbox>" ; restricted to dotted IP
dyn_dns_addr_2: "" ; restricted to dotted IP
dyn_tftp_addr: "<IP des TFTP-Servers>" ; restricted to dotted IP

# Remote Party ID
remote_party_id: 0 ; 0-Disabled (default), 1-Enabled

####### New Parameters added in Release 4.4 #######

# Call Hold Ringback (0-off, 1-on, 2-off with no user control, 3-on with no user control)
call_hold_ringback: 0 ; Default 0 (Call Hold Ringback feature is off)

####### New Parameters added in Release 6.0 #######

# Dialtone Stutter for MWI
stutter_msg_waiting: 1 ; 0-Disabled (default), 1-Enabled

# RTP Call Statistics (SIP BYE/200 OK message exchange)
call_stats: 1 ; 0-Disabled (default), 1-Enabled

# Setting for Message speeddial to UOne box
# Belegung mit der FritzBox Voice Mail Nummer
messages_uri: "**600"


logo_url
sollte dabei auf ein BMP der Maße 90x56 mit 256 Graustufen zeigen. Als Farben sollten genutzt werden: #000000 (schwarz), #FFFFFF (weiss), #404040 (grau) und #808080 (hellgrau).
services_url zeigt auf ein TXT oder XML. Der Aufbau des XML ist bei IBM ganz gut beschrieben.

Im Unterverzeichnis "./cisco7960" auf dem TFTP-Server kann jetzt pro Telefon eine Datei SIP<Mac>.cnf abgelegt werden.
Weiterhin sucht das Telefon nach einer optionale RingList.xml. Diese ist auf den Cisco-Seiten sehr gut beschrieben.

Sonntag, 4. Juli 2010

Fehler in der VCARD-Import-Implementierung von Outlook 2007

Ein paar Experimente mit dem Import von VCARDs haben mir gezeigt, was andere auch schon festgestellt haben:
Microsoft hat in Outlook den VCARD-Import nicht 100% spezifikationskonform implementiert.

So habe ich versucht, Visitenkarten im VCARD 2.1-Format zu importieren.

Dabei sind mir folgende Unstimmigkeiten aufgefallen:
  1. Outlook ignoriert Zeilen, die mit "CATEGORIES" beginnen.
  2. Outlook erwartet bei einem eingebetteten PHOTO das "ENCODING=b", obwohl dies nur für VCARDS 3.0 gilt, und ignoriert ENCODING=BASE64
  3. Bei der Angabe eines CHARSET achtet Outlook auf Groß- und Kleinschreibung (case-sensitive), ignoriert jedoch "UTF-8" und versteht nur "utf-8".
Bestätigungen und Widersprüche als Kommentar zu diesem Blog-Eintrag sind willkommen.

Sonntag, 21. März 2010

SCRUM: unterpriorisieren von unverstandenen Anforderungen im Product Backlog birgt Risiko

In agilen Software-Entwicklungsmethoden, wie SCRUM oder XP, wird häufig empfohlen, das zuerst zu tun, bei dem genau klar ist, was zu tun ist.
Das klingt zunächst gut, da dann sichergestellt ist, dass alle Ihre Aufgabe genau kennen und die Umsetzbarkeit und Umsetzungsaufwand abschätzen können.

Konsequenz dieses Vorgehens ist jedoch, dass die vage und unpräzise formulierten Anforderungen bzw. die Anforderungen, bei denen das genaue Ziel noch unklar ist, unterpriorisiert werden.
Einerseits mag in den Anforderungen, bei denen selbst der Anforderer nicht genau weiss, was er will, kein großes Gewicht liegen. Wenn der Anforderer nicht genau weiss, was er will, lässt er sich ggf. auch schneller davon überzeugen, dass er die Umsetzung dieser schwammig formulierten Anforderung vielleicht gar nicht braucht.
So wird für dieses Vorgehen gerne damit geworben, dass über eine solche Priorisierung die Anforderungen mit dem höchsten Nutzen zuerst implementiert werden. Am Ende eines Projektes bleiben dann nur noch Anforderungen mit hohem Aufwand aber vergleichsweise niedrigem Nutzen zurück, die notfalls auch komplett fallengelassen werden können.

Dieser Sichtweise steht aber die Behandlung besonders komplexer Anforderungen gegenüber. Dies sind diejenigen, die zu Beginn eines Projektes niemand so genau beschreiben kann. Bei diesen Anforderungen wäre zunächst weitere Planungszeit nötig, um sie präziser zu formulieren und in kleinere Teilanforderungen zu zerschneiden.
Andererseits ist bei unverstandenen Anforderungen der Nutzen zunächst noch unklar. Zumindest besteht zunächst die Wahrnehmung, dass der Aufwand zur Lösung den (noch unbekannten) Nutzen deutlich übersteigt.
Wenn sich in einer dieser komplexen Anforderungen jedoch ein simple Lösung mit hohem Nutzen verbirgt, ist es es wert, die zusätzlich erforderliche Zeit einzuplanen, um die Anforderung besser zu verstehen. Einer solchen Anforderung (würde man sie denn trotz ihrer Komplexität erkennen) sollte Priorität eingeräumt werden.

Wir schlussfolgern daraus:
Werden nur die klar verstandenen Anforderungen hoch priorisiert, läuft man Gefahr, Zeit zu verlieren, die derzeit unverstandenen, komplexen Anforderungen mit (relativ zum Aufwand) hohem Nutzen zu identifieren und somit auch umzusetzen. Mit diesem Vorgehen kann man sogar relativ sicher sein, dass diese Anforderungen überhaupt nicht umgesetzt werden, da der Anforderungsanalyse dafür nie ausreichend Zeit eingeräumt wird.

In Kürze: Komplexe Anforderungen müssen keine unwirtschaftlichen Anforderungen sein.

Freitag, 5. März 2010

Synchronisation mit Android - eine Client-Übersicht

Ziel ist es, sein Android-Handy mit dem Server oder Desktop-PC / Laptop zu synchronisieren, ohne die Daten durch Google (Gmail etc.) schleusen zu müssen.

Man kann auf SyncML setzt. Dann ist Funambol eine gute Wahl.

Daneben gibt es aber mittlerweile noch eine ganze Reihe weiterer Sync-Dienste:


Sync über Austauschdateien auf SD-Karte. Test mit Demo-Version 1.4.6 erfolglos.
NameBeschreibungGegenseitePreis
FunambolKontakte via SyncMLbeliebiger SyncML-Server, z.B. Funambol-Android-Client muss selbst kompiliert werden
The Missing SyncKontakte und Dateien synchronisieren, in Zukunft: Kalender, Aufgaben, Notizen, SMSWindows, Mac$39,95 (1 PC), $69,95 (3 PCs)Pairing erfordert http-Verbindung zum MarkSpace-Server, funktioniert aber nicht via Wifi. Bluetooth geht erst ab Android 2.0 (Cyanogenmod wird als 1.6 deklariert) => Kein Sync
CompanionLink CL USB Sync-$39,95nur Kontakte, deutscher Android-Client nicht vollständig übersetzt. => kein Sync
Wave Labs MyLink AdvancedWindows£9,99
TouchDownE-Mail-Syncbeliebiger MS Exchange
ContactsSyncE-Mail-Syncbeliebiger MS Exchange 2007
vCardIOKontakte via VCARD-Im-/ExportVCARD-Filesderzeit nur VCARD 2.1, basiert auf altem Funambol-Code, funktioniert in seinen Grenzen aber sehr gut.
aFileSyncFile-Synchronisation via ftpbeliebiger FTP-Server-als Backup-Lösung brauchbar, kein Kontakte-Sync-Tool-Ersatz

Freitag, 25. Dezember 2009

Funambol Android Client installieren

Wer sein Android statt mit Google mit einem SyncML-Server synchronisieren will, braucht einen Syncml-Client.
Funambol bietet zum eigenen Server gleich das passende Client-Projekt für Android.

Herausforderung hierbei ist, dass die Variante, die zum Download bereitsteht, hoffnungslos veraltet ist. Kernunterschied: Die offizielle Version unterstützt nur Synchronisation der Kontakte, die Entwicklerversion unterstützt auch Kalender, Photos, ....

Daher sind folgende Schritte notwendig:
  1. Eclipse installieren
  2. Android SDK installieren
  3. Android ADT Plugin for Eclipse installieren
  4. subversion unter eclipse installieren
  5. Funambol Android-client Quellen in Eclipse einbinden
  6. ggf. xml-File an lokale Installation anpassen
  7. Android-Client kompilieren
  8. Android-Client auf Android-Gerät installieren
  9. Android-Client auf Android-Gerät konfigurieren
Die ersten drei Schritte sind hier gut erklärt.

Freitag, 16. Oktober 2009

Gute Applikationen für Android

Zu meinen Favoriten gehören:
  • *Nix Sync
  • Abduction!
  • aContacts
  • AndroMote
  • AndroZip
  • aNetshare
  • AnyCut
  • Autolock
  • Barcode Scanner
  • barcoo
  • BeeTag
  • Bubble
  • Fake Caller
  • ConnectBot
  • Draw!
  • DroidCollector
  • FBReader
  • Gmote
  • Jabiru
  • K-9 Mail
  • KeePassDroid
  • IcViewer (ältere Version ohne Adware)
  • Linda File Manager
  • Metal Detector
  • Night Clock
  • Noise Alert
  • OI File Manager
  • OpenLoopz
  • Orienteer
  • Port Scandroid
  • Ringdroid
  • Save MMS
  • Scan2PDF Mobile
  • Shazam
  • Sipdroid
  • Spare Parts
  • StudyDroid
  • Funambol Sync
  • TasKiller
  • Toddler Lock
  • TTS Service
  • VCard IO
  • Vodafone Quickcheck
  • Wheres my Droid
  • WiFi Fixer
  • Wifi Tether for Root Users
  • WifiScanner

Superwallah - IT, Innovation, Indien

Globaler Cyber-Fortschritt ist heute

Suche

 

ich

Du bist nicht angemeldet.

Wer bist Du?

Sag es mir. Und hinterlass einen Kommentar nach Lesen eines Eintrag!

Aktuelle Beiträge

Methode zur Organisation...
Ich habe auf dem 34C3 eine interessante Methode kennengelernt,...
superwallah - 3. Jan, 22:11
Filofax Personal Abmessungen
Wer eigene Filofax-Einlagen basteln möchte, muss sich...
superwallah - 3. Jan, 15:01
Sicherheit in Android...
TLS ist nur so sicher wie die Gesamtheit der Root-CAs,...
superwallah - 13. Jun, 21:30
Den richtigen Co-Working-Space...
Die moderne Welt des Arbeitens liegt im Teilen der...
superwallah - 24. Mai, 18:16
Adressen und Kalender...
Wer meinem Blog folgt, weiss, dass ich mich konsequent...
superwallah - 23. Mai, 09:36

Meine Gadgets

Gesehene Filme

Zähler

Web Counter by www.webcounter.goweb.de
Web Counter by www.webcounter.goweb.de

Status

Online seit 6395 Tagen
Zuletzt aktualisiert: 3. Jan, 22:11