Mit Asterisk raustelefonieren

funky

Neuer User
Mitglied seit
1 Feb 2005
Beiträge
45
Punkte für Reaktionen
0
Punkte
0
Ich habe heute mit viel Schweiss Asterisk mit einer FritzCard zum Laufen bekommen und es gelingt mir auch, mich mit XLite anzumelden.

Nun würde ich gern XLite -> Asterisk -> ISDN raustelefonieren, aber das geligt mir einfach irgendwie nicht. Wie muss ich das in der extensions.conf einstellen?

Ich habe dort jetzt stehen:
[default]
exten => _0.,1,Dial,CAPI/123:${EXTEN}

Wenn ich eine Nummer wähle, dann kommt in der Konsole
die Meldung: Unable to create channel of type 'CAPI'

Was mache ich da falsch?

Mir reicht auch ein einfachen RTFM, aber ich finde nach langer Suche einfach nichts.

1000-Dank im Voraus für eine Antwort!!!
 
exten => _0.,1,Dial(Capi/123:${EXTEN},,)
hier wählst du die 0 mit!

exten => _0.,1,Dial(Capi/123:${EXTEN:1},,)
hier wird die 0 entfernt - nicht mitgewählt!

Capi/123:089.... Die eigene MSN der Fritz! gemäss capi.conf ist 123 - korrekt?
Was ist denn hinter der FritzCard (interne S0 einer Tk-Anlage)?
NT-Modus geht nur mit einer HFC-Karte!

Poste mal deine capi.conf!
 
Hallo und danke für die schnelle Antwort.

Das mit der MSN wird, glaube ich auch mein Hauptproblem sein, weil ich das anscheinend nicht ganz verstanden habe.

Ich habe die ARCOR StarterBox und dort am S0 Bus hängt die FritzCard USB 2.0.

Als MSN habe ich einfach meine Telefonnummer eingetragen, mit der ich von "aussen" erreichbar bin. Wenn ihc diese Nummer anrufe, dann geht auch sofort Asterisk an und es meldet sich die freundliche Stimme der "demo-Dame".

Hier meine capi.conf

Code:
;
; CAPI config
;
;
[general]
nationalprefix=49
internationalprefix=00
rxgain=0.8
txgain=0.8

[interfaces]

msn=meine_Rufnummer
incomingmsn=meine_Rufnummer
controller=1
softdtmf=1
;accountcode=
context=default
echocancel=no
;echosquelch=1
;echocancel=yes
;echotail=64
;callgroup=1
;deflect=12345678
devices=2

;PointToPoint (55512-0)
;for outgoing calls use example 5551212
;and in dialplan you can use callerid like
;exten => _0XXX.,1,StripMSD,1
;exten => _XXX.,2,Dial,CAPI/55512${CALLERIDNUM}:bBYEXTENSION
;============================================================
;mode=immediate
;isdnmode=ptp
;msn=55512
;controller=2
;devices=30

und dazu vielleicht noch die extensions.conf
--> dort unter default ist die Verbindung nach "draussen" eingerichtete -
hoffe, dass das richtig ist :oops:


Code:
;
; Static extension configuration file, used by
; the pbx_config module. This is where you configure all your 
; inbound and outbound calls in Asterisk. 
; 

;
; The "General" category is for certain variables.  
;
[general]
;
; If static is set to no, or omitted, then the pbx_config will rewrite
; this file when extensions are modified.  Remember that all comments
; made in the file will be lost when that happens. 
;
; XXX Not yet implemented XXX
;
static=yes
;
; if static=yes and writeprotect=no, you can save dialplan by
; CLI command 'save dialplan' too
;
writeprotect=no

; You can include other config files, use the #include command (without the ';')
; Note that this is different from the "include" command that includes contexts within 
; other contexts. The #include command works in all asterisk configuration files.
;#include "filename.conf"

; The "Globals" category contains global variables that can be referenced
; in the dialplan with ${VARIABLE} or ${ENV(VARIABLE)} for Environmental variable
; ${${VARIABLE}} or ${text${VARIABLE}} or any hybrid
;
[globals]
CONSOLE=Console/dsp				; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest					; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/g2					; Trunk interface
TRUNKMSD=1					; MSD digits to strip (usually 1 or 0)
;TRUNK=IAX2/user:pass@provider

;
; Any category other than "General" and "Globals" represent 
; extension contexts, which are collections of extensions.  
;
; Extension names may be numbers, letters, or combinations
; thereof. If an extension name is prefixed by a '_'
; character, it is interpreted as a pattern rather than a
; literal.  In patterns, some characters have special meanings:
;
;   X - any digit from 0-9
;   Z - any digit from 1-9
;   N - any digit from 2-9
;   [1235-9] - any digit in the brackets (in this example, 1,2,3,5,6,7,8,9)
;   . - wildcard, matches anything remaining (e.g. _9011. matches 
;	anything starting with 9011 excluding 9011 itself)
;
; For example the extension _NXXXXXX would match normal 7 digit dialings, 
; while _1NXXNXXXXXX would represent an area code plus phone number
; preceeded by a one.
;
; Each step of an extension is ordered by priority, which must
; always start with 1 to be considered a valid extension.
;
; Contexts contain several lines, one for each step of each
; extension, which can take one of two forms as listed below,
; with the first form being preferred.  One may include another
; context in the current one as well, optionally with a
; date and time.  Included contexts are included in the order
; they are listed.
;
;[context]
;exten => someexten,priority,application(arg1,arg2,...)
;exten => someexten,priority,application,arg1|arg2...
;
; Timing list for includes is 
;
;   <time range>|<days of week>|<days of month>|<months>
;
;include => daytime|9:00-17:00|mon-fri|*|*
;
; ignorepat can be used to instruct drivers to not cancel dialtone upon
; receipt of a particular pattern.  The most commonly used example is
; of course '9' like this:
;
;ignorepat => 9
;
; so that dialtone remains even after dialing a 9.
;

;
; Here are the entries you need to participate in the IAXTEL
; call routing system.  Most IAXTEL numbers begin with 1-700, but
; there are exceptions.  For more information, and to sign
; up, please go to [url]www.gnophone.com[/url] or [url]www.iaxtel.com[/url]
;
[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel)

;
; The SWITCH statement permits a server to share the dialplain with
; another server. Use with care: Reciprocal switch statements are not
; allowed (e.g. both A -> B and B -> A), and the switched server needs
; to be on-line or else dialing can be severly delayed.
;
[iaxprovider]
;switch => IAX2/user:[key]@myserver/mycontext

[trunkint]
;
; International long distance through trunk
;
exten => _9011.,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _9011.,2,Congestion

[trunkld]
;
; Long distance context accessed through trunk
;
exten => _91NXXNXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91NXXNXXXXXX,2,Congestion

[trunklocal]
;
; Local seven-digit dialing accessed through trunk interface
;
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _9NXXXXXX,2,Congestion

[trunktollfree]
;
; Long distance context accessed through trunk interface
;
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91800NXXXXXX,2,Congestion
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,2,Congestion
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,2,Congestion
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,2,Congestion

[international]
;
; Master context for international long distance
;
ignorepat => 9
include => longdistance
include => trunkint

[longdistance]
;
; Master context for long distance
;
ignorepat => 9
include => local
include => trunkld

[local]
;
; Master context for local, toll-free, and iaxtel calls only
;
ignorepat => 9
include => default
include => parkedcalls
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider
;
; You can use an alternative switch type as well, to resolve
; extensions that are not known here, for example with remote 
; IAX switching you transparently get access to the remote
; Asterisk PBX
; 
; switch => IAX2/user:password@bigserver/local

[macro-stdexten];
;
; Standard extension macro:
;   ${ARG1} - Extension  (we could have used ${MACRO_EXTEN} here as well
;   ${ARG2} - Device(s) to ring
;
exten => s,1,Dial(${ARG2},20)					; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1)				; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1})		; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1)			; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1})			; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1)				; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1)				; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1})				; If they press *, send the user into VoicemailMain

[demo]
;
; We start with what to do when a call first comes in.
;
exten => s,1,Wait,1			; Wait a second, just for fun
exten => s,2,Answer			; Answer the line
exten => s,3,DigitTimeout,5		; Set Digit Timeout to 5 seconds
exten => s,4,ResponseTimeout,10		; Set Response Timeout to 10 seconds
exten => s,5,BackGround(demo-congrats)	; Play a congratulatory message
exten => s,6,BackGround(demo-instruct)	; Play some instructions

exten => 2,1,BackGround(demo-moreinfo)	; Give some more information.
exten => 2,2,Goto(s,6)

exten => 3,1,SetLanguage(fr)		; Set language to french
exten => 3,2,Goto(s,5)			; Start with the congratulations

exten => 1000,1,Goto(default,s,1)
;
; We also create an example user, 1234, who is on the console and has
; voicemail, etc.
;
exten => 1234,1,Playback(transfer,skip)		; "Please hold while..." 
					; (but skip if channel is not up)
exten => 1234,2,Macro(stdexten,1234,${CONSOLE})

exten => 1235,1,Voicemail(u1234)		; Right to voicemail

exten => 1236,1,Dial(Console/dsp)		; Ring forever
exten => 1236,2,Voicemail(u1234)		; Unless busy

;
; # for when they're done with the demo
;
exten => #,1,Playback(demo-thanks)		; "Thanks for trying the demo"
exten => #,2,Hangup			; Hang them up.

;
; A timeout and "invalid extension rule"
;
exten => t,1,Goto(#,1)			; If they take too long, give up
exten => i,1,Playback(invalid)		; "That's not valid, try again"

;
; Create an extension, 500, for dialing the
; Asterisk demo.
;
exten => 500,1,Playback(demo-abouttotry); Let them know what's going on
exten => 500,2,Dial(IAX2/[email protected]/s@default)	; Call the Asterisk demo
exten => 500,3,Playback(demo-nogo)	; Couldn't connect to the demo site
exten => 500,4,Goto(s,6)		; Return to the start over message.

;
; Create an extension, 600, for evaulating echo latency.
;
exten => 600,1,Playback(demo-echotest)	; Let them know what's going on
exten => 600,2,Echo			; Do the echo test
exten => 600,3,Playback(demo-echodone)	; Let them know it's over
exten => 600,4,Goto(s,6)		; Start over

;
; Give voicemail at extension 8500
;
exten => 8500,1,VoicemailMain
exten => 8500,2,Goto(s,6)
;
; Here's what a phone entry would look like (IXJ for example)
;
;exten => 1265,1,Dial(Phone/phone0,15)
;exten => 1265,2,Goto(s,5)

;[mainmenu]
;
; Example "main menu" context with submenu
;
;exten => s,1,Answer
;exten => s,2,Background(thanks)		; "Thanks for calling press 1 for sales, 2 for support, ..."
;exten => 1,1,Goto(submenu,s,1)
;exten => 2,1,Hangup
;include => default
;
;[submenu]
;exten => s,1,Ringing					; Make them comfortable with 2 seconds of ringback
;exten => s,2,Wait,2
;exten => s,3,Background(submenuopts)	; "Thanks for calling the sales department.  Press 1 for steve, 2 for..."
;exten => 1,1,Goto(default,steve,1)
;exten => 2,1,Goto(default,mark,2)

[default]
;
; By default we include the demo.  In a production system, you 
; probably don't want to have the demo there.
;
;include => demo
;exten => 0X,1,Dial(CAPI/@meine_Rufnummer:${EXTEN})

; exten => _0XXX.,1,StripMSD,1
exten => _0.,1,Dial,CAPI/meine_Rufnummer:${EXTEN}




; Extensions like the two below can be used for FWD, Nikotel, sipgate etc.
; Note that you must have a [sipprovider] section in sip.conf whereas
; the otherprovider.net example does not require such a peer definition
;
;exten => _41X.,1,Dial(SIP/${EXTEN:2}@sipprovider,,r)
;exten => _42X.,1,Dial(SIP/user:passwd@${EXTEN:2}@otherprovider.net,30,rT)

; Real extensions would go here. Generally you want real extensions to be 4 or 5
; digits long (although there is no such requirement) and start with a single
; digit that is fairly large (like 6 or 7) so that you have plenty of room to
; overlap extensions and menu options without conflict.  You can alias them with
; names, too and use global variables

;exten => 6245,hint,SIP/Grandstream1&SIP/Xlite1 ; Channel hints for presence
;exten => 6245,1,Dial(SIP/Grandstream1,20,rt)	; permit transfer
;exten => 6245,1,Dial(${HINT},20,rtT)		; Use hint as listed
;exten => 6361,1,Dial(IAX2/JaneDoe,,rm)		; ring without time limit
;exten => 6389,1,Dial(MGCP/aaln/[email protected])
;exten => 6394,1,Dial(Local/6275/n)		; this will dial ${MARK}

;exten => 6275,1,Macro(stdexten,6275,${MARK})	; assuming ${MARK} is something like Zap/2
;exten => mark,1,Goto(6275|1)			; alias mark to 6275
;exten => 6536,1,Macro(stdexten,6236,${WIL})	; Ditto for wil
;exten => wil,1,Goto(6236|1)
;
; Some other handy things are an extension for checking voicemail via
; voicemailmain
;
;exten => 8500,1,VoicemailMain
;exten => 8500,2,Hangup
;
; Or a conference room (you'll need to edit meetme.conf to enable this room)
;
;exten => 8600,1,Meetme(1234)
;
; Or playing an announcement to the called party, as soon it answers
;
;exten = 8700,1,Dial(${MARK},30,A(/path/to/my/announcemsg))
;
; For more information on applications, just type "show applications" at your
; friendly Asterisk CLI prompt.
;
; 'show application <command>' will show details of how you
; use that particular application in this file, the dial plan. 
;

Aber jetzt antwortet komischerweise Ast. auch nicht auf Anrufen von "aussen". Hilfe!

Diese Fehlermeldung gibt mir jetzt Ast.:

Asterisk Ready.
*CLI> Feb 2 08:31:30 WARNING[5479]: chan_oss.c:239 sound_thread: Read error onsound device: Resource temporarily unavailable
-- started pbx on channel (callgroup=0)!
== Starting CAPI[contr1/meine_Rufnummer]/0 at default,meine_Rufnummer,1 failed so falling back to exten 's'
== Starting CAPI[contr1/meine_Rufnummer]/0 at default,s,1 still failed so falling back to context 'default'
Feb 2 08:31:46 WARNING[5479]: pbx.c:1878 ast_pbx_run: Channel 'CAPI[contr1/meine_Rufnummer]/0' sent into invalid extension 's' in context 'default', but no invalid handler


Ansonsten habe ich heute nacht von Dialplan geträumt :shock:

Danke für die Antwort
 
Wie sieht deine sip.conf aus (speziell der context für Xlite)?
modules.conf?
 
Klar mache ich, sobald ich zu Hause bin, aber, wie muss denn der Befehl lauten, damit ein Dial über die ISDN Karte erfolgen kann?

Muss dass dann unter [default] stehen oder wo?
 
funky schrieb:
Klar mache ich, sobald ich zu Hause bin, aber, wie muss denn der Befehl lauten, damit ein Dial über die ISDN Karte erfolgen kann?

Muss dass dann unter [default] stehen oder wo?

Eben - der context steht in der sip.conf bzw capi.conf und verweist auf den dialplan.

Die Anweisung hatte ich bereits gepostet:

exten => _0.,1,Dial(Capi/123:${EXTEN},,)
 
Hi, und sorry für meine Unzuläglichkeit. Bin grad dabei mir die Asterisk DOKU, Ver. 2 durchzulesen. Danach weiss ich mehr.

Hier nochmal die modules.conf und die sip.conf.

Code:
;
; Asterisk configuration file
;
; Module Loader configuration file
;

[modules]
autoload=yes
;
; If you want, load the GTK console right away.  
; Don't load the KDE console since
; it's not as sophisticated right now.
;
noload => pbx_gtkconsole.so
;load => pbx_gtkconsole.so
noload => pbx_kdeconsole.so
;
; Intercom application is obsoleted by
; chan_oss.  Don't load it.
;
noload => app_intercom.so
noload => chan_zap.so 
;
; Explicitly load the chan_modem.so early on to be sure
; it loads before any of the chan_modem_* 's afte rit
;
load => chan_capi.so
load => chan_modem.so
load => res_musiconhold.so
;
; Load either OSS or ALSA, not both
; By default, load OSS only (automatically) and do not load ALSA
;
noload => chan_alsa.so
;noload => chan_oss.so

;
; Module names listed in "global" section will have symbols globally
; exported to modules loaded after them.
;
[global]
chan_zap.so=no
chan_modem.so=yes
chan_capi.so=yes

und die sip.conf

Code:
;
; SIP Configuration for Asterisk
;
; Syntax for specifying a SIP device in extensions.conf is
; SIP/devicename where devicename is defined in a section below.
;
; You may also use 
; SIP/username@domain to call any SIP user on the Internet
; (Don't forget to enable DNS SRV records if you want to use this)
; 
; If you define a SIP proxy as a peer below, you may call
; SIP/proxyhostname/user or SIP/user@proxyhostname 
; where the proxyhostname is defined in a section below 
; 
; Useful CLI commands to check peers/users:
;   sip show peers		Show all SIP peers (including friends)
;   sip show users		Show all SIP users (including friends)
;   sip show registry		Show status of hosts we register with
;
;   sip debug			Show all SIP messages
;

[general]
context=default			; Default context for incoming calls
;recordhistory=yes		; Record SIP history by default 
				; (see sip history / sip no history)
;realm=mydomain.tld		; Realm for digest authentication
				; defaults to "asterisk"
				; Realms MUST be globally unique according to RFC 3261
				; Set this to your host name or domain name
port=5060			; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0		; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes			; Enable DNS SRV lookups on outbound calls
				; Note: Asterisk only uses the first host 
				; in SRV records
				; Disabling DNS SRV lookups disables the 
				; ability to place SIP calls based on domain 
				; names to some other SIP users on the Internet
				
;pedantic=yes			; Enable slow, pedantic checking for Pingtel
				; and multiline formatted headers for strict
				; SIP compatibility (defaults to "no")
;tos=184                        ; Set IP QoS to either a keyword or numeric val
;tos=lowdelay                   ; lowdelay,throughput,reliability,mincost,none
;maxexpirey=3600		; Max length of incoming registration we allow
;defaultexpirey=120		; Default length of incoming/outoing registration
;notifymimetype=text/plain	; Allow overriding of mime type in MWI NOTIFY
;videosupport=yes		; Turn on support for SIP video

;disallow=all			; First disallow all codecs
;allow=ulaw			; Allow codecs in order of preference
;allow=ilbc			; Note: codec order is respected only in [general]
;musicclass=default		; Sets the default music on hold class for all SIP calls
				; This may also be set for individual users/peers
;language=en			; Default language setting for all users/peers
				; This may also be set for individual users/peers
;relaxdtmf=yes			; Relax dtmf handling
;rtptimeout=60			; Terminate call if 60 seconds of no RTP activity
				; when we're not on hold
;rtpholdtimeout=300		; Terminate call if 300 seconds of no RTP activity
				; when we're on hold (must be > rtptimeout)
;trustrpid = no			; If Remote-Party-ID should be trusted
;progressinband=no		; If we should generate in-band ringing always
;useragent=Asterisk PBX		; Allows you to change the user agent string
;nat=no				; NAT settings 
                                ; yes = Always ignore info and assume NAT
                                ; no = Use NAT mode only according to RFC3581 
                                ; never = Never attempt NAT mode or RFC3581 support
				; route = Assume NAT, don't send rport (work around more UNIDEN bugs)
;promiscredir = no      ; If yes, allows 302 or REDIR to non-local SIP address
;                       ; Note that promiscredir when redirects are made to the
;                       ; local system will cause loops since SIP is incapable
;                       ; of performing a "hairpin" call.
;
; If regcontext is specified, Asterisk will dynamically 
; create and destroy a NoOp priority 1 extension for a given
; peer who registers or unregisters with us.  The actual extension
; is the 'regexten' parameter of the registering peer or its
; name if 'regexten' is not provided.  More than one regexten may be supplied
; if they are separated by '&'.  Patterns may be used in regexten.
;
;regcontext=iaxregistrations
;
; Asterisk can register as a SIP user agent to a SIP proxy (provider)
; Format for the register statement is:
;       register => user[:secret[:authuser]]@host[:port][/extension]
;
; If no extension is given, the 's' extension is used. The extension
; needs to be defined in extensions.conf to be able to accept calls
; from this SIP proxy (provider)
;
; host is either a host name defined in DNS or the name of a 
; section defined below.
;
; Examples:
;
;register => 1234:[email protected]	
;
;     This will pass incoming calls to the 's' extension
;
;
;register => 2345:password@sip_proxy/1234
;
;    Register 2345 at sip provider 'sip_proxy'.  Calls from this provider connect to local 
;    extension 1234 in extensions.conf default context, unless you define 
;    unless you configure a [sip_proxy] section below, and configure a context.
;	 Tip 1: Avoid assigning hostname to a sip.conf section like [provider.com]
;        Tip 2: Use separate type=peer and type=user sections for SIP providers
;                      (instead of type=friend) if you have calls in both directions
  

;externip = 200.201.202.203	; Address that we're going to put in outbound SIP messages
				; if we're behind a NAT

				; The externip and localnet is used
				; when registering and communicating with other proxies
				; that we're registered with
				; You may add multiple local networks.  A reasonable set of defaults
				; are:
localnet=192.168.0.0/255.255.0.0; All RFC 1918 addresses are local networks
;localnet=10.0.0.0/255.0.0.0	; Also RFC1918
;localnet=172.16.0.0/12		; Another RFC1918 with CIDR notation
;localnet=169.254.0.0/255.255.0.0 ;Zero conf local network

;-----------------------------------------------------------------------------------
; Users and peers have different settings available. Friends have all settings,
; since a friend is both a peer and a user
;
; User config options:        Peer configuration:
; --------------------        -------------------
; context                     context
; permit                      permit
; deny                        deny
; secret                      secret
; md5secret                   md5secret
; dtmfmode                    dtmfmode
; canreinvite                 canreinvite
; nat                         nat
; callgroup                   callgroup
; pickupgroup                 pickupgroup
; language                    language
; allow                       allow
; disallow                    disallow
; insecure                    insecure
; trustrpid                   trustrpid
; progressinband              progressinband
; promiscredir                promiscredir
; callerid
; accountcode
; amaflags
; incominglimit
; restrictcid
;                             mailbox
;                             username
;                             template
;                             fromdomain
;                             regexten
;                             fromuser
;                             host
;                             mask
;                             port
;                             qualify
;                             defaultip
;                             rtptimeout
;                             rtpholdtimeout

;[sip_proxy]
; For incoming calls only. Example: FWD (Free World Dialup)
;type=user
;context=from-fwd

;[sip_proxy-out]
;type=peer          		; we only want to call out, not be called
;secret=guessit
;username=yourusername		; Authentication user for outbound proxies
;fromuser=yourusername		; Many SIP providers require this!
;host=box.provider.com

;[grandstream1]
;type=friend 			; either "friend" (peer+user), "peer" or "user"
;context=from-sip
;fromuser=grandstream1		; overrides the callerid, e.g. required by FWD
;callerid=John Doe <1234>
;host=192.168.0.23		; we have a static but private IP address
;nat=no				; there is not NAT between phone and Asterisk
;canreinvite=yes		; allow RTP voice traffic to bypass Asterisk
;dtmfmode=info			; either RFC2833 or INFO for the BudgeTone
;incominglimit=1		; permit only 1 outgoing call at a time
				; from the phone to asterisk
;mailbox=1234@default  ; mailbox 1234 in voicemail context "default"
;disallow=all			; need to disallow=all before we can use allow=
;allow=ulaw			; Note: In user sections the order of codecs
				; listed with allow= does NOT matter!
;allow=alaw
;allow=g723.1			; Asterisk only supports g723.1 pass-thru!
;allow=g729			; Pass-thru only unless g729 license obtained


;[xlite1]
;Turn off silence suppression in X-Lite ("Transmit Silence"=YES)!
;Note that Xlite sends NAT keep-alive packets, so qualify=yes is not needed
;type=friend
;regexten=1234                 ; When they register, create extension 1234
;username=xlite1
;callerid="Jane Smith" <5678>
;host=dynamic
;nat=yes                       ; X-Lite is behind a NAT router
;canreinvite=no                ; Typically set to NO if behind NAT
;disallow=all
;allow=gsm                     ; GSM consumes far less bandwidth than ulaw
;allow=ulaw
;allow=alaw

[Benutzer1]
;Turn off silence suppression in X-Lite ("Transmit Silence"=YES)!
;Note that Xlite sends NAT keep-alive packets, so qualify=yes is not needed
type=friend
;regexten=1234                 ; When they register, create extension 1234
username=Benutzer
secret=password
language=de
;callerid="Jane Smith" <5678>
host=dynamic
;nat=yes                       ; X-Lite is behind a NAT router
;canreinvite=no                ; Typically set to NO if behind NAT
;disallow=all
allow=gsm                     ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw


;[snom]
;type=friend			; Friends place calls and receive calls
;context=from-sip		; Context for incoming calls from this user
;secret=blah
;language=de			; Use German prompts for this user 
;host=dynamic			; This peer register with us
;dtmfmode=inband		; Choices are inband, rfc2833, or info
;defaultip=192.168.0.59		; IP used until peer registers
;username=snom			; Username to use in INVITE until peer registers
;mailbox=1234,2345		; Mailboxes for message waiting indicator
;restrictcid=yes		; To have the callerid restriced -> sent as ANI
;disallow=all
;allow=ulaw                     ; dtmfmode=inband only works with ulaw or alaw!
;mailbox=1234@context,2345      ; Mailbox(-es) for message waiting indicator


;[polycom]
;type=friend			; Friends place calls and receive calls
;context=from-sip		; Context for incoming calls from this user
;secret=blahpoly
;host=dynamic			; This peer register with us
;dtmfmode=rfc2833		; Choices are inband, rfc2833, or info
;username=polly			; Username to use in INVITE until peer registers
;disallow=all
;allow=ulaw                     ; dtmfmode=inband only works with ulaw or alaw!
;progressinband=no		; Polycom phones don't work properly with "never"


;[pingtel]
;type=friend
;username=pingtel
;secret=blah
;host=dynamic
;insecure=yes			; To match a peer based by IP address only and not peer
;insecure=very			; To allow registered hosts to call without re-authenticating
;qualify=1000			; Consider it down if it's 1 second to reply
				; Helps with NAT session
				; qualify=yes uses default value
;callgroup=1,3-4		; We are in caller groups 1,3,4
;pickupgroup=1,3-5		; We can do call pick-p for call group 1,3,4,5
;defaultip=192.168.0.60		; IP address to use if peer has not registred

;[cisco1]
;type=friend
;username=cisco1
;secret=blah
;qualify=200			; Qualify peer is no more than 200ms away
;nat=yes			; This phone may be natted
				; Send SIP and RTP to  IP address that packet is 
				; received from instead of trusting SIP headers 
;host=dynamic			; This device registers with us
;canreinvite=no			; Asterisk by default tries to redirect the
				; RTP media stream (audio) to go directly from
				; the caller to the callee.  Some devices do not
				; support this (especially if one of them is 
				; behind a NAT).
;defaultip=192.168.0.4

;[cisco2]
;type=friend
;username=cisco2
;fromuser=markster		; Specify user to put in "from" instead of callerid
;fromdomain=yourdomain.com	; Specify domain to put in "from" instead of callerid
				; fromuser and fromdomain are used when Asterisk
				; places calls to this account.  It is not used for
				; calls from this account.
;secret=blah
;host=dynamic
;defaultip=192.168.0.4
;amaflags=default		; Choices are default, omit, billing, documentation
;accountcode=markster		; Users may be associated with an accountcode to ease billing

Ist der Kontext in der sip.conf so OK?
Der Xlite User ist "Benutzer1".


Danke für die Antwort!!!
 
Also sei mir nicht böse, aber vielleicht kannst du mal den ganzen Müll entsorgen der bei dir auf Kommentar steht!

Du kannst dir diese Sachen ja alle aufheben, solltest aber in den *.conf Dateien, der Übersicht halber, nur Dinge drinnen haben die funktionieren + Bemerkungen dazu!

Nun zur Sache!
Bei dir wird der 'context=default' verwendet
daher setze mal in der extensions.conf (und nur das ohne Müll):

[xlite-in]

exten => _0.,1,Dial(Capi/MSNderFritz:${EXTEN},,)
exten => _0.,2,Congestion
exten => _0.,3,Busy
exten => _0.,4,Hangup

[default]
include => xlite-in

und schaue dir mit 'asterisk -dddvvvr' an wie der dialplan durchlaufen wird!
 
Netview schrieb:
Also sei mir nicht böse, aber vielleicht kannst du mal den ganzen Müll entsorgen der bei dir auf Kommentar steht!

Du kannst dir diese Sachen ja alle aufheben, solltest aber in den *.conf Dateien, der Übersicht halber, nur Dinge drinnen haben die funktionieren + Bemerkungen dazu!

Ich bin die kein bisschen böse, sondern im Gegenteil sehr dankbar.
Die Kommentare werde ich entfernen bzw. ich hatte es sowieso vor.

Deinem Rat werde ich folgen. Ich habe jetzt die ganze Doku von Asterisk gelesen und verstehe langsam die Zusammenhänge.

Auf jeden Fall vielen Dank an dich, ich halte dich auf dem Laufenen - heute Abend teste ich dann die neuen Einstellungen.
 
@Netview

Bei mir steht in der extensions.conf folgendes:

... Dial(CAPI/@MSN:...

hat das @ eine besondere Funktion?


P.S.
Habe gerade * auf fli4l aufgesetzt, nach jeder Mege Doku-Leserei blick ich so langsam durch. Jetzt nehm ich mir mal Netviews Dialplan vor.

Vielen Dank an dieses Forum, insbesondere fli4l-l00ser und Netview. Ohne Euch wäre ich jetzt noch beim Linux installieren...
 
Dago schrieb:
@Netview

Bei mir steht in der extensions.conf folgendes:

... Dial(CAPI/@MSN:...

hat das @ eine besondere Funktion?

Ja - unterdrückt die Rufnummer abgehend

P.S.
Habe gerade * auf fli4l aufgesetzt, nach jeder Mege Doku-Leserei blick ich so langsam durch. Jetzt nehm ich mir mal Netviews Dialplan vor.

Vielen Dank an dieses Forum, insbesondere fli4l-l00ser und Netview. Ohne Euch wäre ich jetzt noch beim Linux installieren...

Danke für die Blumen!

Gruss

Netview
 
Hallo Netview,

zuerst ein dickes Dankeschön und riesen Respenk meinerseits.

Ich kann nun mein Xlite dazu benutzen von jedem Rechner aus per Wlan über die ISDN Leitung rauszutelefonieren und das ist richtig überweltigend.

Ohne dich und der Hilfe in einem derart gut sortierten Forum, hätte ich es nicht geschafft.

Also 1000-Dank!!!

Kannst du mir bitte noch sagen, wie das mit den eingehenden Anrufen gehandhabt wird? Ist es möglich, dass man die CAPI-Schnittstelle an mehrere MSN bindet, so dass über die MSN 1 der Anruf beim Xlite des Benutzers1 klingelt und über die MSN 2 beim Benutzer2?

Und noch eine Frage (ich hoffe, jetzt bin ich nicht zuuuu unverschämt, aber du kannst ja auch einfach nicht antworten) - kann man bei einem Anruf über die Leitung 1, sowohl das Xlite und eine andere Festnetznummer klingeln lassen und dann, je nachdem, wer zuerst rangeht, dorthin das Gespräch vermitteln und nach 20 Sek. "Nichtrangehen" den AB aktivieren.

Also verstehe mich bitte nicht falsch, ich will nicht mit den vielen Fragen unhöflich oder unverschämt werden, denn du hast mir schon riesig geholfen. Ich bin auch froh, wenn du mir eine gute GUI empfehlen kannst, wo ich mich dann noch stärker einarbeiten kann - aber ich freue mich auf jeden Fall über eine Antwort.
 
Damit jetzt dein * kein proxy wird und jemand über dich rausruft unter:

[general]
context=sip-in

bei den peer/provider-Definitionen keinen context angeben dann zieht automatisch der context=sip-in
Bei lokalen Geräten wie Xlite context=default setzen und auch in der capi.conf (ist schon so gesetzt)!!!

Eingehende Anrufe: je nach provider in der sip.conf unter [general]:

register => account-id:p[email protected]/account-id

extensions.conf:

[sip-in]

exten => account-id,1,Dial(Capi/MSNderFritz:${EXTEN},,)

[xlite-in]

exten => _0.,1,Dial(Capi/MSNderFritz:${EXTEN},,)
exten => _0.,2,Congestion
exten => _0.,3,Busy
exten => _0.,4,Hangup

[Benutzer1]

exten => MSN1,1,Dial(SIP/Benutzer1&Capi/MSNderFritz:weitereMSN,20)
exten => MSN1,2,Congestion
exten => MSN1,3,Busy
exten => MSN1,4,Hangup

exten => i,1,Playback(pbx-invalid)
exten => i,2,Hangup

exten => t,1,SetLanguage(de)
exten => t,2,Answer
exten => t,3,Wait(2)
exten => t,4,Voicemail(1234) ; VM in der voicemail.conf
exten => t,5,Hangup


[Benutzer2]

exten => MSN2,1,Dial(SIP/Benutzer2,60)
exten => MSN2,2,Congestion
exten => MSN2,3,Busy
exten => MSN2,4,Hangup

exten => i,1,Playback(pbx-invalid)
exten => i,2,Hangup

exten => t,1,Playback(ss-noservice)
exten => t,2,Hangup

[default]
include => xlite-in
include => Benutzer1
include => Benutzer2
 
"406:wait_for_answer:Unable to forward voice"

Hallo!

Ich habe soeben ein seltsames Phänomen festgestellt:

Ich habe * mit einer HFC-Karte im NT-Mode (u.a.) basierend auf dem opt_asterisk für fli4l. Daran hängen 2 ISDN-Telefone (TelesFon und Elmeg).

Wenn ich mit dem Elmeg das TelesFon anrufe klappts, rufe ich aber vom TelesFon das Elmeg an passiert folgendes:

- Elmeg klingelt, im Hörer vom TelesFon kommt das Klingelsignal - soweit ok.
- Ich nehme das Elmeg ab - und höre nix. Im TelesFon hört man weiter das Klingelsignal.
- Ich lege das Elmeg wieder auf - im TelesFon kommt die Voicebox-Ansage (u88).

Mitunter (aber nicht immer) erscheint auf der Konsole:
WARNING[18450]:app.dial.c:406 wait_for_answer: Unable to forward voice

Wer kann mir weiterhelfen?

Hier ein Ausschnitt aus der extensions.conf (88=Elmeg, 99=TelesFon)
Code:
exten => 88,1,Dial(Zap/g1/88,20,Tt)
exten => 88,2,Voicemail2(u88)
exten => 88,3,Hangup
exten => 88,102,Voicemail2(b88)
exten => 88,103,Hangup

exten => 99,1,Dial(Zap/g1/99,20,Tt)
exten => 99,2,Voicemail2(u99)
exten => 99,3,Hangup
exten => 99,102,Voicemail2(b99)
exten => 99,103,Hang

P.S.
Ich wußte nicht so genau, wohin mit der Frage. Macht man für sowas normalerweise einen neuen Thread auf?

Gruss,
Stephan
 
@Dago

mach doch bitte einen eigenständigen thread hierzu auf - Danke!
 
Netview schrieb:
Damit jetzt dein * kein proxy wird und jemand über dich rausruft unter:

[general]
context=sip-in

Kommt das in die capi.conf oder in die extensions.conf, oder wo?

Danke!
 
Hallo Netview,

leider klappt das nicht mit dem "Durchschleifen" des Anrufs an die SIP-Software (XLite).

Welcher Teil deiner Anleitung war denn dafür zuständig, dass ein Anruf an einen SIP-Benutzer weitergeleitet wird?

Wenn ich das [sip-in] in der sip.conf hinzunehme, dann kann ich von Xlite aus keine Anrufe über die CAPI tätigen.

Hast du irgendeinen Link auf eine gute Doku oder ähnliches, wo etwas vergleichbares aufgebaut wird?

Danke!
 
Anruf von wo?
Per capi, von sipgate???

bei sip-anrufen:
[sip-in]

exten => account-id,1,Dial(Capi/MSNderFritz:${EXTEN},,)

wg. anrufe über die capi muss in der sip-conf unter xlite und in der capi zwingend context=default stehen!!!!!!!!!
Und bei sipgate den context rausnehmen und unter [global] der context=sip-in.
 
Hallo,

na ich möchte, dass ein Anruf über ISDN (capi) auf die MSN XXX an ein Xlite Client yyy weitergeleitet wird.

Sprich, die Xlite Clients ersetzen das ISDN Telefon.

Geht das?

Grüße und Danke!!!
 
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.