I dont know the effort to implement this in PJSIP. Just two question: 1. for how many people are going to deploy this? 2. how does the API to the CNS look like? (Any restrictions? is it reliable and responsive enough for VoIP calls [limited time to setup]?) And one minor note: I personally would not really feel save to implement such a server based on PJSIP on my own (especially because it is publicly reachable) and thus might introduce some security threats. Thats my second reason, why I own implementation should not be first choice. --- Dennis Guse On Thu, Jan 23, 2014 at 2:48 PM, Daniel Ellison <daniel at syrinx.net> wrote: > On Jan 23, 2014, at 7:37 AM, Dennis Guse <dennis.guse at alumni.tu-berlin.de> > wrote: > > > > 1. But why rely on a external CNS? > > I know battery consumption will be a little bit less - any other reasons? > > Well most VoIP apps that I've used have to be running, or at least in the > background, to function. With mobile devices there's no guarantee that an > app that's been put in the background will stay in memory. I don't want to > miss calls because my phone's OS decided to kill my VoIP app. And yes, > there's definitely a battery use advantage as well. The VoIP app can be > completely closed down while still being able to accept calls. > > Acrobits is the only VoIP app vendor I know of that has a SIP/VoIP > notification server. That server registers with the VSP and wakes up the > UAC with a notification. In all other ways it acts as a SIP proxy server. > But this is tied to Acrobits softphones. I want a solution that will work > with any VoIP app. > > > 2. I would still stick with a SIP-Relay setup using > Asterisk/FreeSwitch/whatever > > One option would be to script Asterisk as follows: > > > > on incoming call from VSP: > > - Accept incoming call (actually optional, but call will drop after 32s > if not accepted + no dial tone is generated yet...) > > - Inform CNS via some interface (probably http) > > - Loop (until try count) > > -- Try to call UAC; on fail (not available) restart loop (very strict > timeout); on busy or reject or whatever cancel call. > > -- Wait if client registers (X seconds) > > > > As Asterisk can be scripted in Lua it should not be to much to. > > I would say 2 days implementing it and 1 day testing. > > That estimate assumes familiarity with all the components, of course. :) > For me, it would probably be less work to code something up in Python using > PJSIP than installing and configuring Asterisk and then learning how to > script Asterisk in Lua. > > I do appreciate the feedback and suggestions, however. Do you know if my > original idea would work? I know there's a lot more to it than simply > redirecting, but I think this would make for the simplest solution with the > fewest "moving parts". > > Thanks, > Dan > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20140123/b226a519/attachment-0001.html>