Even though I tell myself to stop, I continue to make the same mistake over and over again. No, it’s nothing illegal, immoral, or fattening. If only. My problem is that I refer to the media connections established by SIP as “calls.” While that might not seem like a big deal to you, it is to me. When I hear the word “call” my mind immediately visualizes the black rotary telephone that I grew up with (yes, I am that old). I think dial-tone. I think handsets. I think voice. While audio is certainly one of the things that SIP deals with, it is by no means the only thing and by referring to sessions as calls I dilute the power of SIP.
I like to say that SIP is media agnostic. In other words, SIP doesn’t care what kind of media connection you are establishing. Not one iota. You can send the exact same SIP request to establish a video session as you would an audio session. The same goes for instant message. There is absolutely nothing in a SIP command or the SIP headers that specify the kind of media you are going to use. All of that is contained in a sister protocol called Session Description Protocol (SDP). Only in SDP will you ever see references to audio, video, or any of the various codecs they use. SIP is about signaling and SDP is about media.
So, what kinds of different sessions can you establish with SIP? Would you believe me if I said “anything”? It’s true and hopefully over the next few minutes I’ll convince you. But first, I need to tell you a little about my SIP history.
Anything is Possible
I began working with SIP back in my days as a Nortel software developer. In the late 1990’s I was assigned to the team that was developing a SIP soft-switch that we affectionately called NetFX (short for Network Effects). My first role was working on the desktop client soft client. Notice how I didn’t say soft phone? That’s because like “call,” the word “phone” carries with it a particular notion as to what it does. Yes, our soft client made “phone calls” (audio and video), but it did so much more than that. While not very surprising, it could send instant messages. More surprising is that it could be used to send the contents of one PC’s clipboard to another PC’s clipboard. In other words, you could do a copy on one PC and a paste of that information on another. Pretty cool, huh? How about something even more un-phone like? You could use our SIP soft client to play chess across the network. We used SIP to set up the chess session and the media (i.e. chess moves) were sent in a separate media stream.
One of the things I am most proud of is my shared whiteboard. You could be in the middle of a SIP voice session and on-the-fly add a whiteboard that both parties could see and modify. As with the chess game, the whiteboard graphics commands were sent on their own media stream that was established by SIP.
My NetFX client continues to evolve and is currently used by Arrow SI in our Prism Products which I happen to run on my PC. Here is an actual screenshot of a SIP whiteboard session between my coworker, Craig, and me.
Hopefully you are beginning to see why I don’t like using the word “call” when I refer to SIP. Does call make you think of a whiteboard, network clipboard, or game of chess? It certainly doesn’t to me. Multimedia session is a much better term and one that I hope to use from now on.