Olle E. Johansson
2004-Aug-13 09:34 UTC
[Asterisk-Users] *** Asterisk Summer News: Forget numbers, dial by domain!
Welcome to a new issue of Asterisk Summer News! The holiday season is coming to an end here in Sweden, people are getting back to work and the kids will start going to school next week. Life is slowly adopting to normal and I have to start dressing more towards a businessman than a beach bum. Guess I have to start going to the gym again as well. Anyway, back to the topic. Asterisk and VoIP. Asterisk and VoIP is a large area of knowledge to cover, you learn more each day. A gym for the brain, a gym I'm visiting every day. Reading RFCs, reading source, experimenting with devices. It's a lot of fun. In this issue, I'm inviting you to my VoIP gym, talking about how you enable other to dial you by your e-mail address. Once you start doing it, it becomes a natural thing. We also cover the new release candidate and news from Asterisk developers. *** In this issue * Astricon 2004 Update * SIP: Dial by names * Asterisk 1.0rc2 out - test it! * Warning: Asterisk HANGUPCAUSE changed values * CVS changes and additions *** Astricon 2004 Update: It's getting closer --------------------------------------------- Astricon is getting closer and as I see it now, we're going to be more than 200 Asterisk users, developers, providers, gurus, sales people and hobbyists. It's going to be a great gathering with world-wide networking. People are registering from all over the globe. It's really great. All the work that we've done to get this event off the ground will be paying off. For a while, we were quite nervous, having bought quite a lot of hotel nights and quite a lot of food. Now, we can breath again and cancel the invitations for all of our family to spend christmas in our prepaid rooms at Marriot in Atlanta :-) It'll be a lot of fun meeting you all in person. I'm sure it will mean a lot for the asterisk.org project as well. On the web site, you'll find the full agenda, the list of our Astricon sponsors (changes often!) and the information you need to join us in Atlanta! * Astricon Web site: http://www.astricon.net *** Theme article: SIP: Dial by names ------------------------------------- Do you belong to the part of humanity that feels it's easier to remember names than numbers? My wife is the opposite, just mention a number in the middle of a sentence by accident and she will remember it a week later. I cannot burden my brain with remembering anything else than 42. It's all that matters, anyhow :-) I remember e-mail addresses and domains though, so SIP fits perfectly well. SIP is all about setting up sessions - multimedia, video, games, presentations and phone calls - by name and domain. A good SIP uri looks like sip:olle@astricon.net This means "Try to find who's responsible for the domain astricon.net SIP connections, and contact that server." How does that work? By DNS, of course. If you e-mail "info@astricon.net" your e-mail client or outgoing server will lookup the domain "astricon.net" in DNS. First, it does not look for a host named "astricon.net", but another kind of DNS entry that specifies one or several mail servers that can handle mail to the astricon.net domain. If the first one doesn't respond, your e-mail gateway will contact the next one. SIP works the same way. Your phone or your outbound proxy will try to find out who is responsible for SIP connections to your domain. This is specified with DNS SRV records. If the first server (or SIP proxy) doesn't respond, try the next one. By adding DNS SRV records to your domain, specifying your SIP proxy, you SIP-enable the domain. Cool! Now everyone on the Internet will be able to call you, just like everyone can e-mail you if you give them your e-mail address. This is the way of the Internet. * More info on DNS SRV records: http://www.voip-info.org/wiki-DNS+SRV * More info on why I remember 42: http://tinyurl.com/5e3tl *** How do you enable this in Asterisk? --------------------------------------- If you want to add your cool SIP uri to your business card and e-mail signature, like all the VoIP professionals do, you have to open up your Asterisk server to receive calls from anyone - only to these extensions. * Add a default context to SIP.conf [general] section In the [general] section of SIP.conf, you can specify a context that is open for everyone that is not a known peer or user. This is the door you have to open to be able to receive calls. * Add usernames to that context In this context you want to enter the user names, mostly like the ones you use for email, like exten => info, 1, dial(SIP/3002) exten => gunilla, 1, dial(SIP/2010) exten => sales, 1, queue(forever) I think you understand by now. * Test it Use an account with a SIP provider like iptel.org, FWD, sipgate.de or bbtele.se. Register with X-lite from Xten and enter a full URI by using the keyboard. X-lite will find the domain and call, if you haven't configured an outbound proxy. If you are using an outbound proxy, then it's up to the proxy to find the receiving proxy. * How do you separate these calls from the rest? When Asterisk receives inbound calls, it strips off the domain name and keeps the user part. A call to info@astricon.net and info@edvina.net ends up being a call to "info", regardless of the domain. You really can't see who they want to connect to if your Asterisk supports multiple domains. The solution here is the ${SIPDOMAIN} variable. The domain is stored in that variable, so you can easily test it with the gotoif application. The phones connected to your Asterisk are propably configured for another context, so you don't have to bother with those. Just catch all calls with a starting extension, then forward them to separate contexts for each domain. * How do I let local Asterisk phones dial by URI? If you have a phone that supports URI dialing, either from a keyboard like X-lite or an web page like the SNOM, you can enable SIP dialling for your local SIP phones. Catch the ${SIPDOMAIN} in the incoming context, if it isn't your local hostname or IP address, then the call is outbound and you can dial ${EXTEN}@${SIPDOMAIN}. Make sure you enable DNS SRV records in sip.conf first, otherwise it will not work properly. I see a lot of calls going to the web server that hosts the edvina.net web. This is not my SIP proxy at all. In order to reach me by SIP address, you must have DNS SRV support. Most phones will support dialling by SIP address in one way or another sooner or later. Start to use them now. *** What's the difference between a SIP AOR and Contact URI? SIP have two kinds of addresses, or URIs. One is the permanent address, or Adress of record (AOR). This is the address people can use to call you, wherever you are, regardless of IP adress or phone. The other address is the address to a phone, a contact address. This usually consists of a device name, IP address and port number. This is a temporary address that your SIP location server keeps in memory as long as it is valid. Your phone registers with the location server to tell it how to map one permanent (AOR) address to one or several SIP contacts. When SIP sets up a call, you dial a permanent address. The SIP proxy receives this address and tries to find the person (or service) you are calling. When that device answers, the caller receives the temporary address which is used to set up the call. Complicated? yes. But it adds a lot of flexibility. My permanent address maps to my laptop, a SNOM phone, my FWD account and in some cases my cell phone (through Asterisk, of course). * Voip-info: SIP Uri: http://www.voip-info.org/tiki-index.php?page=SIP%20URI *** Limitations in Asterisk SIP support Asterisk is the greatest and most superior Open Source PBX with multiprotocol support there is, no question about it. But it does have some limitations here and there. One is that when dialling SIP calls by URI, only one proxy is contacted. If you have multiple proxies (proxys?) in your DNS, the first one is used. Secondly, when you receive calls from the outside, the Call ID is changed so the URI of the caller is not sent to the phone. This is a limitation that means that the phone is unable to call back. Not very smart. And yes, we're trying to fix these limitations. One step at a time, Asterisk gets more SIP friendly for each patch we are adding. I'm doing quite a lot of experiments within the realm of the chan_sip2 project. If you are interested in improving Asterisk's SIP support, please test the chan_sip2 channel and help me with the development of that version. * The Chan_sip2 Project: http://www.voip-info.org/tiki-index.php?page=Asterisk+SIP+chan_sip2 >>> And yes, I've suggested to both Adam (Firefly) and Steve (IAX Client for windows) to support SIP Uri dialling from their IAX softphones - over IAX2. It would be so cool!) *** Asterisk version 1.0 - release candidate 2 is out! ------------------------------------------------------ After a lot of patches and bug fixes (see below) we're proud to present the release candidate 2 of Asterisk 1.0. Please test extensively and report all bugs and possible bugs and bug feelings! Start with finding a bug marshal on IRC, then if the bug is confirmed - report it on the bug tracker. Bug marshals usually are connected to #asterisk-bugs or #asterisk-dev - just call for a bug marshal when you need one of us. Due to time zone differences, you'll propably get a 24 by 7 service on the IRC channel. Find the download mirrors on the link below. Please don't hit the Digium FTP-server, since development need that connection for the bug tracker and the CVS. Asterisk Download Mirror listing * http://www.voip-info.org/tiki-index.php?page=Asterisk%20download *** Warning: AST_HANGUPCAUSE changed! ------------------------------------- In a recent CVS update, the Asterisk code for hangup causes was changed to match ISDN Q.931 codes. So if you rely on these in your dial plan, you may need to update your dial plan! New hangup codes are to be found in the CVS update. This was done *after* rc2, so it only applies to CVS head users. * For a list, see: http://www.voip-info.org/tiki-index.php?page=Asterisk+variable+hangupcause *** Recent CVS changes ---------------------- Since the last newsletter, a lot of the concentration has been focused on bug fixing for version 1.0. A lot of proposed features are put on hold in the bug tracker. A lot of love has been given to the MGCP channel, that has been updated quite a number of times during the last week. Here's a number of additions done to Asterisk CVS head since last newsletter: GENERAL/MISC * CLI: Bug # 2174/2185: Respect AST_EDITOR environment variable in the CLI * CLI: Don't load empty strings from history file * CLI & Manager: Add timer to show status commands * CLI: Fix verboser issue over network (#2217) * Manager: Bug # 2170: Add authority_to_str function to let Administrator issue command to find privilege string * Asterisk: Allow priority to be set in addition to -U / -G (bug #2173) * Add transfer digit timeout capability (set in features.conf) (bug #2184) * Enabled default music on hold music (new music file as well) * Makefile: Fixes to enable "make clean", freetds version check and mpg123 support APPLICATIONS * queue: Bug # 2171: Add permission to QueueAdd and QueueRemove manager commands * meetme: Add user number to manager events (bug #2203) * meetme: Add "X" option to meetme and add ${MEETME_EXIT_CONTEXT} * parking: Only create parking entries when calls actually get parked * parking: Fix so that MOH doesn't get killed on Call Parking * directory: Allow directory to be searched by first name (bug #2208) * dial: Enforce timelimit across entries to ast_channel_bridge (bug #2222) * voicemail: Configurable voicemail pager notification from string (bug #2142) * config: Allow "on" and "off" as compliments to "Yes" and "no" in config files CHANNELS * chan_sip: Default port to 5060 * chan_sip: Improve debugging of RTP ports * chan_sip: Send proper contact in 200 OK to REGISTER * chan_sip: Allow SIP call parking with supervised transfer * chan_iax2: Add default username patch (bug #2178) * chan_iax2: Fix information elements * chan_iax2: Improved Bridging * chan_mgcp: Add mgcp.conf.sample for Wave7Optics FTTH LMG * chan_mgcp: Bug # 2181: Support the PING event in MGCP. * chan_mgcp: Fix MGCP endpoint (#2182) * chan_mgcp: Fix reload with wildcard endpoint * chan_mgcp: Don't reload subchannels of wild card endpoint on reload. * chan_mgcp: Create initial framework for single channel support * chan_mgcp: Don't offer codecs not allowed on a reinvite * chan_mgcp: Don't request tones when in-band DTMF mode is enabled (bug #2248) * chan_h323: Fix potential overflow in H.323 * chan_zap: Reset conferencing on final hangup (bug #2172) * chan_zap: Create manager ZapShowChannels comamnd (#2186) to monitor zap channel status * chan_zap: Make Asterisk cause codes match those of Q.931 (bug #1999) * rtp: Don't hard code the RTP DTMF payload type to 101 (bug #2192) * wcfxs: Merge polarity reversal detection (bug #9) * agent: Fix agentcallbacklogin wrapup time PORTABILITY * chan_h323 Makefile change for FreeBSD (Bug #2064) * Memory size correctly set for threads in FreeBSD (Bug 2067) * Fix OpenBSD compile (bug #2193) * Fix duplex code for FreeBSD in chan_oss (local sound card) NEW APPLICATIONS * Park: Used to park yourself (typically in combination with a supervised transfer to know the parking space. * Verbose: Send a message to the console and log file * SetCallerPres(presentation): Set Caller*ID presentation on a call to a new value. Sets ANI as well if a flag is used. Upgrade your Asterisk now and test all these new functions! *** Epilogue: Feedback wanted! ------------------------------ If you have Asterisk-related news or topics that you want me to include in Asterisk News - e-mail me at oej@edvina.net. I'm always interested to hear from you, regardless if it's a press release, a rumour, something you want explained or a clever Asterisk trick. I've gotten a lot of feedback already, thank you everyone that mailed me or sent me a note over IRC. Have a great Asterisk week! /O
Possibly Parallel Threads
- *** Asterisk Sun/Monday News: Time to download, Scotty!
- ** Asterisk Sunday Morning News: Contribute to the community
- *** Asterisk Sunday News: Off track with 1.0, moving forward
- Astricon News :: Tutorials are now fully booked
- *** Asterisk Summer News: The heat is on!