[Asterisk-Users] Budgettone 100 phone Configuration

Stephen R. Besch sbesch at acsu.buffalo.edu
Wed Jun 4 12:08:30 MST 2003


 >Hi Just received the above phone

 >Does anyone have sip.conf and extension.conf example for the SIP phone 
 >working with the FXS w100p and the FXO tdm400d

 >any help would be appreciated

I can't help with the FXS/FXO stuff but I can tell you what I've done 
with the Budgetone 100. The network settings will depend on your local 
configuration, so I'll leave most of those out of this discussion. On 
the phone:

1) Set the phone up to use in-band signaling.  At the present time, 
out-of-band does not work reliably.  It has something to do with the 
fact that the RFC2833 specifies that repeated RTP packets can be sent as 
long as a button is pressed.  Asterisk sees these as multiple digits. 
Budgetone is working on this issue, and I believe so is Mark Spencer.

2) I have found that dynamic registration only works if the SIP User ID 
and the Authenticate ID on the phone both match the section title for 
the phone in sip.conf.  It doesn't matter if you statically assign the 
IP or use DHCP. (see note below)

3) Set "Early Dial" to "yes"

4) Set "Use # as dial key" to "no"

5) If you are using the voicemail application, you can set the 
"voicemail user ID" to automatically open your voice mail box. You will 
need to create a unique extension and then enter it in the voicemail 
user ID field with your mail box appended.  For example, assuming that 
you are using 3 digit mailboxes and you choose to define your mailbox 
retrieval extension as _78XXX, then put 78100 in this field.  Then to 
get your messages, pick up the handset and press the message button.

6) The budgetone phone needs access to an NTP server (at least for now) 
to set the Date/Time.  If you are running your phones on a non-routable 
network, then you will need to mirror an NTP server through your 
asterisk server on the same subnet. I did this by adding the following 
line to \etc\ntp.conf:

restrict 192.168.10.0 mask 255.255.255.0 notrust nomodify notrap

This permits any phone with an IP address from 192.168.10.0 to 
192.168.10.255 to get the date and time from your linux box.  Just 
change the IP base address and netmask to the range you want to use and 
insert this line in the conf file.

7) If you want to update the phone's firmware, you will need access to a 
tftp server.  You can enable your own, or use the one that grandstream 
provides (see their web site)

8) There are some issues with the sounding of the DTMF tones. Under some 
circumstances, when you press a button, there will be no sound.  The 
tone packets are sent to asterisk, just no sound is heard.  Budgetone is 
working on this issue and it should be fixed very soon.  Check their web 
site for updated firmware in the next week or so.

9) If you specify a mailbox in the phones definition in sip.conf, any 
time there are unheard messages in that inbox, SIP MWI packets will be 
sent to the phone. The phone will blink the display and deliver a 
stutter dial tone if there are messages waiting. When you empty the 
inbox, the display stops flashing and the stutter dial tone is replaced 
with a standard dial tone.

--------------

Then, in sip.conf, add an entry for each phone. For example, for an 
extension numbered 100 with a voicemail box defined as 100

[budgetone100]		;I name each phone as type + exten
type=friend
context=longdistance	;or some other appropriate context
username=yourname
fromuser=Your Full Name
host=Phones IP address	; or dynamic
dtmfmode=inband		;important! rfc2833 may work in future
secret=@@##!00		;Optional, only works if dynamic
qualify=1000		;If set, asterisk will test line response time
mailbox=100		;Set to use MWI on phone

In extensions.conf.  I put this in my "local" context so that people 
calling in from outside could not access the "automatic" message 
retrieval extension.  There is different extension in the default 
context for accessing voice mail from the outside, which requires the 
entry of the mailbox and password. I also bypass the password check in 
our system, since everyone has their own phone and message security is 
not an issue for us. Remove the "s" from the VoicemailMain argument if 
you want to enforce password usage.

exten => _781XX,1,Wait(1)
exten => _781XX,2,VoicemailMain(s${EXTEN:2})
exten => _781XX,3,Hangup

In the default context (assumes that you are using a stdexten macro):

exten => 107,1,Macro(stdexten,SIP/budgetone100)

Extras:

These are my notes on the "host=" option.  Some of it was gleaned by 
studying the sources, some by trial and error. If the experts would 
critique and correct it would be appreciated.

option:	host=

	Valid in:
		sip.conf
		Others???

	Format:
		host=<ip address>  - or-
		host=dynamic

	Function:
		Defines the IP address of a SIP (or other) type phone.

Using host=dynamic.  This option is not quite what it appears to be. The 
idea behind it is that it permits the phone to define the IP address 
rather than having it defined in sip.conf.  It doesn't matter how the IP 
is obtained or set up at the phone. If the IP is specified in sip.conf 
with "host=", asterisk will attempt to communicate with the phone when 
the conf file is loaded, and from time to time thereafter, in an attempt 
to establish a registration.  In this case, the "secret=" option appears 
to have no effect. If the host is specified as "dynamic", asterisk will 
do nothing until the phone sends an SIP:REGISTER request.  This request 
includes the password and username specified by the phone. Asterisk 
first checks the username against each of the "[sipphone]" entries 
defined in sip.conf until it finds a match.  If no match is found, the 
registration request is rejected. If there is a "secret=" option, 
asterisk next checks the password to see if it matches the "secret=" 
field. If it doesn't, the request is rejected.  Once the password is 
validated, the phone will be registered and communication may begin.  As 
far as I can tell, the name must match the section title (the name in 
the matching "[]". Matching the "username=field" doesn't work.

Note that there is really no direct relationship between the 
host=dynamic" option and DHCP, although it does allow interoperability 
with systems that use DHCP, given that, in general, the IP isn't known
when asterisk starts.  All dynamic means is that the phone supplies the 
IP, making management of sip.conf easier and also permitting authentication.

-- 
Stephen R. Besch, Ph.D.
SachsLab
320 Cary Hall
SUNY at Buffalo
Buffalo, NY 14214
(716) 829-3289 x106




More information about the asterisk-users mailing list