[SIPForum-discussion] help me

pankaj parashar pankaj_parashar84 at yahoo.co.in
Mon Feb 5 11:38:49 UTC 2007


hi,
        I  m trying  to commmunicate with a slee server from a sip client.
        I  m giving my entire code here.
  I have few problems describing it after code section
   
   
   
  import gov.nist.core.net.*;
  import java.text.ParseException;
  import java.util.*;
  import java.awt.Dialog;
  import java.net.*;
  //import javax.sip.DialogTerminatedEvent;
  //import javax.sip.IOExceptionEvent;
  import javax.sip.ClientTransaction;
  import javax.sip.DialogTerminatedEvent;
  import javax.sip.IOExceptionEvent;
  import javax.sip.ListeningPoint;
  import javax.sip.RequestEvent;
  import javax.sip.ResponseEvent;
  import javax.sip.ServerTransaction;
  import javax.sip.SipException;
  import javax.sip.SipFactory;
  import javax.sip.SipListener;
  import javax.sip.SipProvider;
  import javax.sip.SipStack;
  import javax.sip.TimeoutEvent;
  import javax.sip.TransactionTerminatedEvent;
  //import javax.sip.TransactionTerminatedEvent;
  import javax.sip.address.Address;
  import javax.sip.address.AddressFactory;
  import javax.sip.address.SipURI;
  import javax.sip.header.AuthorizationHeader;
  import javax.sip.header.CSeqHeader;
  import javax.sip.header.CallIdHeader;
  import javax.sip.header.ContactHeader;
  import javax.sip.header.ContentTypeHeader;
  import javax.sip.header.ExpiresHeader;
  import javax.sip.header.FromHeader;
  import javax.sip.header.Header;
  import javax.sip.header.HeaderFactory;
  import javax.sip.header.MaxForwardsHeader;
  import javax.sip.header.ToHeader;
  import javax.sip.header.ViaHeader;
  import javax.sip.message.MessageFactory;
  import javax.sip.message.Request;
  import javax.sip.message.Response;
  import javax.sip.PeerUnavailableException;
  import javax.sip.Transaction;
  import com.sun.jndi.toolkit.url.Uri;
  import sun.security.krb5.internal.crypto.e;
  import gov.nist.javax.sip.*;
  import gov.nist.javax.sip.address.*;
  import gov.nist.javax.sip.header.*;
  import gov.nist.javax.sip.message.*;
  import gov.nist.javax.*;
  import gov.nist.javax.sip.stack.*;
  import gov.nist.javax.sip.parser.*;
  import gov.nist.*;
  import gov.nist.javax.sip.SipStackImpl;
  import gov.nist.core.net.*;
  import java.text.ParseException;
  import java.util.*;
  import java.awt.Dialog;
  import java.net.*;
  //import javax.sip.DialogTerminatedEvent;
  //import javax.sip.IOExceptionEvent;
  import javax.sip.ClientTransaction;
  import javax.sip.DialogTerminatedEvent;
  import javax.sip.IOExceptionEvent;
  import javax.sip.InvalidArgumentException;
  import javax.sip.ListeningPoint;
  import javax.sip.RequestEvent;
  import javax.sip.ResponseEvent;
  import javax.sip.ServerTransaction;
  import javax.sip.SipException;
  import javax.sip.SipFactory;
  import javax.sip.SipListener;
  import javax.sip.SipProvider;
  import javax.sip.SipStack;
  import javax.sip.TimeoutEvent;
  import javax.sip.TransactionTerminatedEvent;
  import javax.sip.TransactionUnavailableException;
  //import javax.sip.TransactionTerminatedEvent;
  import javax.sip.address.Address;
  import javax.sip.address.AddressFactory;
  import javax.sip.address.SipURI;
  import javax.sip.address.URI;
  import javax.sip.header.AuthorizationHeader;
  import javax.sip.header.CSeqHeader;
  import javax.sip.header.CallIdHeader;
  import javax.sip.header.ContactHeader;
  import javax.sip.header.ContentTypeHeader;
  import javax.sip.header.ExpiresHeader;
  import javax.sip.header.FromHeader;
  import javax.sip.header.Header;
  import javax.sip.header.HeaderFactory;
  import javax.sip.header.MaxForwardsHeader;
  import javax.sip.header.ToHeader;
  import javax.sip.header.UserAgentHeader;
  import javax.sip.header.ViaHeader;
  import javax.sip.message.MessageFactory;
  import javax.sip.message.Request;
  import javax.sip.message.Response;
  import javax.sip.PeerUnavailableException;
  import javax.sip.Transaction;
  import sun.security.krb5.internal.crypto.e;
  import gov.nist.javax.sip.*;
  import gov.nist.javax.sip.address.*;
  import gov.nist.javax.sip.header.*;
  import gov.nist.javax.sip.message.*;
  import gov.nist.javax.*;
  import gov.nist.javax.sip.stack.*;
  import gov.nist.javax.sip.parser.*;
  import gov.nist.*;
  import gov.nist.javax.sip.SipStackImpl;
   
   
   
   
   
  public class connection implements SipListener {
  private SipFactory sipFactory = null;
  private AddressFactory addressFactory = null;
  private HeaderFactory headerFactory = null;
  private MessageFactory messageFactory = null;
  private SipStack sipStack = null;
  public SipProvider sipProvider = null;
  private ClientTransaction inviteTid1 = null;
  private ClientTransaction inviteTid2 = null;
  private ClientTransaction inviteTid3 = null;
  private Iterator listeningPoints = null;
  private Dialog dialog;
  private int k =0;
  // Main
  public static void main(String[] args) {
  connection example = new connection();
  example.sendRegister();
  
  
  
  }
  public connection() {
  setup();
  }
  private void setup() {
  // Obtain an instance of the singleton SipFactory
  
  sipFactory = SipFactory.getInstance();
  
  // Set name of SipStack
  // ** SipStack.setStackName("Reference Implementation SIP stack");
  // Set path name of SipFactory to reference implementation
  // (not needed - default path name)
  sipFactory.setPathName("gov.nist");
  
  
  // Create SipStack object
  
  Properties properties = new Properties();
  properties.setProperty("javax.sip.IP_ADDRESS", "192.168.7.5");
  properties.setProperty("javax.sip.STACK_NAME", "NISTv1.2");
  properties.setProperty("javax.sip.OUTBOUND_PROXY","192.168.5.190:5060/UDP");
  
  try {
  
  sipStack = (SipStack) sipFactory.createSipStack(properties);
  System.out.println("sipstack created");
  } catch (PeerUnavailableException e) 
  {
  // could not find
  // com.dynamicsoft.ri.jain.protocol.ip.sip.SipStackImpl
  // in the classpath
  System.exit(-1);
  } catch (SipException e) {
  // could not create SipStack for some other reason
  System.exit(-1);
  }
  
  
  try {
  // Create AddressFactory
  addressFactory = sipFactory.createAddressFactory();
  // Create HeaderFactory
  headerFactory = sipFactory.createHeaderFactory();
  // Create MessageFactory
  messageFactory = sipFactory.createMessageFactory();
  } catch (SipException e) {
  System.exit(-1);
  }
  
  
  
  
  try {
  // Get SipStack's ListeningPoints
  ListeningPoint lp = sipStack.createListeningPoint(8800, "udp");
  listeningPoints = sipStack.getListeningPoints();
  System.out.println("next listening point" + listeningPoints.hasNext());
  
  
  // Create SipProvider based on the first ListeningPoint
  
  sipProvider = sipStack
  .createSipProvider((ListeningPoint) listeningPoints.next());
  } catch (Exception e) {
  System.exit(-1);
  }
  
  
  try {
  sipProvider.addSipListener(this);
  System.out.println("end of sipsetup");
  } catch (TooManyListenersException e) {
  // A limit has been reached on the number of Listeners allowed per
  // provider
  }
  }
  
  //---------------------setupends----------------------------------------------
  
  public void processRequest(RequestEvent requestReceivedEvent) {
  // Request request = requestReceivedEvent.getRequest();
  // ServerTransaction serverTransactionId =
  // requestReceivedEvent.getServerTransaction();
  // 
  // System.out.println
  // ("\n\nRequest " + request.getMethod() +
  // " received at " + sipStack.getStackName() +
  // " with server transaction id " + serverTransactionId);
  // if (request.getMethod().equals(Request.BYE))
  // 
  // processBye(request,serverTransactionId);
  // 
  }
  /* public void processBye
  (Request request, ServerTransaction serverTransactionId ) {
  try {
  System.out.println("shootist: got a bye sending OK.");
  if (serverTransactionId == null) {
  System.out.println("shootist: null TID.");
  return;
  }
  Response response = messageFactory.createResponse(200,request);
  serverTransactionId.sendResponse(response);
  
  } catch (Exception ex) {
  ex.printStackTrace();
  
  
  }
  }
  */
  // Process transaction timeout
  public void processTimeOut(javax.sip.TimeoutEvent timeoutEvent) {
  System.out.println("Transaction Time out");
  }
  // //Process Response received
  public void processResponse(ResponseEvent responseReceivedEvent) 
  {
  
  System.out.println("Hi....");
  Response response = (Response)responseReceivedEvent.getResponse();
  ClientTransaction clientTransactionId = responseReceivedEvent.getClientTransaction();
  System.out.println("Response received with client transaction id " + clientTransactionId + ":\n" + response);
  
  System.out.println("transaction state is " + clientTransactionId.getState());
  System.out.println("Dialog = " + clientTransactionId.getDialog());
  // System.out.println("Dialog State is " + clientTransactionId.getDialog().getState());
  
  
  try {
  if (response.getStatusCode() == Response.OK &&
  ((CSeqHeader)response.getHeader(CSeqHeader.NAME)).getMethod().
  equals(Request.REGISTER)) {
  
  
  sendMessages();
  }
  
  if (clientTransactionId != inviteTid1) {
  new Exception().printStackTrace();
  System.exit(0);
  
  } 
  
  // Dialog dialog =(Dialog)clientTransactionId.getDialog();
  // Request ackRequest =(Request)((MessageFactory) dialog).createRequest(Request.ACK);
  // // Bug report by Andreas Bystrom.
  // ((javax.sip.Dialog) dialog).sendAck(ackRequest);
  }
  } catch (Exception ex) {
  ex.printStackTrace();
  System.exit(0);
  } 
  
  }
  
  
  
  
  
  //----------------------------------Register starts---------------------------------- 
  public void sendRegister() {
  ResponseEvent responseReceivedEvent=null;
  
  
  SipURI fromAddress = null;
  Address fromNameAddress = null;
  FromHeader fromHeader = null;
  SipURI toAddress = null;
  javax.sip.address.Address toNameAddress = null;
  ToHeader toHeader = null;
  URI requestURI = null;
  CallIdHeader callIdHeader = null;
  CSeqHeader cSeqHeader = null;
  ViaHeader viaHeader = null;
  ArrayList viaHeaders = null;
  ContentTypeHeader contentTypeHeader = null;
  Request invite = null;
  Request SUB = null;
  Request options = null;
  Request register = null;
  
  
  Request reg = null;
  try {
  // 
  // create From Header
  
  fromAddress = addressFactory.createSipURI("callee", sipProvider.getListeningPoint().getIPAddress());
  fromNameAddress = addressFactory.createAddress("Callee",fromAddress);
  fromHeader = headerFactory.createFromHeader(fromNameAddress,"12345");
  
  // create To Header
  
  toAddress = addressFactory.createSipURI("callee", sipProvider.getListeningPoint().getIPAddress());
  toNameAddress = addressFactory.createAddress("Callee", toAddress);
  toHeader = headerFactory.createToHeader(toNameAddress, null);
  System.out.println("2");
  // create Request URI
  
  
  //create requestURI 
  try{
  requestURI = addressFactory.createURI("sip:192.168.5.190");
  System.out.println("3");
  }catch(Exception e) {
  e.printStackTrace();
  }
  
  
  
  
  // Create ViaHeaders
  
  
  // 
  System.out.println("4");
  viaHeader = headerFactory.createViaHeader(sipProvider.getListeningPoint().getIPAddress(), sipProvider
  .getListeningPoint().getPort(), "udp", "sfgsdg");
  System.out.println("5");
  viaHeaders = new ArrayList();
  viaHeaders.add(viaHeader);
  viaHeader.setRPort(8800); 
  System.out.println("d");
  
  
  // 
  // Create ContentTypeHeader
  
  contentTypeHeader = headerFactory.createContentTypeHeader("application", "sdp"); 
  // Create a new MaxForwardsHeader
  MaxForwardsHeader maxForwards = headerFactory.createMaxForwardsHeader(70);
  
  
  // Create a new Register Request
  // ------------------------------------------------------
  try{ 
  cSeqHeader = 
  headerFactory.createCSeqHeader(getnextvalue(),Request.REGISTER);
  callIdHeader = sipProvider.getNewCallId();
  cSeqHeader = headerFactory.createCSeqHeader(1, Request.REGISTER);
  
  reg = messageFactory.createRequest(requestURI, Request.REGISTER,
  callIdHeader, cSeqHeader, fromHeader, toHeader, viaHeaders,
  maxForwards,contentTypeHeader,"2 wake"); 
  
  }catch(Exception e){
  e.printStackTrace();
  }
  
  // Create contact headers
  String host = sipStack.getIPAddress();
  System.out.println(host);
  
  SipURI contactUrl = addressFactory.createSipURI ("callee", sipProvider .getListeningPoint().getIPAddress()); 
  contactUrl.setPort(sipProvider.getListeningPoint().getPort());
  contactUrl.setTransportParam("udp");
  Address contactAddress = addressFactory.createAddress(contactUrl);
  
  
  // Add the contact address.
  contactAddress.setDisplayName("callee");
  System.out.println("678");
  ContactHeader contactHeader =
  headerFactory.createContactHeader(contactAddress);
  System.out.println("contact header"+contactHeader);
  contactHeader.setQValue((float)0.5);
  
  reg.addHeader(contactHeader);
  
  
  
  // Add the extension header.
  Header extensionHeader =headerFactory.createHeader
  ("My-Header","heeeeeeeeeeo avinash");
  System.out.println("6781");
  reg.addHeader(extensionHeader);
  System.out.println("6781111111111");
  
  
  try {
  AuthorizationHeader authorization = headerFactory.createAuthorizationHeader("authorize");
  authorization.setUsername("pankaj");
  authorization.setRealm("pankaj.trianz.int");
  authorization.setNonce("bjaguyfgnk");
  authorization.setResponse("hkjhkkk");
  authorization.setOpaque("");
  authorization.setURI(contactUrl);
  Header a1 =(Header)authorization;
  reg.addHeader(a1);
  } catch (ParseException e1) {
  // TODO Auto-generated catch block
  
  }
  
  Header otherheader =
  headerFactory.createHeader
  ("My-Other-Header","helllo avinashhhhhh ");
  reg.addHeader(otherheader);
  
  Header callInfoHeader =
  headerFactory.createHeader
  ("Call-Info","<http://www.antd.nist.gov>");
  reg.addHeader(callInfoHeader);
  
  System.out.println("100");
  
  ExpiresHeader Eexpireheader= headerFactory.createExpiresHeader(3600);
  
  reg.addHeader(Eexpireheader);
  
  
  // Create the client transaction
  
  inviteTid1 = sipProvider
  .getNewClientTransaction(reg);
  inviteTid1.sendRequest();
  
  
  // inviteTid.sendRequest();
  
  
  } catch (Exception e) {
  // Implementation was unable to parse a value
  } 
  
  }
  
  //------------------------------------------registerends----------------------------
  public void sendMessages() {
  ResponseEvent responseReceivedEvent=null;
  
  
  SipURI fromAddress = null;
  Address fromNameAddress = null;
  FromHeader fromHeader = null;
  SipURI toAddress = null;
  javax.sip.address.Address toNameAddress = null;
  ToHeader toHeader = null;
  SipURI requestURI = null;
  CallIdHeader callIdHeader = null;
  CSeqHeader cSeqHeader = null;
  ViaHeader viaHeader = null;
  ArrayList viaHeaders = null;
  ContentTypeHeader contentTypeHeader = null;
  Request invite = null;
  Request SUB = null;
  Request options = null;
  Request register = null;
  Request mes = null;
  
  
  Request reg = null;
  try {
  // 
  // create From Header
  
  
  fromAddress = addressFactory.createSipURI("caller", sipProvider.getListeningPoint().getIPAddress());
  fromAddress.setPort(8800);
  fromNameAddress = addressFactory.createAddress("Caller",fromAddress);
  fromHeader = headerFactory.createFromHeader(fromNameAddress,"12345");
  
  // create To Header
  
  
  toAddress = addressFactory.createSipURI("wakeup", "192.168.5.190");
  toAddress.setPort(5060);
  toNameAddress = addressFactory.createAddress("Callee", toAddress);
  toHeader = headerFactory.createToHeader(toNameAddress, null);
  System.out.println("2");
  
  // create Request URI
  
  String toSipAddress = "192.168.5.190";
  requestURI = addressFactory.createSipURI("wakeup", toSipAddress);
  System.out.println("3");
  // Assuming that the other end has the same
  // transport.
  
  
  
  
  // Create ViaHeaders
  
  
  
  
  System.out.println("4");
  viaHeader = headerFactory.createViaHeader(sipProvider.getListeningPoint().getIPAddress(), sipProvider
  .getListeningPoint().getPort(), "udp","sfjsngld");
  System.out.println("5");
  viaHeaders = new ArrayList();
  viaHeaders.add(viaHeader);
  System.out.println("d");
  // Create a new CallId header
  
  
  
  
  // Create ContentTypeHeader
  
  contentTypeHeader = headerFactory.createContentTypeHeader("application", "sdp");
  // // Add the extension header.
  
  
  // Create a new MaxForwardsHeader
  MaxForwardsHeader maxForwards = headerFactory.createMaxForwardsHeader(70);
  
  
  cSeqHeader = 
  headerFactory.createCSeqHeader(1,Request.MESSAGE);
  
  
  // Create message Request
  
  callIdHeader = sipProvider.getNewCallId();
  cSeqHeader = headerFactory.createCSeqHeader(1, Request.MESSAGE);
  
  mes = messageFactory.createRequest(requestURI, Request.MESSAGE,
  callIdHeader, cSeqHeader, fromHeader, toHeader, viaHeaders,
  maxForwards,contentTypeHeader,"10 wake");
  
  
  // Create contact headers
  String host = sipStack.getIPAddress();
  System.out.println(host);
  
  
  // Create the contact name address.
  SipURI contactURI = addressFactory.createSipURI ("callee", sipProvider .getListeningPoint().getIPAddress()); 
  contactURI.setPort(sipProvider.getListeningPoint().getPort());
  Address contactAddress =
  addressFactory.createAddress(contactURI);
  
  
  // Add the contact Header
  contactAddress.setDisplayName("callee");
  System.out.println("678");
  ContactHeader contactHeader =
  headerFactory.createContactHeader(contactAddress);
  System.out.println("contact header"+contactHeader);
  mes.addHeader(contactHeader);
  
  // Add the extension header.
  Header extensionHeader =headerFactory.createHeader
  ("My-Header","heeeeeeeeeeo avinash");
  System.out.println("6781");
  mes.addHeader(extensionHeader);
  System.out.println("6781111111111");
  
  
  Header otherHeader =
  headerFactory.createHeader
  ("My-Other-Header","helllo avinashhhhhh ");
  mes.addHeader(otherHeader);
  
  Header callInfoHeader =
  headerFactory.createHeader
  ("Call-Info","<http://www.antd.nist.gov>");
  mes.addHeader(callInfoHeader);
  
  System.out.println("100");
  
  
  //Create the client transaction
  inviteTid2 = sipProvider
  .getNewClientTransaction(mes);
  inviteTid2.sendRequest();
  
  
  
  } catch (Exception e) {
  // Implementation was unable to parse a value
  } 
  
  }
  
  
  
  //-----------------------------------------------------------Subscribe----------------------------------------------------------------------------------------
  public void subscribe() {
  ResponseEvent responseReceivedEvent=null;
  
  
  SipURI fromAddress = null;
  Address fromNameAddress = null;
  FromHeader fromHeader = null;
  SipURI toAddress = null;
  javax.sip.address.Address toNameAddress = null;
  ToHeader toHeader = null;
  SipURI requestURI = null;
  CallIdHeader callIdHeader = null;
  CSeqHeader cSeqHeader = null;
  ViaHeader viaHeader = null;
  ArrayList viaHeaders = null;
  ContentTypeHeader contentTypeHeader = null;
  
  Request sub = null;
  
  
  Request reg = null;
  try {
  // 
  // create From Header
  
  
  fromAddress = addressFactory.createSipURI("caller", sipProvider.getListeningPoint().getIPAddress());
  fromAddress.setPort(8800);
  fromNameAddress = addressFactory.createAddress("Caller",fromAddress);
  fromHeader = headerFactory.createFromHeader(fromNameAddress,"12345");
  
  // create To Header
  
  
  toAddress = addressFactory.createSipURI("wakeup", "192.168.5.190");
  toAddress.setPort(5060);
  toNameAddress = addressFactory.createAddress("Callee", toAddress);
  toHeader = headerFactory.createToHeader(toNameAddress, null);
  System.out.println("2");
  
  // create Request URI
  
  String toSipAddress = "192.168.5.190";
  requestURI = addressFactory.createSipURI("wakeup", toSipAddress);
  System.out.println("3");
  // Assuming that the other end has the same
  // transport.
  
  
  
  
  // Create ViaHeaders
  
  
  
  
  System.out.println("4");
  viaHeader = headerFactory.createViaHeader(sipProvider.getListeningPoint().getIPAddress(), sipProvider
  .getListeningPoint().getPort(), "udp","sfjsngld");
  System.out.println("5");
  viaHeaders = new ArrayList();
  viaHeaders.add(viaHeader);
  System.out.println("d");
  // Create a new CallId header
  
  
  
  
  // Create ContentTypeHeader
  
  contentTypeHeader = headerFactory.createContentTypeHeader("application", "sdp");
  // // Add the extension header.
  
  
  // Create a new MaxForwardsHeader
  MaxForwardsHeader maxForwards = headerFactory.createMaxForwardsHeader(70);
  
  
  cSeqHeader = 
  headerFactory.createCSeqHeader(1,Request.MESSAGE);
  
  
  // Create message Request
  
  callIdHeader = sipProvider.getNewCallId();
  cSeqHeader = headerFactory.createCSeqHeader(1, Request.SUBSCRIBE);
  
  sub = messageFactory.createRequest(requestURI, Request.SUBSCRIBE,
  callIdHeader, cSeqHeader, fromHeader, toHeader, viaHeaders,
  maxForwards,contentTypeHeader,"10 wake");
  
  
  // Create contact headers
  String host = sipStack.getIPAddress();
  System.out.println(host);
  
  
  // Create the contact name address.
  SipURI contactURI = addressFactory.createSipURI ("callee", sipProvider .getListeningPoint().getIPAddress()); 
  contactURI.setPort(sipProvider.getListeningPoint().getPort());
  Address contactAddress =
  addressFactory.createAddress(contactURI);
  
  
  // Add the contact Header
  contactAddress.setDisplayName("callee");
  System.out.println("678");
  ContactHeader contactHeader =
  headerFactory.createContactHeader(contactAddress);
  System.out.println("contact header"+contactHeader);
  sub.addHeader(contactHeader);
  
  // Add the extension header.
  Header extensionHeader =headerFactory.createHeader
  ("My-Header","heeeeeeeeeeo avinash");
  System.out.println("6781");
  sub.addHeader(extensionHeader);
  System.out.println("6781111111111");
  
  
  Header otherHeader =
  headerFactory.createHeader
  ("My-Other-Header","helllo avinashhhhhh ");
  sub.addHeader(otherHeader);
  
  Header callInfoHeader =
  headerFactory.createHeader
  ("Call-Info","<http://www.antd.nist.gov>");
  sub.addHeader(callInfoHeader);
  
  System.out.println("100");
  
  
  //Create the client transaction
  inviteTid3 = sipProvider
  .getNewClientTransaction(sub);
  inviteTid3.sendRequest();
  
  
  
  } catch (Exception e) {
  // Implementation was unable to parse a value
  } 
  
  }
  //--------------------------------------------------------------xxxxxxxxxxxxxxxxxxxxx-----------------------------------------------------------------------
  
  int getnextvalue()
  {
  return k++;
  }
  
  
  public void processIOException(IOExceptionEvent arg0) {
  // TODO Auto-generated method stub
  }
  public void processTransactionTerminated(TransactionTerminatedEvent arg0) {
  // TODO Auto-generated method stub
  }
  public void processDialogTerminated(DialogTerminatedEvent arg0) {
  // TODO Auto-generated method stub
  }
  
  
  public void processTimeout(TimeoutEvent arg0) {
  // TODO Auto-generated method stub
  
  }
  
  }
   
   
   
  I m hitting a mobclient example slee server . in which i m invoking wakeup service by sending message "10 wake".
   
  I m facing following problems--
   
  1.  I received 200/ok response for register but when message is sent it shows binding empty.it shows up to address of record.
   
  2. when register req is sent twice there is the same CSeq No.
   
  3. Is it necessary to have binding.when we send message to server it is also embedded in message that from where it is originated
   
   
   
  Thanx in advance
  Pankaj Parashar
  Bangalore
  91-9886038077
   
  
  
  


Pankaj Parashar

 				
---------------------------------
 Here’s a new way to find what you're looking for - Yahoo! Answers 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://sipforum.org/pipermail/discussion/attachments/20070205/e7c5e0ce/attachment-0002.html>


More information about the discussion mailing list