Hey All, I have a 2 tier Asterisk system that looks like this... PRI -> Remote * -> IAX -> Local * -> Local SIP Users | Remote Sip Users If someone calls a DID we ring (at the same time) The users Remote SIP (SIP/1234) The users Remote SIP (IAX/1234) And a cell phone (ZAP/3015551234) The above works fine, but I have been trying to do some tweaks that I can't seem to get... 90% of our SIP users are soft phone, so the above is fine for them. However, we have a group of users who are Cisco 7960G when local and softphone when remote. In that scenario, the Cisco is always present and logged in, so always rings. Here is what I would like to do, all ideas and comments are welcome... When the Cisco user is in the office he/she can hit a button on the 7960 that toggles in/out. (It has been requested that this be a "one touch" option, or in other words not buried 2 or 3 levels deep) When a DID is dialed, we check the status of the toggle state. If they are "in" we ring the phone for 20 seconds, if they don't answer we continue the dial plan. (remote SIP followed by cell) at the same time, we toggle them to away so it doesn't happen again the next time. If they are "out" we just jump to the next step (remote sip followed by cell) Am I missing something really simple? I have been and will continue to wander google and voip-info, but any experience anyone has is greatly appreciated. Thanks, Chris
> -----Original Message----- > From: Christopher Jacob [mailto:chris@jacob-solutions.com] > Sent: Wednesday, October 13, 2004 2:53 PM > To: asterisk-users@lists.digium.com > Subject: [Asterisk-Users] DND on SIP > > > When the Cisco user is in the office he/she can hit a button > on the 7960 that toggles in/out. (It has been requested that > this be a "one touch" option, or in other words not buried 2 > or 3 levels deep) >You could use DBPut and DBGet to create an entry in astdb. We use something very similar to this for call forwarding in our stdexten macro. The user would simply need to dial an exten to "log on/off". You could probably do the entire bit using the db functions, but this functionality could be easily created using a queue with ringall as a strategy. The user could log in from where they are available, and the system will automatically log them off if they don't answer. This is a bit more complex especially if you have many remote extensions. Just a couple of ideas, Robert Jackson
sounds like you would need to setup some sort of extension that would toggle an entry in a sql database, then have the dialplan act on the entry which phone(s) to ring.> Hey All, > > I have a 2 tier Asterisk system that looks like this... > > PRI -> Remote * -> IAX -> Local * -> Local SIP Users > | > Remote Sip Users > > If someone calls a DID we ring (at the same time) > The users Remote SIP (SIP/1234) > The users Remote SIP (IAX/1234) > And a cell phone (ZAP/3015551234) > > The above works fine, but I have been trying to do some tweaks that I > can't > seem to get... > > 90% of our SIP users are soft phone, so the above is fine for them. > However, > we have a group of users who are Cisco 7960G when local and softphone when > remote. In that scenario, the Cisco is always present and logged in, so > always rings. > > Here is what I would like to do, all ideas and comments are welcome... > > When the Cisco user is in the office he/she can hit a button on the 7960 > that toggles in/out. (It has been requested that this be a "one touch" > option, or in other words not buried 2 or 3 levels deep) > > When a DID is dialed, we check the status of the toggle state. > > If they are "in" we ring the phone for 20 seconds, if they don't answer we > continue the dial plan. (remote SIP followed by cell) at the same time, we > toggle them to away so it doesn't happen again the next time. > > If they are "out" we just jump to the next step (remote sip followed by > cell) > > Am I missing something really simple? I have been and will continue to > wander google and voip-info, but any experience anyone has is greatly > appreciated. > > > Thanks, > > Chris > > > > > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >-- James W Dumais ABSS::Networks http://www.abss.ca/ 1(705)725-9124 / 1(800)473-2121
I implemented DND using *78 and *79 in conjunction with AstDB and the dialplan (and some tweaks to the Cisco dialplan.xml) for a client of mine. We added some checking to the dial macro to see if the DB flag was set or not, dumping the caller to voicemail if set versus ringing the local phone if not. I *think* there's an example on the wiki (or one of the config example files referenced on there) which I tweaked a bit to make fit. Feel free to contact me off-list if you get no joy and I'll lend a hand. Cheers Paul
On Thu, 2004-10-14 at 10:13, Eric Wieling wrote:> Joseph wrote: > > >>exten => _XX09,1,GoToIf($[X${RDNIS} != X]?${EXTEN},4) > > > Could you show me the part that dials the extension in this case? > > If RDNIS is set (which is the case if DND is on in the Cisco) then the > RDNIS variable will not be empty therefore we can test to see if the > RDNIS variable is empty or not and do different things based on that > informtion. > > WHAT you do with that information is up to you.I see, I think it is coming together. There was a priority mistake in that I had 103 instead of 102 as the failed priority. This works much better. However, I still have a question... With this format, DND on the phone sends it to the voicemail busy message. But a call comes and user is on the phone. The expected behaviour is that the caller should get the busy message, but is getting the unavailable message. Is there a way to detect that the caller is on the phone without using the setgroup, checkgroup thing and send the call to the b message if they are on the phone? Actually, I thot that already worked with the 101+ feature. Current sample updated to work with DND: exten => 14,1,Dial(SIP/14,25,t) exten => 14,2,Voicemail(u14) exten => 14,3,Hangup exten => 14,102,Voicemail(b14) exten => 14,103,Hangup ; respectfully, Joseph ==============---------------------= ********** =