Suggestions for future versions of FreePBX

(Joshua C. Colp) #43

Can you clarify what you mean by “identify by port”? Within PJSIP, the identify support has supported identifying including based on port for awhile now. I don’t know if that’s what you’re referring to, or if supported by FreePBX.

(Tom Ray) #44

Yes, FreePBX supports it because the PJSIP Trunk fields offer a text field to put in IPs to match against for incoming calls. It probably doesn’t denote that you can do,,,

Yes, there are some things that are missing in chan_pjsip such a tel uri support. That type of thing was most likely deemed a small percentage of use and could be added in the future when there is a demand. I do agree that demand is growing so it could end up being in there. I mean it took until 16.19 or so for the RFC4325 issue to be addressed (proper XML data for NOTIFYs for call pickup). Been working great with the patch and after the patch was brought into mainline. At the same time new things have been introduced in chan_pjsip over the last three releases and FreePBX still doesn’t do anything with them.

So I think this does highlight a big qualifier for this discussion and that is how FreePBX is handling Chan_PJSIP. Because those of us that are using chan_pjsip in a pure Asterisk environment are really not seeing most of the issues using it in a FreePBX setup would.

Honestly, when I started to get as much on PJSIP as possible 3-4 years ago my biggest problem with PJSIP was FreePBX. Once I abandoned FreePBX’s methods, did everything in the custom files and did my own configs, PJSIP work way better and was easier to deal with.


Tom, I’m not sure if you still feel that way, but this is why I suggested moving the pjsip module more towards the way that the chan_sip module works, by creating an open field like the PEER details.

Doing it that way is also a lot faster if you have do to a bunch of different trunks, because can just cut and paste from one source instead of having to input multiple fields on multiple tabs.

(This reminds me of the debate about the “dialed number manipulation rules” changes from 6+ years ago).

And again, this is why it is not yet time to disable chan_sip by default. That day will come. It is not here yet. :slight_smile:

(Tom Ray) #46

Care to elaborate on that?

(Yois) #47

The problem with this is that feature requests on the Asterisk JIRA are rejected from community members unless they include a patch. This is not helpful; many end users are quite adept at reporting legitimate bugs and feature parity issues with chan_sip, but don’t have the programming skills or the time to actually write patches to support the development of PJSIP. Closing the tickets prevents us from even getting to first base.

The better option is not to use chan_sip, but to open a Feature Request in Asterisk JIRA, and post a bounty or find someone to write the patch.

Everyone needs to remember that this is an OPEN SOURCE project. As a community, we are getting something for free… If you don’t like something then contribute. Complaining about PJSIP is inappropriate IMHO. Let’s all work together to do this right. The code for chan_sip is horrid and the PJSIP rewrite is long overdue.

(Ad Fun7911) #48

I’ve been mentioned here several times now, and I think I need to speak up as well. It’s about the issue I have with PJSIP and NAT.

First of all I have to declare that I’m not as professional as you all might are, so please be tolerant with me. I cannot say for sure if my issue is a bug, a misconfiguration or even something else.

@Stewart1 I don’t think it’s fair when you say I’ve not been helpful. The problem with the issue is that it’s very intermittent. Since you asked me for logs of when the issue occurs, it didn’t happen again at all. Power cycling the modem didn’t work to trigger the issue so right now I can just wait for it to happen. But if anyone has an idea of what else I could do, I’m glad to hear that.

@AdHominem Even thought I do not completely agree, I think your opinion on removing Chan_SIP isn’t entirely wrong. When I started working with FreePBX I decided to use PJSIP because of a comment I found from @lgaetz that recommended using PJSIP. It worked for me most of the time, but I have to say that there is a lack of documentation on PJSIP. For me as someone who hasn’t worked with Asterisk before, it was much easier to setup Chan_SIP than PJSIP, especially about NAT.
Don’t get me wrong, I don’t want to say you shouldn’t use PJSIP. I’m using it myself, even though it’s not working as easy as Chan_SIP for me.
Why not disabling Chan_SIP by default on new installations but allowing to install it as a module if that’s possible? Wouldn’t that be something everyone could agree on?

(Simon Telephonics) #49

Indeed, this is how it is in FreePBX 16. (Try the beta!)

I don’t think I would agree on this, at least not entirely.

Documentation in the Asterisk wiki is quite good, though most FreePBX users are not digging into the Asterisk wiki.

chan_sip has been around a while and you will find documentation in the form of tutorials, blogs, wikis, and support forum materials going back almost 15 years. Because it has been around longer, there is more such documentation, for sure.

PJSIP in FreePBX is a little more self-documenting. For example, with a chan_sip trunk, you are presented with a Peer textbox where you had to enter the config. A PJSIP trunk gives you labeled, tool-tipped fields so that you can understand and configure each setting. This is far better than an open textbox.


As I’ve been saying for years, your comment is not only true about pjsip - it is true about the entire project as a whole. People will point you to the wiki, but if you take a look at the wiki, you’ll find that it is a jumbled, disorganized mess. For some parts, there’s nothing. For others, the information is grossly outdated.

If you check the links in the Module Admin module for FreePBX, you’ll find many of the links to the Wiki are broken.

The Wiki entry for the Trunks Module is an example of a disorganized mess. The section on pjsip is clearly an afterthought, with useful nuggets like “Retry Interval - How long between retries,” but no explanation as to WHAT is being retried (most likely it is registration).

There are some nuggets in the Wiki, but there are a lot of pages that contain no useful information whatsoever, or are filled with jargon.

The tooltips in FreePBX are also hit or miss. Some are quite useful. But, some are really nothing more than taking the field title and rewriting it in a sentence. In other words, if the title of the field is “Field Title” the tooltip might be “Sets the (Field Title”). Uh, thanks.

Early in the project, there was even less documentation than there is today. Since the product is free, a lot of people wrote extensive, step-by-step how-tos. Two of the greatest writers were WiseOldOwl and MichiganTelephone, but both of them eventually just gave up because the rest of the community were so hostile to them that they couldn’t stand it anymore. MichiganTelephone had a great blog that you could follow step-by-step to set of an amazing open-source FreePBX without having to ask anyone a single question, but he deleted the whole thing in disgust. Here’s what’s left:

I took up the torch for a while and wrote a lot of stuff for the Wiki. Tony Lewis even offered me the job as Community Manager, but I turned it down because my day job is better. He hired someone else who came in an butchered much of what I wrote. You can see his influence in the Trunks documentation that I linked to above.

For comparison, you can see the Trunks documentation that I wrote here:

(Note that GUI changes made to FreePBX by the devs made the screenshots that Included obsolete.)

And here’s the article I wrote about linking two FreePBX systems together, which the new CM left intact for some reason:


(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)

(Ad Fun7911) #52

@billsimon I’m honest, I never worked much with the Asterisk Wiki. It feels a bit overcomplicated to find information there. Just using a search engine seems often much easier for me.
What I often missed was the answer to the question ‘What is best practice?’. With trial and error I can make most things work, but it would be great to know how things are intended to use.
My view of PJSIP seems to be a bit different than yours. I just wanted to explain my first impression as someone who hasn’t worked with FreePBX or Asterisk before.
I also like how the PJSIP Trunk Settings are made, just the General PJSIP Settings seem to be more complicated than the General Chan_SIP Settings. For me especially when it’s about Dynamic IP addresses, NAT or DNS SRV.

@AdHominem When you’re talking about that Wiki it feels like you’re very hurt by what happened to the parts you’ve written.I respect that you feel like this, but I wouldn’t be that harsh. I also cannot entirely disagree. I think the main problem is that documentation is important but it’s also really hard to keep it up-to-date. The versions which are sometimes so different make it also very complicated to work with the Wiki.

By the way what I really enjoyed to read was this post from @lgaetz which I think would be great for the Wiki


I’m sorry if it looks that way. I’m not at all hurt by it. My view is that the people in charge can do whatever they want with the Wiki. I knew that was a risk when I chose to contribute to it.

I remain worried for the project though. Good documentation is essential allow new people, like you, to participate. And without new users, the project will eventually die, which would be a shame.

Though I haven’t yet abandoned all participation like WiseOldOwl and MichiganTelephone did, I’m certainly not planning to write anything more for the Wiki. It’s not that I’m hurt, it’s just that writing for the wiki would not be productive use of my time: If what I write gets deleted, then the benefit I was hoping to confer on the community won’t be there - so why bother?

It would be easier to keep the documents up to date if the Devs were more careful about keeping things consistent from one version to the next - to the extent possible. While I totally understand that new versions need to have new features, a lot of the changes between versions have been cosmetic. Cosmetic changes break the documentation.

Another way to solve this problem would be to require that if a Dev wants to make cosmetic changes, that same Dev is required to update the documentation. :slight_smile:

(Andrew Nagy) #54

You bring up this betrayal every time you go on a long rant about the future of FreePBX so don’t be shocked when people interpret it this way.

(TheJames) #55

You literally blew up Tony’s phone and have complained about it every 6 months for the last 5 years.

The wiki was unorganized trash with no standardization or uniformity.

I, the one you wanted burned at the stake ,went through and made it all a uniform format. Brought it up to date as some stuff was super old. Unfortunately the people who are suppose to maintain it don’t so it is not kept up. Most of my work too is now out of date and needs to be gone over. Unfortunately the internal process for this is generally ignored. A few of the support folks have been going in and updating some stuff. I get emails on every page as I have written or rewritten every page.


(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)

(Andrew Nagy) #57

This is much MUCH more complicated that you can state here. Did you know MichiganTelephone yourself? Did you have email conversations with him? (I did).

Anyways WiseOldOwl stopped writing way before 2013 (More than 8!! Years ago) and MichiganTelephone stopped writing around 2014. We are 7 years past MichiganTelephone at this point. Does it still need to be brought up? Anyone that ever interacted with WiseOldOwl or MichiganTelephone is long gone at this point. Why does it matter anymore? Literally the entire FreePBX team is different. No one on that team knows who these people are!!

I’m only here because I think you bring up good points @AdHominem (you always have) but you really do beat the dead horse whenever you come back from your hiatuses of 6+ months and it seems to really irk the community as a whole (there are 54 responses to this thread!).

(Andrew Nagy) #58

This is accurate. Yeah. I was @jfinstrom manager at the time

Many of the times you’ve come to these forums to talk about the future of FreePBX you complain about how what you did on the wiki in the past was trashed by @jfinstrom (in your view). Like I said in the previous post, you’ve really beaten this into the ground. Doesn’t matter if it’s true or not (im not debating that). I’m stating that whenever a discussion with you turns into a 54+ comment forum post the fact about the wiki always comes out/up and I think the community is tired of hearing about it

(TheJames) #59

Oddly I know everything my job is threatened or asked to be threatened


This discussion was quite productive until you two showed up. Now, you’ve derailed the discussion and shut it down - which is presumably what you wanted since you don’t agree with the positions that I’ve taken.

If you guys want to comment on the positions that I have taken, feel free.

If you just want to attack me personally or get the discussion shut down, the only response that you’re going to get from me that is personal attacks are not a valid form of argument, and that we all know that what you are saying is not true.

(Andrew Nagy) #61

Confluence ( sucks for multi-versioned documentation. Most documentation platforms suck on that front unfortunately :frowning:

@jfinstrom did try to implement a versioned based plugin for Confluence for FreePBX in like 2018 and it blew the site up and was a disaster (not his fault, it was an experiment)

You almost need separate instances of Confluence for each version of FreePBX to really do it right

(Andrew Nagy) #62

I don’t think anything I have said is attacking you personally.

Who is we it’s James and my word against you? Theres two sides to this and no one else is involved. I know of the phone calls and emails James is talking about in relation to how you felt about him modifying the wiki pages you specifically created. I have a clear memory of this.

Knowing this as fact is not a personal attack.

I don’t agree with the positions you’ve taken? When did I say that? (I didn’t)

I disagree with you not feeling betrayed about what happened with the wiki and I disagree with you saying you never complained about what @jfinstrom did to the wiki. That’s why I came in here. I didn’t comment on anything else you’ve said about PJSIP or CHAN_SIP or the like because I have no fight in this battle. I do have fight in the HISTORY of FreePBX and the HISTORY of the wiki. Interpret that any way you want.

Me disagreeing with you, or anyone disagreeing with you about facts isn’t a personal attack.

The thread was derailed FAR before James and I were involved because this thread was split from the original topic you replied to because it was off topic on that!

@lgaetz this thread has completely derailed as we all knew it would… eventually.

Lock requested.