Dave Platt
2016-Sep-01 17:36 UTC
[asterisk-users] Multiple phones when one is unregistered
> So does the Dial command go directly to the registered device or does > it use the extension?If you've given the Dial() command the SIP/user1 format, it will attempt to dial directly to the SIP device/phone/endpoint you specify. If you specify SIP/user1&SIP/user2&... it attempts to dial directly to all of them simultaneously, and the first one which picks up, gets the call (the dialouts to the others are dropped when the first one answers). To the best of my knowledge there is *no* automatic fallback to the Asterisk voicemail which might be associated with one or more of these SIP users. The usual way that you'd get to Asterisk voicemail, is if your dialplan catches the error which would result from Dial() if none of the users is available and answers, and explicitly calls the Voicemail() app. Things can become more complicated in a couple of situations: (1) If one of the SIP users you specify isn't actually a SIP endpoint device, but is a SIP identity on another system (PBX or VoIP provider or etc.), then you really don't have any control over how that endpoint would handle situations where the called user isn't available. The endpoint might answer with *its* voicemail, immediately. (2) If you were to dial a Local/ destination rather than a SIP/ destination, then that dialing operation *is* run back through your dialplan, and it might divert the call to voicemail instantly. The easiest solution to each of these is "Don't do that". Don't multi-dial to anything other than SIP (or IAX) endpoints which are real, physical devices that either ring (if they're connected) or fail to respond or reject the call (if they aren't available). Don't multi-dial to any SIP device which implements its own internal "voicemail" feature (e.g. has an answering machine attached). I do what you're thinking of all the time. On my Asterisk setup, one incoming PSTN number goes to an extension which multi-dials about half-a-dozen of my SIP softphones. No matter which tablet or PC I happen to be using, if I'm running the SIP softphone app, it'll ring. The only time the call fails from this dial is if none of the SIP devices answer. I could route to Asterisk voicemail in this case, but I don't bother - Asterisk simply rejects the call with a no-answer or not-available status, the VoIP provider fails the call, and Google Voice (which is where the original number is anchored) sends the call to its own voicemail system and I get an email. The only down-side to this is that the Asterisk log gets a bunch of "SIP call failed" status messages each time this happens - one for each dialed SIP user that wasn't "on the net" at the time. This isn't a problem for me in practice.> I was assuming that it was going to the > extension's voice mail if it wasn't there but that's in the extension > dialplan and I suspect that the extension is irrelevant and only the > SIP registration matters.Correct.
Andrew Ruthven
2016-Sep-03 07:51 UTC
[asterisk-users] Multiple phones when one is unregistered
On Thu, 2016-09-01 at 10:36 -0700, Dave Platt wrote:> >? > Things can become more complicated in a couple of situations: > > (1) If one of the SIP users you specify isn't actually a SIP > ????endpoint device, but is a SIP identity on another system (PBX > ????or VoIP provider or etc.), then you really don't have any control > ????over how that endpoint would handle situations where the called > ????user isn't available.??The endpoint might answer with *its* > ????voicemail, immediately. > > (2) If you were to dial a Local/ destination rather than a SIP/ > ????destination, then that dialing operation *is* run back through > ????your dialplan, and it might divert the call to voicemail > instantly.Another option is what I've had happen recently. I have my main number dial all the phones in my house, including an old Cisco 7905 that on busy or no answer would send back a 302 redirect to extension 8000 - VoiceMail. To make matters worse inbound callers would be dumped into VoiceMail as though they'd entered it from internally, rather than external. While I tried various different ways on the Cisco to stop that behaviour, I found the only solution was to tell the Dial() command to ignore the 302 by adding the i flag. Problem solved. Cheers, Andrew -- Andrew Ruthven, Wellington, New Zealand MIITP, ITCP At work: andrew.ruthven at catalyst.net.nz At home: andrew at etc.gen.nz Cloud??: NZs only real cloud - https://catalyst.net.nz/cloud GPG fpr: C603 FC4E 600F 1CEC D1C8??D97C 4B53 D931 E4D3 E863 LCA2017: The Future of Open Source, Hobart, AU - http://linux.conf.au