All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class iceberg.iap.ipphone.IPPhone

java.lang.Object
   |
   +----ninja.rmi.NinjaRemoteObject
           |
           +----ninja.ispace.iSpaceService
                   |
                   +----iceberg.iap.IAP
                           |
                           +----iceberg.iap.ipphone.IPPhone

public class IPPhone
extends IAP
implements IAPIF
IPPhone is a desktop phone application that implements the IAPIF. It interacts with the call agent that services this IPPhone. This IPPhone supports multiple call sessions at the same time although multiplexing several audio streams is not available yet.

See Also:
IAPIF, CallAgent

Constructor Index

 o IPPhone()

Method Index

 o addNewSessionMember(String, String)
 o beHungUp(CallAgentIF, EndPointInfo)
The IPPhone is being hung up by the rest of the call agents.
 o call(int, String)
Make an outgoing call from an existing session given the sessionNum and the callee addr entered from the IPPhoneUI.
 o call(String)
Make an outgoing call, and create a new call session, given callee's address.
 o destroy()
 o getDeviceAddr(String)
 o getMyEndPointInfo()
 o hangup(int)
Hang up an existing session given the session number.
 o init(iSpaceServiceConfig)
 o rejected(String, String)
Callee rejected the call placed by the IPPhone.
 o removeSessionMember(String, String)
 o ring(CallAgentIF, String, String, String[])
Serving call agent rings this IPPhone.
 o serviceHandoffTo(int, String)

Constructors

 o IPPhone
 public IPPhone() throws RemoteException

Methods

 o init
 public void init(iSpaceServiceConfig config)
Overrides:
init in class IAP
 o getMyEndPointInfo
 public EndPointInfo getMyEndPointInfo()
 o getDeviceAddr
 public String getDeviceAddr(String type)
 o destroy
 protected void destroy()
Overrides:
destroy in class iSpaceService
 o call
 public void call(int sessionNum,
                  String calleeDN) throws SessionNotFoundException, CallInitException, CalleeUnavailException
Make an outgoing call from an existing session given the sessionNum and the callee addr entered from the IPPhoneUI. Throws SessionNotFoundException if sessionNum does not correspond to a serving call agent; throws CalleeUnavailException if callee does not answer the phone; throws CallInitException for other situations that lead to failure of call initiation.

See Also:
CallAgent, SessionNotFoundException, CalleeUnavailException, CallInitException
 o call
 public int call(String calleeDN) throws SessionNotFoundException, CallInitException, CalleeUnavailException
Make an outgoing call, and create a new call session, given callee's address. Throws CallInitException if fails.

 o hangup
 public void hangup(int sessionNum) throws SessionNotFoundException, HangupException
Hang up an existing session given the session number.

 o ring
 public RingReply ring(CallAgentIF callAgent,
                       String callerID,
                       String netSpecID,
                       String others[]) throws RemoteException
Serving call agent rings this IPPhone. For now, this creates a new call session, it should check whether the caller is already in another call session, and prompt the user and perform some call waiting related functions. Well, need more thoughts on this later.

 o beHungUp
 public void beHungUp(CallAgentIF callAgent,
                      EndPointInfo endptInfo) throws RemoteException
The IPPhone is being hung up by the rest of the call agents.

See Also:
CallAgentIF
 o rejected
 public void rejected(String calleeDN,
                      String pathInfo) throws RemoteException
Callee rejected the call placed by the IPPhone. If call agent is the only agent in the session, then it will time out itself. Correspondingly, the session windnow will be closed when that happens.

 o serviceHandoffTo
 public void serviceHandoffTo(int sessionNum,
                              String targetDN) throws CalleeUnavailException, SameDeviceException, SessionNotFoundException, CallInitException
 o addNewSessionMember
 public void addNewSessionMember(String sessionID,
                                 String uid) throws RemoteException
Overrides:
addNewSessionMember in class IAP
 o removeSessionMember
 public void removeSessionMember(String sessionID,
                                 String uid) throws RemoteException
Overrides:
removeSessionMember in class IAP

All Packages  Class Hierarchy  This Package  Previous  Next  Index