The SIP project is progressing nicely. My sample programs (just complete enough to evaluate a portion of the total project) are working good. I've registered SIP phones to the server, and made local and International phone calls through it.
All good so far. The next step is to build a new framework to tie it all together. It's got to be able to register multiple phones and have some type of 'on-the-fly' configuration editing. Also, the current call application only passes the RTP (audio) messaging through, it doesn't have any audio capabilities of it's own. I figure my first step would be to have a specific number you could call (say, 1234) and the server will play back an existing audio recording (wav file).
I've experimented in using wav files in other projects, so opening a file, and breaking it into specific duration chunks shouldn't be a problem. It's wrapping the audio data in a properly formed RTP packet that will be the trick. I think once I capture a live RTP stream and analyze (reverse engineer) the messaging, I should be able to figure it out.
I think the trick with this project is to make a list of steps, or goals, that I want to accomplish and in what order. That way I don't keep running off in different directions with new ideas. Something to keep me focused and on track.
The original idea for this project was to be a test bed for SIP applications, from a Telco carrier standpoint. But the more I experiment with this, the more excited I get, there are a lot of possibilities for a program like this where I have complete control over the source (as it's all written from scratch, no dependencies on outside 3rd party libraries.) It's this last part that I'm finding amazing, how simple it is to manipulate SIP messaging, without some elaborate class(es) to do the work for you. The key was once I finally got it through my head that SIP messaging rides UDP, and what you see with an analyzer, is the actual plain English messaging. At this point, it's a simple matter to do String manipulation to edit/create the expected messages.
I'm kicking around the idea of starting a project on Source Forge for this. I think that if I do, I'll wait till I have an alpha version of the program ready for use. We'll see.
Oh, and the new C.A.T. is working out great.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment