pluto70 schrieb:Hallo,
hat schon jemand Asterisk 1.4 mit mISDN am laufen? Ist das schon einigermassen brauchbar? Gibts schon Erfahrungen damit?
crich schrieb:Ich hab da mal was zusammengeschrieben um mISDN mit 1.4 zum laufen zu bringen, wenn man noch nichts vorinstalliert hat. Leider funzt unser install-misdn-mqueue.tar.gz noch nicht zusammen mit 1.4.
Der Link: http://www.misdn.org/index.php/MISDN_with_Asterisk
make: *** /lib/modules/2.6.15-26-server/build: No such file or directory. Stop.
Making mISDN
=============
cp /usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/Makefile.v2.6 /usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/Makefile
export MINCLUDES=/usr/src/mISDN-1_0_4/include ; make -C /lib/modules/2.6.15-26-server/build SUBDIRS=/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN modules CONFIG_MISDN_DRV=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m CONFIG_MISDN_HFCPCI=m CONFIG_MISDN_HFCUSB=m CONFIG_MISDN_XHFC=m CONFIG_MISDN_HFCMINI=m CONFIG_MISDN_W6692=m CONFIG_MISDN_SPEEDFAX=m CONFIG_MISDN_AVM_FRITZ=m CONFIG_MISDN_NETJET=m
make[1]: Entering directory `/usr/src/linux-headers-2.6.15-26-server'
CC [M] /usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.o
In file included from /usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/channel.h:16,
from /usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:20:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h: In function ‘mISDN_queueup_newhead’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:189: warning: implicit declaration of function ‘mISDN_queue_message’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:189: error: ‘FLG_MSG_UP’ undeclared (first use in this function)
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:189: error: (Each undeclared identifier is reported only once
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:189: error: for each function it appears in.)
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h: In function ‘mISDN_queuedown_newhead’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:199: error: ‘FLG_MSG_DOWN’ undeclared (first use in this function)
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h: At top level:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:280: error: syntax error before ‘*’ token
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:280: error: syntax error before ‘ie_info_t’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:280: warning: type defaults to ‘int’ in declaration of ‘mISDN_get_last_repeated_ie’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:280: warning: function declaration isn’t a prototype
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/helper.h:280: warning: data definition has no type or storage class
In file included from /usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:20:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/channel.h: In function ‘queue_ch_frame’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/channel.h:108: error: ‘FLG_MSG_UP’ undeclared (first use in this function)
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘write_ctrl’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:275: error: ‘mISDNinstance_t’ has no member named ‘privat’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘hdlc_empty_fifo’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:409: error: ‘mISDNinstance_t’ has no member named ‘privat’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘hdlc_fill_fifo’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:478: error: ‘mISDNinstance_t’ has no member named ‘privat’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘hdlc_down’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:769: error: ‘struct _mISDNinstance’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:775: error: ‘struct _mISDNinstance’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:781: error: ‘struct _mISDNinstance’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:784: error: ‘struct _mISDNinstance’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:791: error: ‘struct _mISDNinstance’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:804: error: ‘struct _mISDNinstance’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘release_card’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1055: warning: implicit declaration of function ‘mISDN_ctrl’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1056: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1058: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘fritz_manager’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1088: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1103: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1154: error: ‘FLG_MSG_UP’ undeclared (first use in this function)
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘setup_instance’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1187: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1189: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1192: error: ‘mISDNinstance_t’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1193: error: ‘mISDNinstance_t’ has no member named ‘class_dev’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1196: warning: passing argument 4 of ‘mISDN_init_instance’ from incompatible pointer type
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1202: warning: passing argument 4 of ‘mISDN_init_instance’ from incompatible pointer type
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1204: error: ‘mISDNinstance_t’ has no member named ‘hwlock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1205: error: ‘mISDNinstance_t’ has no member named ‘class_dev’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1218: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1220: error: ‘mISDNobject_t’ has no member named ‘lock’
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c: In function ‘Fritz_init’:
/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.c:1412: error: ‘mISDNobject_t’ has no member named ‘lock’
make[2]: *** [/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN/avm_fritz.o] Error 1
make[1]: *** [_module_/usr/src/mISDN-1_0_4/drivers/isdn/hardware/mISDN] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.15-26-server'
make: *** [all] Error 2
-----------------------------------------
Loading module(s) for your misdn-cards:
-----------------------------------------
modprobe --ignore-install hfcmulti type=0x4 protocol=0x2,0x2,0x2,0x2 layermask=0xf,0xf,0xf,0xf poll=128 debug=0
modprobe mISDN_dsp debug=0x0 options=0 dtmftreshold=100
ERROR[4841]: chan_misdn.c:4602 load_module: Unable to initialize mISDN
0000:00:00.0 Host bridge: Advanced Micro Devices [AMD] AMD-751 [Irongate] System Controller (rev 25)
Flags: bus master, medium devsel, latency 64
Memory at e8000000 (32-bit, prefetchable) [size=64M]
Memory at eddff000 (32-bit, prefetchable) [size=4K]
I/O ports at dc00 [disabled] [size=4]
Capabilities: [a0] AGP version 1.0
0000:00:01.0 PCI bridge: Advanced Micro Devices [AMD] AMD-751 [Irongate] AGP Bridge (rev 01) (prog-if 00 [Normal decode])
Flags: bus master, 66MHz, medium devsel, latency 64
Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
I/O behind bridge: 0000b000-0000bfff
Memory behind bridge: ede00000-efefffff
Prefetchable memory behind bridge: e1c00000-e5cfffff
0000:00:07.0 ISA bridge: Advanced Micro Devices [AMD] AMD-756 [Viper] ISA (rev 01)
Subsystem: Advanced Micro Devices [AMD] AMD-756 [Viper] ISA
Flags: bus master, medium devsel, latency 0
0000:00:07.1 IDE interface: Advanced Micro Devices [AMD] AMD-756 [Viper] IDE (rev 03) (prog-if 8a [Master SecP PriP])
Flags: bus master, medium devsel, latency 32
I/O ports at f000 [size=16]
0000:00:07.3 Bridge: Advanced Micro Devices [AMD] AMD-756 [Viper] ACPI (rev 03)
Flags: medium devsel
0000:00:07.4 USB Controller: Advanced Micro Devices [AMD] AMD-756 [Viper] USB (rev 06) (prog-if 10 [OHCI])
Flags: bus master, medium devsel, latency 16, IRQ 10
Memory at effff000 (32-bit, non-prefetchable) [size=4K]
0000:00:09.0 ISDN controller: Cologne Chip Designs GmbH: Unknown device 08b4 (rev 01)
Subsystem: Cologne Chip Designs GmbH: Unknown device b566
Flags: medium devsel, IRQ 9
I/O ports at d800 [size=8]
Memory at efffe000 (32-bit, non-prefetchable) [disabled] [size=4K]
Capabilities: [40] Power Management version 2
0000:00:0b.0 Ethernet controller: Digital Equipment Corporation DECchip 21142/43 (rev 41)
Subsystem: DELTA Electronics, Inc: Unknown device 2760
Flags: bus master, medium devsel, latency 64, IRQ 5
I/O ports at d400 [size=128]
Memory at efffdc00 (32-bit, non-prefetchable) [size=1K]
Expansion ROM at eff80000 [disabled] [size=256K]
Capabilities: [dc] Power Management version 1
0000:01:05.0 VGA compatible controller: nVidia Corporation NV6 [Vanta/Vanta LT] (rev 15) (prog-if 00 [VGA])
Subsystem: Elsa AG: Unknown device 0c25
Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 11
Memory at ee000000 (32-bit, non-prefetchable) [size=16M]
Memory at e2000000 (32-bit, prefetchable) [size=32M]
Expansion ROM at efef0000 [disabled] [size=64K]
Capabilities: [60] Power Management version 1
Capabilities: [44] AGP version 2.0
#
# Configuration file for your misdn hardware
#
# Usage: /usr/sbin/misdn-init start|stop|restart|config|scan|help
#
#
# Card Settings
#
# Syntax: card=<number>,<type>[,<option>...]
#
# <number> count your cards beginning with 1
# <type> either 0x1,0x4 or 0x8 for your hfcmulti hardware,
# or the name of your card driver module.
# <option> ulaw - uLaw (instead of aLaw)
# dtmf - enable DTMF detection on all B-channels
#
# pcm_slave - set PCM bus into slave mode
# If you have a set of cards, all wired via PCM. Set
# all cards into pcm_slave mode and leave one out.
# The left card will automatically be Master.
#
# ignore_pcm_frameclock - this can be set in conjunction with
# pcm_slave. If this card has a
# PCI Bus Position before the Position
# of the Master, then this port cannot
# yet receive a frameclock, so it must
# ignore the pcm frameclock.
#
# rxclock - use clocking for pcm from ST Port
# crystalclock - use clocking for pcm from PLL (genrated on board)
# watchdog - This dual E1 Board has a Watchdog for
# transparent mode
#
#
card=1,0x2
#
# Port settings
#
# Syntax: <port_type>=<port_number>[,<port_number>...]
#
# <port_type> te_ptp - TE-Mode, PTP
# te_ptmp - TE-Mode, PTMP
# te_capi_ptp - TE-Mode (capi), PTP
# te_capi_ptmp - TE-Mode (capi), PTMP
# nt_ptp - NT-Mode, PTP
# nt_ptmp - NT-Mode, PTMP
# <port_number> port that should be considered
#
te_ptp=2
nt_ptp=1
#
# Port Options
#
# Syntax: option=<port_number>,<option>[,<option>...]
#
# <option> master_clock - use master clock for this S/T interface
# (only once per chip, only for HFC 8/4)
# optical - optical (only HFC-E1)
# los - report LOS (only HFC-E1)
# ais - report AIS (only HFC-E1)
# slip - report SLIP (only HFC-E1)
# nocrc4 - turn off crc4 mode use double frame instead
# (only HFC-E1)
#
# The master_clock option is essential for retrieving and transmitting
# faxes to avoid failures during transmission. It tells the driver to
# synchronize the Card with the given Port which should be a TE Port and
# connected to the PSTN in general.
#
option=2,master_clock
#option=2,ais,nocrc4
#option=3,optical,los,ais,slip
#
# General Options for your hfcmulti hardware
#
# poll=<number>
#
# Only one poll value must be given for all cards.
# Give the number of samples for each fifo process.
# By default 128 is used. Decrease to reduce delay, increase to
# reduce cpu load. If unsure, don't mess with it!!!
# Valid is 32, 64, 128, 256.
#
# dsp_poll=<number>
# This is the poll option which is used by mISDN_dsp, this might
# differ from the one given by poll= for the hfc based cards, since
# they can only use multiples of 32, the dsp_poll is dependant on
# the kernel timer setting which can be found in the CPU section
# in the kernel config. Defaults are there either 100Hz, 250Hz
# or 1000Hz. If your setting is either 1000 or 250 it is compatible
# with the poll option for the hfc chips, if you have 100 it is
# different and you need here a multiple of 80.
# The default is to have no dsp_poll option, then the dsp itself
# finds out which option is the best to use by itself
#
# pcm=<number>
#
# Give the id of the PCM bus. All PCM busses with the same ID
# are expected to be connected and have equal slots.
# Only one chip of the PCM bus must be master, the others slave.
#
# debug=<number>
#
# Enable debugging (see hfc_multi.h for debug options).
#
# dsp_options=<number>
#
# set this to 2 and you'll have software bridging instead of
# hardware bridging.
#
#
# dtmfthreshold=<milliseconds>
#
# Here you can tune the sensitivity of the dtmf tone recognizer.
#
# timer=<1|0>
#
# set this to 1 if you want hfcmulti to register at ztdummy (zaptel)
# and provide a 1khz timing source for it. This makes it possible
# to have an accurate timing source for asterisk through zaptel from
# hfcmulti to make applications like Meetme and faxing between wctdm
# and hfcmulti work properly.
#
poll=128
# dsp_poll=128
dsp_options=0
dtmfthreshold=100
debug=1
in der extensions.conf muss man die hints entsprechend im subscribecontext hinterlegen, dieser kann auch problemlos der standard context sein, damit sollte das ganz normale monitoren der hints schon laufen.
Wir haben hier 3stellige Nebenstellen, deshalb hab ich dann auch "_*8XXX,..." verwendet. EXTEN:2 sollte ja gleich bleiben, oder hab ich das an dem Punkt falsch verstanden?exten => 99,hint,SIP/99
exten => 99,1,Set(_PICKUPMARK=99)
exten => 99,1,Dial(SIP/99)
zum Pickupen brauchts nun noch:
exten => _*8XX,1,Pickup(${EXTEN:2}@PICKUPMARK)