Dev

Tryton ERP Update unter Debian 5.0 “Lenny” von 1.2 auf 1.4

Tryton ERP Update unter Debian 5.0 “Lenny” von 1.2 auf 1.4

Die Informationen über ein Update habe ich nicht recherchieren können. Timitos war so nett mir auf die Sprünge zu helfen.
http://tryton.origo.ethz.ch/node/204
Ebenfalls hilfreich war dieser http://wiki.ubuntuusers.de/Tryton#Update Artikel.

Man sollte eine EXTERNE Sicherung vom kompletten Ordner anlegen :-) . Das Backupen der Datenbank spare ich mir. Ich werde dafür bald einen eigenen Artikel schreiben.

/etc/init.d/trytond stop
cd /usr/local/tryton/
tar cfz tryton_bck.tgz *

jetzt den Ordner leeren

cd /usr/local/tryton/
rm -r *

nun brauchen wir wieder das updatescript

cd /usr/local/tryton
wget http://hg.tryton.org/hgwebdir.cgi/tryton-dev/raw-file/tip/tryton-dev.sh
chmod +x tryton-dev.sh
./tryton-dev.sh -b 1.4

Danach sollte man noch die Datenbank auf den neuen Stand bringen und den Dienst neustarten. Das erledigt man mit

/usr/local/tryton/trytond/bin/trytond -u all -d 
/etc/init.d/trytond restart

Viel Spaß :-) mit der 1.4

Codeigniter per Konsole bzw. php-cli

Codeigniter per Konsole bzw. php-cli

Hab hier ein cooles Script gefunden um CI auf der Konsole auszuführen.

http://benjaminmock.de/codeigniter-auf-der-konsole-kommandozeile/

Codeigniter mod_rewrite

Codeigniter mod_rewrite

Hier ist der Src für die .htaccess diese legt man einfach ins Stammverzeichnis.
Wenn CI z.b. unter http://localhost/codeigniter liegt muss man die RewriteBase anpassen und statt
RewriteBase / ändern in
RewriteBase /codeigniter/


    RewriteEngine On
    RewriteBase /

    #Removes access to the system folder by users.
    #Additionally this will allow you to create a System.php controller,
    #previously this would not have been possible.
    #'system' can be replaced if you have renamed your system folder.
    RewriteCond %{REQUEST_URI} ^system.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]

    #Checks to see if the user is attempting to access a valid file,
    #such as an image or css document, if this isn't true it sends the
    #request to index.php
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]



    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    # Submitted by: ElliotHaughin

    ErrorDocument 404 /index.php

Jetzt muss man folgende Änderungen in der system/application/config/config.php vornehmen

#$config['index_page'] = "index.php";
$config['index_page'] = "";
...
#$config['rewrite_short_tags'] = FALSE;
$config['rewrite_short_tags'] = TRUE;

Das wars

Automatische config[base_url] bei Codeigniter

Automatische config[base_url] bei Codeigniter

Mit diesem Snippet konfiguriert sich die $config['base_url'] automatisch

$config['base_url'] = "http://".$_SERVER['HTTP_HOST'] . preg_replace('@/+$@','',dirname($_SERVER['SCRIPT_NAME'])).'/';

Quelle: http://www.includemedia.de/de/magazin/codeigniter-erste-schritte/

Asterisk 1.6 mit Freepbx in 5 Minuten :-)

Asterisk 1.6 mit Freepbx in 5 Minuten :-)

Ich habe hier einen genialen Installer gefunden. Probiert habe ich es auf Debian Lenny. Ganz unten sollte man die IP 192.168.1.101 durch seine eigene ersetzen BEVOR man das Script startet sonst muss man es manuel einfügen.

Tryton ERP unter Debian 5.0 “Lenny” (Quick & Dirty) für Anwender :-)

Tryton ERP unter Debian 5.0 “Lenny” (Quick & Dirty) für Anwender :-)

Dieser Artikel bezieht sich auf Tryton 1.2

aptitude install mercurial postgresql

Jetzt müssen wir noch den Datenbankserver absichern

su postgres
psql -c "ALTER ROLE postgres WITH PASSWORD 'dbpasswd';"
exit

Und da der Server nur local lauschen soll noch schnell unter

vim /etc/postgresql/8.3/main/postgresql.conf
listen_addresses = 'localhost'

und IPv6 auskommentieren

vim /etc/postgresql/8.3/main/pg_hba.conf
# host    all         all         ::1/128               md5

Nun starten wir den postgresqlserver neu und schauen ob er lokal lauscht.

/etc/init.d/postgresql-8.3 restart
netstat -taupen
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      102        17456       4273/postgres

Wir brauchen natürlich noch einen tryton user und einen datenbankaccount

adduser --no-create-home --system --group tryton
mkdir /usr/local/tryton
chown -R tryton:tryton /usr/local/tryton
su postgres -c "createuser --createdb --no-adduser -P tryton"
Geben Sie das Passwort der neuen Rolle ein:passwd
Geben Sie es noch einmal ein:passwd
Soll die neue Rolle weitere neue Rollen erzeugen dürfen? (j/n) n

Es ist an der Zeit Tryton herunterzuladen

cd /usr/local/tryton
wget http://hg.tryton.org/hgwebdir.cgi/tryton-dev/raw-file/tip/tryton-dev.sh
chmod +x tryton-dev.sh
./tryton-dev.sh -b 1.2

Das ganze dauert jetzt ein bisschen :-) *kaffee*
Jetzt lösen wir noch ein paar Abhängigkeiten auf

aptitude install python-psycopg2 python-lxml python-setuptools python-beautifulsoup python-vobject python-tz python-ldap python-yaml python-cairo python-pycha
easy_install -U setuptools
easy_install relatorio
easy_install PyWebDAV

Das müsste es gewesen sein.
Natürlich muss jetzt noch die Konfigruationsdatei angepasst werden. Nach diesem Tutorial findet man Sie unter

vim /usr/local/tryton/trytond/etc/trytond.conf
# das Pw von su postgres -c "createuser --createdb --no-adduser -P tryton"
db_host = localhost
db_user = tryton
db_password = pass
admin_passwd = topsecret
data_path = /var/lib/trytond
logfile = /var/log/trytond.log

Noch ein paar Verzeichnisse

touch /var/log/trytond.log
chown tryton:tryton /var/log/trytond.log
mkdir /var/lib/trytond
chown -R tryton:tryton /var/lib/trytond

Nun können wir den Server zum ersten mal starten

cd /usr/local/tryton/trytond/bin
./trytond
[Sun Oct 04 23:11:25 2009] DEBUG:psycopg2:installed. Logging using Python logging module
[Sun Oct 04 23:11:26 2009] INFO:server:waiting for connections...

Mit Strg+c könnt ihr den Server beenden (dirty)
Wir bräuchen nämlich noch ein Startscript
Leider blockiert wget den download deswegen hör ich jetz auf
#http://groups.google.com/group/tryton/web/debian_sample_initscripts.tar.bz2

Ab diesem Punkt gibt es genug andere Docs :-) 
#http://debian.asconix.com/tryton-debian-lenny-howto
#http://tryton.origo.ethz.ch/wiki/doc

Asterisk 1.4 mit Mbrola und txt2pho

Asterisk 1.4 mit Mbrola und txt2pho

Hi,

heute versuche ich Mbrola mit Asterisk zu vereinen. :-)

apt-get install mbrola mbrola-de7
mkdir /usr/local/txt2pho

http://www.ikp.uni-bonn.de/forschung/phonetik/sprachsynthese/txt2pho/txt2pho.zip

unzip txt2pho.zip

txt2pho muss auf die Sprachdatei zugreifen können und ausführbar sein

ln -s /usr/share/mbrola/voices/de7 /usr/local/txt2pho/data/de7
chmod +x /usr/local/txt2pho/txt2pho
chmod +x /usr/local/txt2pho/pipefilt/pipefilt
ln -s /usr/local/txt2pho/txt2pho /usr/bin/txt2pho
ln -s /usr/local/txt2pho/pipefilt/pipefilt /usr/bin/pipefilt

Nun muss noch die txt2phorc angepasst werden

cp /usr/local/txt2pho/txt2phorc $HOME/.txt2phorc

Folgende Einträge müssen geändert werden

vim .txt2phorc
DATAPATH=/usr/local/txt2pho/data/
INVPATH=/usr/local/txt2pho/data/

Jetz einfauch per SSH neu einloggen und dann folgenden Befehl ausprobieren

echo "Hallo Welt" | txt2pho > test.pho | mbrola /usr/local/txt2pho/data/de7 test.pho test.wav

für die Integration in Asterisk einfach einen Testordner anlegen

mkdir /usr/share/asterisk/sounds/mbrola
chown asterisk:asterisk /usr/share/asterisk/sounds/mbrola

in der extensions.conf…

exten => s,1,Answer()
exten => s,n(ansage),System(rm /usr/share/asterisk/sounds/mbrola/test.gsm)
exten => s,n,System(echo "Hallo Welt" | txt2pho > /tmp/test.pho | mbrola /usr/local/txt2pho/data/de7 /tmp/test.pho /tmp/test.wav)
exten => s,n,System(sox /tmp/test.wav /usr/share/asterisk/sounds/mbrola/test.gsm)
exten => s,n(ansage),Playback(mbrola/test)
Asterisk meets Base(E-Plus) 1. Quickstart

Asterisk meets Base(E-Plus) 1. Quickstart

Zielsetzung:

IVR-System (Interactive Voice Response) für ein Handy mit Festnetzflatrate. Auf Deutsch eben eine nettes Sprachmenü für alle Anrufer mit Wartemusik und der Möglichkeit eine Nachricht zu hinterlassen.

Vorrausetzungen:

  • Server: Debian
  • Handy: mit Festnetzflatrate
  • VoIP: Account bei Sipgate.de mit lokaler Festnetznummer

1. Installation:

Ich benutze die “alten” Debianquellen….Weil es funktioniert und ich keine Lust habe bei einem Securitypatch alle Asteriskboxen neu zu übersetzen…

aptitude install asterisk
cd /etc/asterisk

Da es öfter vorkommt das man ausversehen Configs löscht lege ich so eine Sicherung an.

mkdir backup
cp * backup/

2. Die ersten Wählversuche

Die Dateien sip.conf und extensions.conf einfach leeren und folgendes eintragen.
sip.conf

;Quelle: http://www.martins-kabuff.de/blog/?id=47107d1919395
[general]
port = 5060
bindaddr = 0.0.0.0
context = default
disallow=all
allow=gsm
allow=ulaw
allow=alaw
language=de
register => 12345:XXX@sipgate.de/12345

[sipgate-out]
type=peer
username=12345
fromuser=12345
secret=WVP7NE
host=sipgate.de
fromdomain=sipgate.de
insecure=very
canreinvite=no
nat=no
disallow=all
allow=ulaw

[sipgate-in]
type=peer
fromdomain=sipgate.de
host=sipgate.de
context=sip-in

[100]
type=friend
secret=secret123
host=dynamic

Die 2. Datei, die wir benötigen ist die
extensions.conf

[general]
autofallthrough=yes

[default]
exten => 100,1,Dial(SIP/100)
exten => 0721FESTNETZNUMMER,1,Dial(SIP/100)

exten => _X.,1,SetCallerID(12345)
exten => _X.,2,Dial(SIP/${EXTEN}@sipgate-out,,r)

[sip-in]
exten =>12345,1,Dial(SIP/100)

Jetzt kann man sich mit einem Softphone bzw. Sipclient anmelden und ist sogar unter der Handynummer erreichbar

Soweit so gut :-) leider fehlen jetzt noch Callthrough und Callback