Questions about installing and using VOIP phone with Allstar

I found some very old topics that partially covered the subject here, but I didn’t want to bring up 5 year old conversations to ask new questions.

I have been running an Allstar node on a Raspberry Pi with an HT as the RF source for a few years now. It is rock solid and runs great with Allstar and Echolink.

I know that Asterisk does all the heavy lifting under the covers.

So I want to do what other folks have done, put a line on my VOIP phone to log into my local Allstar node for connecting to other nodes.

I have seen some different configurations that will probably work, but before I make all the Allstarlink sysops mad, I have to ask some questions.

I have two node numbers, one is my primary, connected to my RF source. I have a second that is listed as a “Phone Portal” I have never used it.

In all the various instructions I have found for using VOIP phone on Allstar, they add the node number to the SIP.CONF file configs…

So first question is which node? Do I put my main node connected to the RF link, or the second one that I don’t use?

If I want to link to some other node out there in the interwebs, which node number (primary or the unused one) would I use in that SIP.CONF?

My example usage would be to use the VOIP phone to connect or disconnect the RF node (primary node) to or from external nodes.
My other usage would be to use the VOIP phone speakerphone and keypad to monitor or transceive on external nodes.

Last question is does any of this usage violate any best practices by the AllstarLink folks?

If I missed an obvious resource here, please point me there.


Did you see this post when you were brewing the site?


I did not. I don’t have my phone yet on asterisk but that answers a few questions.

It looks like I don’t create a sip.conf entry with my allstar node number…which is different than all the other examples I saw.

Easier question…

Do I need a separate Asterisk server and use that to connect my SIP phone to the Allstar node? Or can I put an entry in the Allstar node’s built in Asterisk server for the phone?

I have my SIP phone on HHHL and a VOIP server through an OBI voip box…I am not currently running Asterisk other than in the Allstar node.


AllStar makes a great PBX. It is a fully functional (if a bit old) version of Asterisk. I use AllStar for my home “landline” with a couple of sip phones, answering machine, two nodes and Echolink all on the same intel D525. You can run separate servers if you want with the radio stuff on one and the PBX stuff on another. It’s all possible with a bit of Asterisk fu.

Thank you,

Part of the problem is I am not even sure what question to ask…

For anyone else who finds this thread, I found this link and it seems to allow me to do what I was asking about… I will say one part that threw me off for a while is in the extensions.conf, he has the node read back his node number…but it is set as the individual digits…so you have to replace his node number, and each individual digit of the readback…why? when you dial your node, you will hear his node read back and freak out for a few minutes…

BTW, I did use the primary node number in this…the one that is connected to my RF link.

I don’t want to get you screwed up but I might.
Forget your thinking on app_rpt/allstar for a moment.
Think totally asterisk.
set-up your sip phone
use the correct context as you want for connections to allstar nodes. You will have to create them.
extentions.conf is used to route points together, from where you are to where you want to be with it.
see by my example some options that are commented out.
This will connect to node 29283 if you dial it.

[radio control]
exten => 29283,1,Answer
exten => 29283,n,Wait(2)
exten => 29283,n,Playback(rpt/node)
exten => 29283,n,Playback(/var/lib/asterisk/sounds/rpt/nodenames/29283)
;exten => 29283,n,Playback(/etc/asterisk/msg/idmsg)
;exten => 29283,n,Playback(digits/2&digits/9&digits/2&digits/8&digits/3)
;exten => 29283,n,Wait(1)
;exten => 29283,n,SayPhonetic(kb8jnm)
;exten => 29283,n,SayAlpha(kb8jnm224.66)
;exten => 29283,n,Playback(repeater)
exten => 29283,n,Rpt,29283|P ;< most important to connect node in ‘phone mode’

Then you can issue commands as if you were on the radio with no ptt but a timeout on digits.
Hangup when done.

You can also describe connections to other phones on your network.
There is a lot to know about asterisk dial plans and the web is full of it.
Just be careful not to use anything specific to the newest versions but I doubt you will run into to many issues with that.
This default context that was used in the acid version was labeled [radio control]
but it only need to match the default context to your sip extension whatever you make it

When you dial out from that sip phone, it will look in [context] in extentions.conf for a match.
So inside of that context, you must describe what to do on a match you want to make.
exten => _50XX,1,Dial(sip/${EXTEN},20) ;dial ext/funtions on this box
exten => _50XX,2,VoiceMail(5000) ; common vm
;exten => _50XX,2,VoiceMail(${EXTEN}) ; voicemail per dialed ext
exten => _50XX,n,Hangup

in that example all these sip ext are 4 digit beginning with 50

What you are saying makes sense, after narrowing down the edits to the two files sip.conf and extensions.conf I got a working system…

However it isn’t working 100%. No Node ID info is being sent or read and at best it is very annoying…since it announces N-O-C-I-D…

I attempted about 10 different solutions for the NO-CID node… including this attached one…but nothing changes.

Again, the setup is I am using my primary node number in all instances as required, and I am not running a PBX or Asterisk server outside the Allstar install.


OMG this was funny now that I have learned what is going on.

So during all this testing and troubleshooting, I would monitor the Asterisk CLI Client within the Allstar Pi.

And I did some testing, adding things here and there, finally even adding a different command that should read out the IP address…I thought either that should work or give an error of some kind…

What I learned is the last line seen in the extensions.conf entry relating to this is…

exten => node,n,Rpt,node|P

Nothing is executed below that if you don’t preset the priorities.

So I should have simply modified the |P line with the CALLERID info…I realized this after I cut and pasted that line above the |P line.

exten => node,n,Rpt,node|P|${CALLERID(name)} ; can be name, all, num etc.
exten => node,n,Rpt,node|P ; this line is now redundant.

Hope that helps all other newbies…