(http://www.cs.cornell.edu/cnrg/telephony/JavaDocs/notes.23feb99.html)
Dial (String, Channel in, Channel out)
Dial (String, Channel in, Channel out, int)
Directory lookup on UserID returns a LocationList.
Extract the list of IPAdresses contained in this LocationList.
[ WAS: Invoke SignalingObserver.chooseUser() to pick one ]
Directory lookup on "signalingsrv" returns a LocationList.
Extract the list of IPAdresses containing in this LocationList.
Merge the 2 lists to get the LocationList of DesktopSignaling objects
our UserID might be using to receive the call.
INVITE on each Location in turn until you get an ACCEPT; now you know
where your peer is.
If you run out of Locations, just return null Connection to app.
If you get a BUSY packet (see below) go on to the next location.
DesktopSignaling.listen()
method? [no longer an issue; see 2/26/99 about how DesktopSignaling has a separate thread
to listen for input events. If the application wants to make the first move, that's
fine.]