* You are viewing the archive for May 13th, 2012

GSM gateway or PCI Card recommendation?

I am looking for a GSM Gateway or GSM PCI Card with minimum of 6 Sim Cards
slots.

Which one do you recommend and easier to setup?

As long it work on UK mobile network and make 6 calls simultaneously.

Thanks

Configuring OpenVOX A400P issues

Hi,

I’m using Trixbox 2.8 edition and having issues with my PSTN line and
the OpenVox A400P card.

During purchase I decided to go for the 1xFXS and 1xFXO option.

I hooked the PSTN and my POTs DECT phone up correctly and configured the
appropriate trunks, routes, and extensions.

The system was working fine for a bit until all of a sudden it just went
funny….. by this I mean that an inbound call would be detected, the
DECT POTs phone would ring but pressing the green button isn’t answering
the call.

On the Trixbox UI I can see that somebody called and it shows as
answered but apart from that, the callee side still rings.

Additionally sometimes the POTs phone just won’t ring either??

Internally, using SIP to POTs extensions work fine……

The system is a Mini-ITX Intel ATOM D510 1.66GHz driven box with 1GB RAM
and 40GB SSD. My PSTN provider is BT in the UK.

I am still quite new to Asterisk so I’m not quite sure what is going on
or what to provide, here are the dahdi config files:

genconf_parameters:

# cat genconf_parameters
#
# /etc/dahdi/genconf_parameters
#
# This file contains parameters that affect the
# dahdi_genconf configuration generator.
#
# Syntax:
# * A comment from ‘#’ to end of line
# * Blank lines ignored
# * Whitespace at end of line trimmed
# * Single valued items:
# key value
# * List valued items:
# key
#
value1
#
value2
# …
#

# When generating extensions for chan_dahdi.conf or users.conf etc: the
# extension number will be channel_number+base_exten . The default is:
base_exten 4000
#
# Make FXS (analog phones) extensions answer immediately (sets
# ‘immediate = yes’ for them in chan_dahdi.conf). Don’t enable this before
# you’re read documentation about this option.
fxs_immediate yes
#
# For FXS (analog phones) – use KS or LS? ks is the only method for
# Asterisk to provide disconnect supervision and thus it would normally
# be preferred and is the default.
fxs_default_start ls
#
# For FXO (analog lines) – use KS or LS? KS is the default and is
# normally the better choice as it allows detecting hang-ups on many
# lines.
fxo_default_start ls

# Set tone zone values. This is used for playing tones (busy, dial-tone
# and such). The default is ‘us’. This sets the value for both loadzone
# and defaultzone in system.conf .
lc_country uk

# The dialplan context into which to send trunks in chan_dahdi.conf or
# users.conf. The default value is:
context_lines from-pstn
#
# The dialplan context into which to send extensions in chan_dahdi.conf or
# users.conf. The default value is:
context_phones from-internal
#
# Two extra contexts for the input ports and output ports of an
# Astribank. Default values are:
#context_input astbank-input
#context_output astbank-output

# A group to put all analog phones in. By default 0, so you can dial to
# the ‘first phone available’ using Dahdi/g5 .
#group_phones 5
#
# A group in which to put all the channels belonging to some trunk.
# Thus you can dial through “some trunk” using Dahdi/G0/NUMBER
#group_lines 0

# Channels of digital trunk of span N are also added to group 10+N (that
# is: 14 for channels of span 4).

# Do we want to use PtP (‘bri’) or PtMP (‘bri_ptmp’) for BRI? PtMP
# allows connecting several CPE devices on the same network device
# (several BRI phones on the same line, kind of like several analog
# phones on the same analog line). However it is generally brings
# unnecessary complexity for a pbx-pbx connection. It is still the
# default as this is normally what you get for a BRI PSTN connection.
#bri_sig_style bri
#
# If this option is set (that is: not remmed-out), BRI NT ports will
# also be set as overlap. This is useful if you want to connect ISDN
# phones.
#brint_overlap

# The echo canceler to use. If you have a hardware echo canceler, just
# leave it be, as this one won’t be used anyway.
#
# The default is mg2, but it may change in the future. E.g: a packager
# that bundles a better echo canceler may set it as the default, or
# dahdi_genconf will scan for the “best” echo canceler.
#
#echo_can hpec
#echo_can oslec
#echo_can none # to avoid echo canceler altogether

# bri_hardhdlc:
# ‘yes’ – forces BRI cards to use ‘hardhdlc’ signalling.
# ‘no’ – forces BRI cards to use ‘dchan’ (an alias for ‘fcshdlc’).
# It is usefull only for dahdi with the bristuff patch.
#
# If it is left out or set to ‘auto':
# * Information supplied by the driver is used to decide:
# – Currently implemented for Astribanks.
# – Taken from /sys/bus/xpds/drivers/bri/dchan_hardhdlc.
# * Without this info, falls back to ‘hardhdlc’.
#bri_hardhdlc auto

# For MFC/R2 Support: ‘R2′ will make E1 spans CAS and with the
# ‘r2_idle_bits’ bit in system.conf . It will also make dahdi_genconf
default
# to generating the channels of this card in unicall.conf rather than in
# chan_dahdi.conf . The meaning of this may be extended somehow to support
# R2 through openr2/chan_dahdi later on.
#pri_connection_type R2
#pri_connection_type CAS
#
# Explicitly set the idle bits for E1 CAS (Sample value is the default):
#r2_idle_bits 1101
#
# Set T1 framing type to d4 instead of esf:
#tdm_framing d4
#
# Use E&M on CAS (default is FXS/FXO). If set, E1 spans will be used as
# E&M-E1 and T1 will use the requested type:
#em_signalling em
#em_signalling em_w
#em_signalling featd
#em_signalling featdtmf
#em_signalling featdtmf_ta
#em_signalling featb
#em_signalling fgccama
#em_signalling fgccamamf
#
# pri_termtype contains a list of settings:
# Currently the only setting is for TE or NT (the default is TE). This
# sets two different but normally related configuration items:
#
# A TE span will have *_cpe signalling in Asterisk and will also get
# timing from the remote party.
#
# A NT span will have *_new signalling in Asterisk and will provide
# timing to the remote party.
#
# pri_termtype is a list if span specs and configuration (TE/NT) for
# them. The first spec that matches is used. The matching is of perl
# regular expressions, but with ‘*’ and ‘?’ have their meaning from
# basic regular expressions.
#pri_termtype
# SPAN/2 NT
# SPAN/4 NT
#
#pri_termtype
# SPAN/* NT
#

system.conf file:

# cat system.conf
# Autogenerated by /usr/sbin/dahdi_genconf on Sun May 13 13:22:57 2012
# If you edit this file and execute /usr/sbin/dahdi_genconf again,
# your manual changes will be LOST.
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Span 1: WCTDM/4 “Wildcard TDM400P REV E/F Board 5″ (MASTER)
fxols=1
echocanceller=mg2,1
fxsls=2
echocanceller=mg2,2
# channel 3, WCTDM/4/2, no module.
# channel 4, WCTDM/4/3, no module.

# Global data

loadzone = uk
defaultzone = uk

Here is the output from asterisk full log:

[May 13 13:15:29] VERBOSE[3624] logger.c: — Starting simple switch on ‘DAHDI/2-1′
[May 13 13:15:29] NOTICE[3624] chan_dahdi.c: Got event 18 (Ring Begin)…
[May 13 13:15:29] NOTICE[3624] chan_dahdi.c: Got event 2 (Ring/Answered)…
[May 13 13:15:31] ERROR[3624] callerid.c: No start bit found in fsk data.
[May 13 13:15:31] WARNING[3624] chan_dahdi.c: CallerID feed failed: No such file or directory
[May 13 13:15:31] WARNING[3624] chan_dahdi.c: CallerID returned with error on channel ‘DAHDI/2-1′
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@from-pstn:1] Set(“DAHDI/2-1″, “__FROM_DID=s”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@from-pstn:2] Gosub(“DAHDI/2-1″, “app-blacklist-check,s,1″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@app-blacklist-check:1] GotoIf(“DAHDI/2-1″, “0?blacklisted”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@app-blacklist-check:2] Return(“DAHDI/2-1″, “”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@from-pstn:3] ExecIf(“DAHDI/2-1″, “1 ?Set(CALLERID(name)=)”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@from-pstn:4] Set(“DAHDI/2-1″, “__CALLINGPRES_SV=allowed_not_screened”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@from-pstn:5] Set(“DAHDI/2-1″, “CALLERPRES()=allowed_not_screened”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@from-pstn:6] Goto(“DAHDI/2-1″, “from-did-direct,250,1″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Goto (from-did-direct,250,1)
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [250@from-did-direct:1] Macro(“DAHDI/2-1″, “exten-vm,250,250″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:1] Macro(“DAHDI/2-1″, “user-callerid”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:1] Set(“DAHDI/2-1″, “AMPUSER=”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:2] GotoIf(“DAHDI/2-1″, “0?report”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:3] ExecIf(“DAHDI/2-1″, “1?Set(REALCALLERIDNUM=)”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:4] Set(“DAHDI/2-1″, “AMPUSER=”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:5] Set(“DAHDI/2-1″, “AMPUSERCIDNAME=”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:6] GotoIf(“DAHDI/2-1″, “1?report”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Goto (macro-user-callerid,s,10)
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:10] GotoIf(“DAHDI/2-1″, “0?continue”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:11] Set(“DAHDI/2-1″, “__TTL=64″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:12] GotoIf(“DAHDI/2-1″, “1?continue”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Goto (macro-user-callerid,s,19)
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-user-callerid:19] NoOp(“DAHDI/2-1″, “Using CallerID “”<>”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:2] Set(“DAHDI/2-1″, “RingGroupMethod=none”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:3] Set(“DAHDI/2-1″, “VMBOX=250″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:4] Set(“DAHDI/2-1″, “EXTTOCALL=250″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:5] Set(“DAHDI/2-1″, “CFUEXT=”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:6] Set(“DAHDI/2-1″, “CFBEXT=”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:7] Set(“DAHDI/2-1″, “RT=30″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:8] Macro(“DAHDI/2-1″, “record-enable,250,IN”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-record-enable:1] GotoIf(“DAHDI/2-1″, “1?check”) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Goto (macro-record-enable,s,4)
[May 13 13:15:31] VERBOSE[3624] logger.c: — Executing [s@macro-record-enable:4] AGI(“DAHDI/2-1″, “recordingcheck,20120513-131531,1336914929.0″) in new stack
[May 13 13:15:31] VERBOSE[3624] logger.c: — Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
[May 13 13:15:32] VERBOSE[3624] logger.c: recordingcheck,20120513-131531,1336914929.0: Inbound recording not enabled
[May 13 13:15:32] VERBOSE[3624] logger.c: –AGI Script recordingcheck completed, returning 0
[May 13 13:15:32] VERBOSE[3624] logger.c: — Executing [s@macro-record-enable:5] MacroExit(“DAHDI/2-1″, “”) in new stack
[May 13 13:15:32] VERBOSE[3624] logger.c: — Executing [s@macro-exten-vm:9] Macro(“DAHDI/2-1″, “dial,30,tr,250″) in new stack
[May 13 13:15:32] VERBOSE[3624] logger.c: — Executing [s@macro-dial:1] GotoIf(“DAHDI/2-1″, “1?dial”) in new stack
[May 13 13:15:32] VERBOSE[3624] logger.c: — Goto (macro-dial,s,3)
[May 13 13:15:32] VERBOSE[3624] logger.c: — Executing [s@macro-dial:3] AGI(“DAHDI/2-1″, “dialparties.agi”) in new stack
[May 13 13:15:32] VERBOSE[3624] logger.c: — Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi
[May 13 13:15:32] VERBOSE[3624] logger.c: dialparties.agi: Starting New Dialparties.agi
[May 13 13:15:32] VERBOSE[3624] logger.c: dialparties.agi: Caller ID name is ‘unknown’ number is ‘unknown’
[May 13 13:15:32] VERBOSE[3624] logger.c: dialparties.agi: Methodology of ring is ‘none’
[May 13 13:15:32] VERBOSE[3624] logger.c: — dialparties.agi: Added extension 250 to extension map
[May 13 13:15:32] VERBOSE[3624] logger.c: — dialparties.agi: Extension 250 cf is disabled
[May 13 13:15:32] VERBOSE[3624] logger.c: — dialparties.agi: Extension 250 do not disturb is disabled
[May 13 13:15:32] VERBOSE[3624] logger.c: dialparties.agi: EXTENSION_STATE: 4 (UNAVAILABLE)
[May 13 13:15:32] VERBOSE[3624] logger.c: — dialparties.agi: DbDel CALLTRACE/250 – Caller ID is not defined
[May 13 13:15:32] VERBOSE[3624] logger.c: — dialparties.agi: Filtered ARG3: 250
[May 13 13:15:32] VERBOSE[3624] logger.c: –
AGI Script dialparties.agi completed, returning 0
[May 13 13:15:32] VERBOSE[3624] logger.c: — Executing [s@macro-dial:7] Dial(“DAHDI/2-1″, “DAHDI/1,30,tr”) in new stack
[May 13 13:15:32] VERBOSE[3624] logger.c: — Called 1
[May 13 13:15:32] DEBUG[3056] pbx.c: FONALITY: This thread has already held the conlock, skip locking
[May 13 13:15:32] VERBOSE[3624] logger.c: — DAHDI/1-1 is ringing
[May 13 13:15:32] VERBOSE[3624] logger.c: — DAHDI/1-1 is ringing
[May 13 13:15:33] WARNING[3624] chan_dahdi.c: Didn’t finish Caller-ID spill. Cancelling.
[May 13 13:15:33] VERBOSE[3624] logger.c: — DAHDI/1-1 is ringing
[May 13 13:15:35] VERBOSE[3624] logger.c: — DAHDI/1-1 answered DAHDI/2-1
[May 13 13:15:35] DEBUG[3056] pbx.c: FONALITY: This thread has already held the conlock, skip locking
[May 13 13:15:35] WARNING[3624] chan_dahdi.c: Ring/Off-hook in strange state 6 on channel 2
[May 13 13:15:37] WARNING[3624] chan_dahdi.c: Ring/Off-hook in strange state 6 on channel 2
[May 13 13:15:49] VERBOSE[3624] logger.c: — Executing [h@macro-dial:1] Macro(“DAHDI/2-1″, “hangupcall”) in new stack
[May 13 13:15:49] VERBOSE[3624] logger.c: — Executing [s@macro-hangupcall:1] GotoIf(“DAHDI/2-1″, “1?skiprg”) in new stack
[May 13 13:15:49] VERBOSE[3624] logger.c: — Goto (macro-hangupcall,s,4)
[May 13 13:15:49] VERBOSE[3624] logger.c: — Executing [s@macro-hangupcall:4] GotoIf(“DAHDI/2-1″, “1?skipblkvm”) in new stack
[May 13 13:15:49] VERBOSE[3624] logger.c: — Goto (macro-hangupcall,s,7)
[May 13 13:15:49] VERBOSE[3624] logger.c: — Executing [s@macro-hangupcall:7] GotoIf(“DAHDI/2-1″, “1?theend”) in new stack
[May 13 13:15:49] VERBOSE[3624] logger.c: — Goto (macro-hangupcall,s,9)
[May 13 13:15:49] VERBOSE[3624] logger.c: — Executing [s@macro-hangupcall:9] Hangup(“DAHDI/2-1″, “”) in new stack
[May 13 13:15:49] VERBOSE[3624] logger.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘DAHDI/2-1′ in macro ‘hangupcall’
[May 13 13:15:49] VERBOSE[3624] logger.c: == Spawn extension (macro-dial, h, 1) exited non-zero on ‘DAHDI/2-1′
[May 13 13:15:49] VERBOSE[3624] logger.c: — Hungup ‘DAHDI/1-1′
[May 13 13:15:49] DEBUG[3056] pbx.c: FONALITY: This thread has already held the conlock, skip locking
[May 13 13:15:49] VERBOSE[3624] logger.c: == Spawn extension (macro-dial, s, 7) exited non-zero on ‘DAHDI/2-1′ in macro ‘dial’
[May 13 13:15:49] VERBOSE[3624] logger.c: == Spawn extension (macro-exten-vm, s, 9) exited non-zero on ‘DAHDI/2-1′ in macro ‘exten-vm’
[May 13 13:15:49] VERBOSE[3624] logger.c: == Spawn extension (from-did-direct, 250, 1) exited non-zero on ‘DAHDI/2-1′
[May 13 13:15:49] VERBOSE[3624] logger.c: — Hungup ‘DAHDI/2-1′

This is what lsdahdi shows:

# /usr/sbin/lsdahdi
### Span 1: WCTDM/4 “Wildcard TDM400P REV E/F Board 5″ (MASTER)
1 FXS FXOLS (In use) (SWEC: MG2)
2 FXO FXSLS (In use) (SWEC: MG2) RED
3 EMPTY
4 EMPTY

I have also had a look at these topics too:

http://forums.digium.com/viewtopic.php?f=13&t=80478

http://lists.digium.com/pipermail/asterisk-users/2010-May/248318.html

Can anybody help me?

Thanks

Kaya

Setting channel variable using AMI

Hi list,

I am trying to set a channel variable from AMI, when I do so I get
success response but there is no variable set to that channel.

http://www.voip-info.org/wiki/index.php?page=Asterisk+Manager+API+Action+SetVar

When I don’t pass channel name for setting a global variable, I can
get that variable in hangup extension but not the channel variable.

Regards,
Zohair Raza