[Openhorst-Firmware] Projekt Horstbox mit Asterisk 1.6 od. 1.4 (kein analog)

@datiscum
Ich weiß nicht wer das ganze mit ISDN einsetzt.
Wir wenigstens bisher nicht, auch weiß ich nicht wie der Stand von misdn V2 und dem OSLEC patch ist.Müsste erst mal untersucht werden auch welche Auswirkung das ganze auf die Performance hat

peter
 
Hallo peter,

@datiscum
Ich weiß nicht wer das ganze mit ISDN einsetzt.

Ich! :)


Und zu den Erfahrungen: mISDN funktioniert halbwegs stabil, hat aber ein paar Macken:
- Die Horstbox hängt bei mir über einen ISDN-Multiplug ("ISDN-Hub") zusammen mit dem ISDN Telefon am NTBA (nach extern). Ich realisiere darüber einen Parallelruf auf mein Handy (das ISDN-Telefon klingelt bei einem eingehenden Anruf ganz normal, und über die zweite ISDN Leitung ruft Horst parallel mein Handy).
Jetzt passiert es aber, das sich Horst hin und wieder das eingehende Telefongespräch sofort "schnappt", und das ISDN Telefon nur einmal kurz klingelt. Ich kann das Gespräch dann zwar immerhin noch auf dem Handy annehmen, aber nervig ist das schon. Das ganze ist leider auch recht wenig reproduzierbar, manchmal klappt es wie beabsichtigt manchmal passiert obiges. Mein Eindruck ist, das das Problem eher auftritt wenn die ISDN Leitung längere Zeit idle war. D.h. bei zwei aufeinander folgenden Versuchen klappt meist der zweite so wie er soll.

- Der LCR-demon beansprucht recht viel CPU-Zeit auf Horst, auch wenn er eigentlich nix zu tun hat

- Echos habe ich eigentlich eher selten (meist in Verbindung mit chan_mobile). Eine reines Forwarding über die beiden ISDN-Leitungen ist meist echofrei.

- Ich benutze den Telefonieteil *nur* als ISDN-"Router", kann also nix im Zusammenspiel mit VoIP berichten...

- Auch benutze ich (m)ISDN nur nach extern (TE), kann also auch nix zum NT Mode oder zum Anschluss von ISDN-Telefonen direkt an die Horstbox sagen.


Wegen der obigen Probleme hab ich mich mal an chan_dahdi versucht (gibt da so einen Satz Patches um zaphfc-Support reinzubekommen), da geht aber im Moment nicht viel unter Asterisk.
Eine Frage: ich lese im Zusammenhang mit dahdi immer wieder davon dass man dafür die "Intel library" (bin nicht sicher was das ist, so eine Art API für den XScale?) braucht, die es wohl für den aktuellen Kernel nicht gibt (siehe vorige Postings u.a. von Dir). Ist meine Annahme richtig, dass man die aber nur für den Analogteil von dahdi braucht und *nicht* für ISDN?


Nichtsdestotrotz hab ich so ziemlich das erreicht was ich wollte, noch einmal herzlichen Dank dass Ihr Eure Bemühungen hier der Allgemeinheit zur Verfügung stellt!


Gruss,
H.
 
Hallo Peter,

bei mir ist es genau umgekehrt. Ich verwende die Firmware sozusagen als überdimensionierten VOIP-Adapter für mein ISDN-Telefon am internen Port. Die Stromversorgung des ISDN-Telefons geht über die Horstbox.

Ich habe noch nicht herausbekommen, warum das Telefon kein Datum und keine Uhrzeit erhält. Vielleicht würde das funktionieren, wenn die Horstbox selber am ISDN-Hauptanschluss hinge.

Ich habe mir in den Asterisk eine Callback-Callthrough Funktion auf ein Genion-Handy gebaut.

Ich will sehen, ob ich mit dem Analog-Teil der HorstBox weiterkomme, um das in die Firmware zu integrieren.

Viele Grüße
Petershaus

P.S. Danke für den Hinweis mit toolchain_config, aber ich war so weit noch nicht durch das Makesystem durchgedrungen. :)
 
Hallo,

kannst Du mir Deine Konfiguration verraten ?
Möchte auch ein ISDN-Telefon am internen Anschluß betreiben.

Danke,
Sascha
 
@datiscum,

ISDN-Telefon am Internen Port. Externer wird von mir nicht benutzt, ist deshalb wahrscheinlich falsch konfiguriert, um eine ISDN-Amtsleitung anzuschliessen.


gerne, meine configs sehen nicht schön aus, aber hier als Versuchsgrundlage.

#Beispiel für Callcentersperre enthalten, hier aus dem Board

#Beispiel für Callback enthalten, hier aus dem Board.

@horatio42
Wie muss man den Externen Port konfigurieren, damit er als TE an einem NT funktioniert?

Code:
# interface.conf
################

[S0-Int]
# mISDN port number 0 is the connector labeled 'S0 Int'
portnum 0
# Use 'nt mode', as phones behave like phones, not like a phone exchange
nt
# Our indicator tones get produced by Asterisk, not by LCR
#tones no
tones yes
# Early bridging turned on, as this hopefully will allow
# tones from Asterisk without Asterisk answering the line
# when chan_lcr is fixed
earlyb yes


[S0-Ext]
# This is used when phones are plugged to connector S0-Ext.
# Note that these phones need their own power supplies, as
# the Horstbox suppies power to port 0 (S0-Int) only.
portnum 1
nt
tones no
earlyb yes

Viele Grüße
Petershaus
 

Anhänge

  • IsdnInternConfigs.tar.gz
    5.5 KB · Aufrufe: 12
Hallo Petershaus,

@horatio42
Wie muss man den Externen Port konfigurieren, damit er als TE an einem NT funktioniert?

Meine lcr-Konfiguration sieht so aus:

Code:
# cat /etc/asterisk/chanlcr/interface.conf
[Ext]
portnum 1
#ptp
#layer2hold yes

[Int]
extension
msn 200,201,202,203
portnum 0
nt
# cat /etc/asterisk/chanlcr/options.conf
alaw
socketrights 0777
lock /var/run/
# cat /etc/asterisk/chanlcr/routing.conf
[main]
        : remote application=asterisk context=incoming-isdn

Wie gesagt, ich nutze den internen Port nicht, wenn Du beides nutzen willst wirst Du die routing.conf anpassen müssen. Ansonsten kann man in in Asterisk (genauer der extensions.conf) den "incoming-isdn" context dazu benutzen um eingehende Anrufe zu verarbeiten. Um abgehend zu wählen, kann man dort Aufrufe wie
Code:
exten => s,1,Dial(LCR/Ext/${NR},60,H|g)
einbauen.

Das war's schon.

H.
 
@petershaus
Wg. Analog, mit dem aktuellen Kernel und dem drumherum wird es wohl erst mal nicht gehen da der Code für den analog Teil knallhart auf die Intel API gesetzt hat. Auch die Aktivierung des Blackfin DSP wird nicht viel bringen da dieser nicht direkt an dem Analog Port hängt sondern anscheinend über ein Kommunikationsprotokoll die ganze Arbeit machen sollte.
Ein wohl gangbarer weg währe es über die patches von snapgear. Diese patchen die Intel Library damit sie mit einem neueren Kernel funktioniert (http://www.snapgear.org/downloads2.html). Nur weiß ich nicht ob die mir dann wieder das Ethernet umpatchen.

Umgekehrt wenn jemand die lib mit unserem System passen verheiraten kann dann sollte es möglich sein auch den Analog teil wieder in Betrieb zu nehmen

peter
 
So,
nun wieder ein kleineres Update.
Kernel ist nun wieder aktuell und funktioniert :)
asterisk auf 1.6.0.21-rc1
im http script wird der pfad für das www Verzeichnis nun über die environment variable www_path gesteuert. Damit ist nun der bequeme wechsel zwischen verschiedener Pfade möglich.
Alle Module importiert damit das firewall script keinen Fehler mehr meldet.

peter
 
@potc
Danke für die Hinweise, ich sehe mir den Spaß einmal an.

Mir fiel noch auf dass in
horst-trunk/trunk/build_env/configs/herta-openwrt-webif/cgi-bin/webif/*
horst-trunk/trunk/build_env/configs/herta-dlink-webif/cgi-bin/webif/*
die Files nicht als ausführbar gespeichert sind.
Damit lassen sie sich im webif nicht aufrufen.

petershaus
 
@potc
Danke für die Hinweise, ich sehe mir den Spaß einmal an.

Mir fiel noch auf dass in
horst-trunk/trunk/build_env/configs/herta-openwrt-webif/cgi-bin/webif/*
horst-trunk/trunk/build_env/configs/herta-dlink-webif/cgi-bin/webif/*
die Files nicht als ausführbar gespeichert sind.
Damit lassen sie sich im webif nicht aufrufen.

petershaus
Hmm,
das ist ein problem wg. dem SVN, der behält keine attribute...
Werde das skript moifizieren damit er danach die rechte richtig setzt.

peter
 
So,
nochmal ein kleines Update nachgeschoben da die kernel config gefehlt hat.
Nebenbei das bauen an sich etwas optimiert.
Die jamvm auf 1.5.4 aktualisiert
Alle Dateien unter cgi-bin ausführbar gemacht

peter
 
@horatio42,
danke für Deine Config.

@Alle, die mit ISDN experimentieren:

NACHTRAG:
Ich habe den merkwürdigen Effekt, dass der lcr nicht reagiert, wenn ich unter SO-Ext alles ausser portnum 1 auskommentieren (d.h. wenn ich den externen Anschluss in den TE Modus bringe).
Es ist also vermutlich so, dass man S0-ext in den NT-Modus konfigurieren muss, wenn kein ISDN-Amt angeschlossen ist. Ansonsten geht das an S0-int angeschlossenen Telefon nicht. Falls meine Vermutung stimmt, dürfte das Anlass für einige Verzweiflung geben. Es hieße nämlich, dass bei Ausfall der externen ISDN-Amtsleitung, nicht einmal ein internes Gespräch über ein ISDN-Telefon möglich wäre.

Kann jemand bestätigen, dass ein internes ISDN-Telefon nicht geht, wenn man den externen Anschluss in den TE-Modus bringt und KEIN ISDN anschließt?

Code:
# interface.conf
################

[S0-Int]
# mISDN port number 0 is the connector labeled 'S0 Int'
portnum 0
# Use 'nt mode', as phones behave like phones, not like a phone exchange
nt
# Our indicator tones get produced by Asterisk, not by LCR
#tones no
tones yes
# Early bridging turned on, as this hopefully will allow
# tones from Asterisk without Asterisk answering the line
# when chan_lcr is fixed
earlyb yes


[S0-Ext]
# This is used when phones are plugged to connector S0-Ext.
# Note that these phones need their own power supplies, as
# the Horstbox suppies power to port 0 (S0-Int) only.
portnum 1
#nt ##auskommentierenm um in den TE Modus zu kommen

Viele Grüße
Petershaus
 
Servus,

wo lässt sich denn definieren, welche Module mit Asterisk kompiliert werden sollen? Mir fehlt z.B. LookupBlacklist. Danke!
 
@rmh
lookupblacklist ist in asterisk 1.6 nicht vorhanden.
Ersatzmakro findest Du unter
http://www.das-asterisk-buch.de/2.1/applications-lookupblacklist.html

So weit ich gesehen habe werden alle Module erzeugt, die möglich sind, dann aber durch scripts/asterisk160.mk install wieder gelöscht. Löschbefehl einfach dort auskommentieren.

Gruß
Peter
 
petershaus schrieb:
Kann jemand bestätigen, dass ein internes ISDN-Telefon nicht geht, wenn man den externen Anschluss in den TE-Modus bringt und KEIN ISDN anschließt?

Ja, das kann ich bestätigen.
Meine Versuche ergeben folgendes Bild:
1) Wenn der EXT Anschluss im NT Modus läuft und KEIN Kabel zum NTBA angeschlossen ist, funktioniert das ISDN Telefon am INT Anschluss (auch im NT Modus)
2) Wenn der EXT Anschluss im NT Modus läuft und man ihn am NTBA anschliesst, funktioniert das ISDN Telefon am INT Anschluss NICHT
3) Wenn der EXT Anschluss im TE Modus läuft und KEIN Kabel zum NTBA angeschlossen ist, funktioniert das ISDN Telefon am INT Anschluss NICHT
4) Wenn der EXT Anschluss im TE Modus läuft und man ihn am NTBA anschliesst, funktioniert das ISDN Telefon am INT Anschluss NICHT

Hat jemand ähnliche Erfahrungen gemacht?
Und gibt es hier wirklich jemanden, der mit chan_lcr ERFOLGREICH den EXT Anschluss der HorstBox ans Telefonnetz angeschlossen hat und am INT Anschluss ein ISDN Telefon betreibt?

Gruss,
Pette
 
Fehler beim kompilieren

Basierend auf der Anleitung (http://wiki.ip-phone-forum.de/router:dlink:hortsbox:professional:openhorst) habe ich versucht den Quellcode zu kompilieren. Aber beim make bricht das script nach etwa 223minuten mit der folgenden Fehlermeldung ab.

sox soxio: Can't open input file `16': No such file or directory
make[1]: *** [music_install] Fehler 2
make[1]: Leavin directory `/root/horst-trunk'
make: *** [asterisk_install] Fehler 2

Befehl, der den Fehler verursacht:

sox /root/horst-trunk/archive/dl/fpm-sunshine.mp3 -t ul -r 8080 - b 16 -c 1 /root/horst-trunk/image/rootfs/var/lib/asterisk/moh/fpm-sunshine.gsm


Habe gerade ein weiters mal make ausgeführt und bekomme selben Fehler erneut.
Habe aber nur 22 Min zum Fehler gebraucht :)

--

Hoffe ich habe den Fehler behoben, indem ich sox manuell installiert habe. Sox scheint trotz unstable parameter aus dem stable zweig installiert zu werden.

Stimmt, dass Sox aus dem stable zweig stammte - beim selber kompilieren fehlte aber der mp3 support ....
Die Lösung ist ganz einfach

in die /etc/apt/source.list folgendes einfügen.
Code:
deb ftp://ftp.debian.org/debian unstable main contrib non-free

Dann "apt-get update" ausführen

Code:
aptitude -V -t unstable install sox
aptitude -V -t unstable install libsox-fmt-all (für den MP3 Support & alles was fehlt)





----
Ich habe einige Fehler schon selbst behoben.

Da das Script die Datei sed in /usr/bin/sed erwartet, sie sich aber in /usr/sed befindet habe ich einen SymLink manuell gesetzt
Befehl dazu: ln -s /bin/sed /usr/bin/sed

jamvm wird in Version 1.5.4 vorausgesetzt diese habe ich manuell installieren müssen.

Befehl dazu:

wget http://downloads.sourceforge.net/pr...M 1.5.4/jamvm-1.5.4.tar.gz?use_mirror=surfnet
tar -xvzf jamvm-1.5.4.tar.gz
cd jamvm-1.5.4
./configure
make && make install
 
Zuletzt bearbeitet:
Das Sox problem wurde schon mal vor einiger Zeit behandelt - suche mal nach sox hier im Thread.

_.-=: MFG :=-._
 
Pette schrieb:
Hat jemand ähnliche Erfahrungen gemacht?
Und gibt es hier wirklich jemanden, der mit chan_lcr ERFOLGREICH den EXT Anschluss der HorstBox ans Telefonnetz angeschlossen hat und am INT Anschluss ein ISDN Telefon betreibt?

Die obige Frage interessiert mich immernoch brennend.... wenn also jemand was weiss.... Bitte melden! ;-)
Danke!

Gruss,
Pette
 
Also wenn es klappt, werde ich kommende Woche mich damit mal beschäftigen. Habe jetzt noch einen Bastel-Horst (ohne Herta, RIP) hier, mit dem ich das mal testen könnte.

_.-=: MFG :=-._
 
Und wieder mal ein Update Wahn:
- Anpassung an aktuellen Kernel
- Asterisk 1.6.2 ist nun default

wer eine ältere / andere Asterisk Version möchte muss in build_env/Makefile entsprechendes asterisk1xxx.mk aktivieren und die anderen auskommentieren.

außerdem in scripts/config.mk den entsprechenden Block aus/ein kommentieren

Wichtig, ich pflege den asterisk 14xx und 160xx selber nicht mehr weiter.
Falls also jemand die älteren Versionen benötigt und weiter pflegt bin ich aber gerne bereit alle Anpassungen mit einzubringen !


peter
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.