[asterisk-dev] Viva Chan_Sip, may it rest in peace

James Finstrom jfinstrom at gmail.com
Wed Oct 5 09:10:44 CDT 2016


I don't have a preference in this fight. I am like Switzerland.  Full
disclosure for those unaware I am one of the FreePBX developers. We support
both stacks individually and together.  The project made a decision (good,
bad or otherwise) to push PJSIP as the default stack. This only affects new
installs and we, by no means force any migration. I think many seasoned
users go in and flip to chan_sip on new installs. New users run with it and
are adopting PJSIP because they haven't used anything else. The learning
curve for a new user would be the same in either stack.

My origin story is Zaptel.... I lived through the great Zaptel/Dahdi
migration (and all I got was this stupid t-shirt). There was some rough
patches there but we survived.  As mentioned it is not going to be a here
today gone tomorrow kind of thing.  I think everyone gets the business
implementation.  Many in the community and open source world have worked
overtime to legitimize "free software" and no one wants to make any wild
west moves to reverse that.  There are things in Asterisk deprecated back
in 1.6 still present. Deprecation is a request to move on. There has been a
few replies where people took the plunge and migrated. Note they didn't do
it in a binary manner. They migrated over time and built a platform that
fits their business. The effort ranges from trivial to "nope".  The trivial
people have likely moved. The sell has to be to those towards the other end
of the spectrum.  You have to convince the "nope people" that it is worth
the move.

I think there was a mention of over 50% adoption as a desired metric to
depreciate.  I can see this as a viable goal. With 50% adoption, that
should cover a majority of edge cases and bring most bugs to the surface.

Maybe a good task for any working group would be to go to voip-info and
supply PJSIP information wherever there is chan_sip information.  When
anyone old or new googles, like it or not the top results are usually
voipinfo. Also it may be useful on those pages to link to the official wiki
wherever appropriate. This should help googlers get back to current
information.

On Wed, Oct 5, 2016 at 4:29 AM, Eric Klein <eric.klein at greenfieldtech.net>
wrote:

> James,
>
> You missed a few points:
> 1. There needs to be a move in the training materials, and DCAP exam away
> from (the soon to be depriciated) version 11 and move into versions that
> support PJSip - familiarity will breed use.
>
> 2. One suggestion to do this was to declare that Chan_Sip would be
> depreciated in version 15 or 16. This would not mean removing it from the
> code, but that going forward (for 1 or 2 more releases) it would only get
> security fixes and no more development. This would have the benefit
> of  everyone would have 3-5 years to learn and transition to PJSip without
> breaking anything that is currently working,  while releasing development
> staff to improving the interface and problems with PJSip and other parts of
> Asterisk.
>
> Eric Klein
> VP of Customer Experience
> GreenfieldTech
> Mobile +972-54-666-0933
> Email Eric.Klein at greenfieldtech.net
> Skype: EricLKlein
> Web: http://www.greenfieldtech.net/
>
>
>
>> Message: 5
>> Date: Tue, 4 Oct 2016 17:46:52 -0700
>> From: James Finstrom <jfinstrom at gmail.com>
>> To: Asterisk Developers Mailing List <asterisk-dev at lists.digium.com>
>> Subject: [asterisk-dev] Viva Chan_Sip, may it rest in peace
>> Message-ID:
>>         <CAE3BMY2OBso2iF6xOR4wreGeSH-TsFh5=FV8NdZQxr_8F2Rb4A at mail.gm
>> ail.com>
>> Content-Type: text/plain; charset="utf-8"
>>
>>
>> So the discussion of deprecating chan_sip came up at the devcon this year
>> and it caused a bit of a stir. The end result was the need for broader
>> discussion with a wider audience.  So let's discuss.
>>
>> Currently, Asterisk is running dual sip stacks. The argument is that to
>> deprecate PJSIP there must be broader adoption. There is currently nothing
>> motivating adoption but much slowing it.
>>
>> What are some of the hurdles to adoption?
>> 1. Apathy.  If it ain't broke don't fix it. Many would argue chan_sip is
>> broke but it is the "devil you know". A decade of documentation and a
>> broad
>> user base allows people to be pretty forgiving of flaws. Almost any issue
>> has some sort of work around or generally accepted idea of I guess we can
>> live with it.
>>
>> 2. One Ring to rule them all!!  PJSIP requires up to 6 sections of
>> configuration. Once you dig in, this method makes sense. But at a glance,
>> you have just multiplied the workload to  6 times that of chan_sip's
>> single
>> blob config. Though it is not really 600% more effort it may be enough to
>> scare some away
>>
>> 3. Mo Adoption, Mo problems!
>> The only way to clean up all the edge cases and weird bugs is to hit them
>> in the first place.  Dogfooding only gets you so far.  You can make
>> anything working clean in a single environment and single use case. But
>> what happens when people start flinging wrenches. Things break. 100
>> wrenches may break 10 things. 1000 wrenches may break 100 things.  In the
>> ladder case, you have 100 people saying pjsip sucks, and pjsip is crap. As
>> with all things the 900 assume all is good and move on with their lives
>> telling no one of their glory. So you have 10% of the voices running
>> unopposed. You fix the 100 issues and that is great but those 100 people
>> have gone back to the comfort of chan_sip and are stuck at point 1.
>>
>> Escaping the cycle.
>>
>> So how do we dredge through this mess and get high adoption?
>>
>> You have to make #1 not an option.  This means potentially breaking the
>> universe. This is why I think there is a tendency to be gunshy. No one
>> wants to be the guy who broke the universe.  But breaking the universe
>> gets
>> us to #3 without falling back into #1.   Once The universe breaks and we
>> are in #3 many of the edges will be found and fixed. Suddenly PJSIP
>> becomes
>> usable in most, if not all situations. The issues in #2 will automatically
>> resolve as there is more information and it becomes the "accepted way" of
>> doing things.  The old dogs will have to refactor how they do
>> configuration
>> but I am confident once they do a few they will figure out the bark is
>> bigger than the bite.
>>
>> tl;dr to get adoption you have to force it.  There will be blood, but
>> nothing that can't be cleaned up with a little bleach and some elbow
>> grease
>>
>> --
>> James
>> -------------- next part --------------
>> An HTML attachment was scrubbed...
>> URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/
>> 20161004/71b91854/attachment-0001.html>
>>
>
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-dev
>



-- 
James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20161005/2ba3741c/attachment-0001.html>


More information about the asterisk-dev mailing list