Comments (3)
Please place call from phone or other dongle and check what is happened. Also please configure your dialplan to receive calls from dongles
from asterisk-chan-dongle.
Hi Vitaly,
Thank you very much for your comment. It was due to my modem not being voice-enabled. I enabled it with dc-unlocker, a proprietary program, because I could not find the AT commands for this.
Currently, incoming calls work without any issues, after adding just one line in extensions.conf
and dongle.conf
respectively:
(extensions.conf)
[from-external]
exten => +54...[FULL NUMBER],Dial(PJSIP/4)
(dongle.conf)
exten=+54...[SAME NUMBER AS ABOVE] ; exten for start incoming calls, only in case of Subscriber Number not available!, also set to CALLERID(ndid)
However, I still have a problem making outgoing calls from my SIP phones. From the Asterisk console (asterisk -rvvvvv
), I see the following message:
router*CLI>
[Jul 19 01:54:13] NOTICE[12293]: res_pjsip_session.c:3960 new_invite: 5: Call (UDP:10.X.X.X:5060) to extension '4...[ARGENTINE PHONE NUMBER]' rejected because extension not found in context 'from-internal'.
Below is my full extensions.conf
. My real number is redacted so that it can be posted online.
[from-internal]
exten => _X,1,Dial(PJSIP/${EXTEN})
exten => _X.,n,Dial(Dongle/dongle0/${EXTEN})
[from-external]
exten => +54...[FULL NUMBER],1,Dial(PJSIP/4)
My dongle.conf
is defined as follows:
[general]
interval=15 ; Number of seconds between trying to connect to devices
smsdb=/var/lib/asterisk/smsdb
csmsttl=600
;------------------------------ JITTER BUFFER CONFIGURATION --------------------------
;jbenable = yes ; Enables the use of a jitterbuffer on the receiving side of a
; Dongle channel. Defaults to "no". An enabled jitterbuffer will
; be used only if the sending side can create and the receiving
; side can not accept jitter. The Dongle channel can't accept jitter,
; thus an enabled jitterbuffer on the receive Dongle side will always
; be used if the sending side can create jitter.
;jbforce = no ; Forces the use of a jitterbuffer on the receive side of a Dongle
; channel. Defaults to "no".
;jbmaxsize = 200 ; Max length of the jitterbuffer in milliseconds.
;jbresyncthreshold = 1000 ; Jump in the frame timestamps over which the jitterbuffer is
; resynchronized. Useful to improve the quality of the voice, with
; big jumps in/broken timestamps, usually sent from exotic devices
; and programs. Defaults to 1000.
;jbimpl = fixed ; Jitterbuffer implementation, used on the receiving side of a Dongle
; channel. Two implementations are currently available - "fixed"
; (with size always equals to jbmaxsize) and "adaptive" (with
; variable size, actually the new jb of IAX2). Defaults to fixed.
;jbtargetextra = 40 ; This option only affects the jb when 'jbimpl = adaptive' is set.
; The option represents the number of milliseconds by which the new jitter buffer
; will pad its size. the default is 40, so without modification, the new
; jitter buffer will set its size to the jitter value plus 40 milliseconds.
; increasing this value may help if your network normally has low jitter,
; but occasionally has spikes.
;jblog = no ; Enables jitterbuffer frame logging. Defaults to "no".
;-----------------------------------------------------------------------------------
[defaults]
; now you can set here any not required device settings as template
; sure you can overwrite in any [device] section this default values
context=from-external ; context for incoming calls
group=0 ; calling group
rxgain=0 ; increase the incoming volume; may be negative
txgain=0 ; increase the outgoint volume; may be negative
autodeletesms=yes ; auto delete incoming sms
resetdongle=yes ; reset dongle during initialization with ATZ command
u2diag=-1 ; set ^U2DIAG parameter on device (0 = disable everything except modem function) ; -1 not use ^U2DIAG command
usecallingpres=yes ; use the caller ID presentation or not
callingpres=allowed_passed_screen ; set caller ID presentation by default use default network settings
disablesms=no ; disable of SMS reading from device when received
; chan_dongle has currently a bug with SMS reception. When a SMS gets in during a
; call chan_dongle might crash. Enable this option to disable sms reception.
; default = no
language=en ; set channel default language
mindtmfgap=45 ; minimal interval from end of previews DTMF from begining of next in ms
mindtmfduration=80 ; minimal DTMF tone duration in ms
mindtmfinterval=200 ; minimal interval between ends of DTMF of same digits in ms
;callwaiting=auto ; if 'yes' allow incoming calls waiting; by default use network settings
; if 'no' waiting calls just ignored
disable=no ; OBSOLETED by initstate: if 'yes' no load this device and just ignore this section
initstate=start ; specified initial state of device, must be one of 'stop' 'start' 'remote'
; 'remove' same as 'disable=yes'
;exten=+1234567890 ; exten for start incoming calls, only in case of Subscriber Number not available!, also set to CALLERID(ndid)
exten=+54... [valid mobile number] ; exten for start incoming calls, only in case of Subscriber Number not available!, also set to CALLERID(ndid)
dtmf=relax ; control of incoming DTMF detection, possible values:
; off - off DTMF tones detection, voice data passed to asterisk unaltered
; use this value for gateways or if not use DTMF for AVR or inside dialplan
; inband - do DTMF tones detection
; relax - like inband but with relaxdtmf option
; default is 'relax' by compatibility reason
; dongle required settings
[dongle0]
audio=/dev/ttyUSB1 ; tty port for audio connection; no default value
data=/dev/ttyUSB2 ; tty port for AT commands; no default value
; or you can omit both audio and data together and use imei=123456789012345 and/or imsi=123456789012345
; imei and imsi must contain exactly 15 digits !
; imei/imsi discovery is available on Linux only
;imei=123456789012345
;imsi=123456789012345
imei=35... [15 digits]
imsi=72... [15 digits]
; if audio and data set together with imei and/or imsi audio and data has precedence
; you can use both imei and imsi together in this case exact match by imei and imsi required
Do you know what I am missing? Why is the _X.
in extensions.conf
not matched? Inbound calls work fine. Now, I would just need to fix the outbound calls.
Thanks for the help.
Regards,
Bruno
from asterisk-chan-dongle.
Fixed! I just had to swap the positions of these two extensions:
[from-internal]
exten => _X.,1,Dial(Dongle/dongle0/${EXTEN})
exten => _X,n,Dial(PJSIP/${EXTEN})
Now I can initiate calls from SIP phones as well as receive them.
Thanks!
from asterisk-chan-dongle.
Related Issues (20)
- Configuring 4G Module HOT 47
- Huawei E367 is not detected by IMEI/IMSI, only by data/Audio port exactly specified !
- Cannot compile on aarch64-arc
- Problem while connecting my Huawei 3372-608 Dongle HOT 2
- New guide
- Disappeared from lsusb
- about future support of those 3G USB Dongle after carriers phasing out 3G
- Forward incoming SMS from each dongle to different email addresses
- Asterisk does not hear dtmf sounds HOT 2
- [dongle0] Request to call on device which can not make call at this moment
- busy trying connect to ttyusb
- It would be great to have the option to turn it into a proxy
- How can I change the email that I already configured so that the sms are sent for another?
- How can I add a unique id for each received sms, when it is saved in /var/log/asterisk/sms.txt
- How To Remove Subscriber Number HOT 1
- WiFi dongle
- Dongle
- struct ast_channel: forward declaration / incomplete definition of type
- Loud noise on GSM to SIP Trunk
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from asterisk-chan-dongle.