Solved

SIP RTP J2ME development

Posted on 2008-10-13
2
2,220 Views
Last Modified: 2013-11-24
Dear All,
am facing a problem with my code, am trying to initiate an RTP session. I succeeded with implementation of SIP authentication and registry but i cannot get the RTP steam ?
i would appreciate if someone can review my code and pinpoint the errors am facing.
Enclosed both Class for the RTP and the error am getting.
and would be more appreciated if someone can pinpoint a workable sourcecode or document of a complete SIP and RTP under JAVA J2ME.
package sip_server2;
 
//package com.ctimn;
 
import java.io.*;
import javax.microedition.io.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
 
public class SocketListener extends Thread{
 
   private Form outputForm;
   private boolean shutdownFlag = false;
   private StreamConnectionNotifier notifier;
 
   public SocketListener(Form outputForm){
      this.outputForm = outputForm;
   }
 
  
   private StreamConnectionNotifier createNotifier() throws IOException {
      return (StreamConnectionNotifier)
              Connector.open("socket://192.168.2.56:5062", Connector.READ_WRITE, true);
   
 
//"rtp://:16384"
      //"rtp://:5060"
       //"socket://1006@192.168.100.1:5060"
      //"socket://:5060"
  // "sip://1006@192.168.100.1:5060"
 //"socket://127.0.0.1:8888"
//"serversocket://:4444"
   }
 
   public void run(){
      
      System.out.println("socketListener is working"); 
      String dataIn = null;
      String dataOut = null;
      int counter = 1;
      StringItem item = new StringItem("Listening to Socket", "");
      outputForm.append(item);
      StreamConnection connection = null;
      try {
         notifier = createNotifier();
         while (true) {
            try {
               connection = notifier.acceptAndOpen();
            } catch (InterruptedIOException x){
               if (shutdownFlag){
                  return;
               } else {
                  notifier = createNotifier();
               }
            }
            catch(Exception e){    System.out.println("there is no error"+e.getMessage()) ;
            }
            
            DataInputStream is = connection.openDataInputStream();
            DataOutputStream os = connection.openDataOutputStream();
            connection.close();
            try {
               dataIn = is.readUTF();
               System.out.println(dataIn);
               item = new StringItem("Msg: ", "'"+dataIn+"'");
               outputForm.append(item);
               System.out.println("Msg:'"+dataIn+"'");
               dataOut = "Message " + counter + " from the server.";
               counter++;
               os.writeUTF(dataOut);
               os.flush();
            } finally {
                
               System.out.println("finaly try"); 
               os.close();
               is.close();
            }
         }
      } catch (IOException x) {
         System.out.println("Problems sending or receiving data.");
         System.out.println(x.getMessage());
         x.printStackTrace();
      }
     // catch(Exception e){
       // System.out.println("there is no error"+e.getMessage()) ;
      
    // }
   }
 
   public void shutdown(){
      shutdownFlag = true;
   }
}
//Java 2 Micro Edition
//James P. White and David A. Hemphill
//ISBN: 1930110332
//http://manning.com/books/white
 
 
//===========================================================================
//ERROR/
The Exeption:
 
Problems sending or receiving data.
TCP open
javax.microedition.io.ConnectionNotFoundException: TCP open
        at com.sun.midp.io.j2me.socket.Protocol.connect(Protocol.java:216)
        at com.sun.midp.io.ConnectionBaseAdapter.openPrim(ConnectionBaseAdapter.java:103)
        at com.sun.midp.io.j2me.socket.Protocol.openPrim(+108)
        at javax.microedition.io.Connector.openPrim(Connector.java:329)
        at javax.microedition.io.Connector.open(Connector.java:222)
        at sip_server2.SocketListener.createNotifier(SocketListener.java:22)
        at sip_server2.SocketListener.run(SocketListener.java:43)

Open in new window

0
Comment
Question by:deniro1974
2 Comments
 
LVL 1

Accepted Solution

by:
waleed hassan earned 500 total points
ID: 22747956
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
difference between sorce folder and folder in eclipise 3 29
Problem to Alipay 10 48
java imports not found 4 30
Html Table Looping (part 2) 5 28
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
As companies replace their old PBX phone systems with Unified IP Communications, many are finding out that legacy applications such as fax do not work well with VoIP. Fortunately, Cloud Faxing provides a cost-effective alternative that works over an…
Viewers learn how to read error messages and identify possible mistakes that could cause hours of frustration. Coding is as much about debugging your code as it is about writing it. Define Error Message: Line Numbers: Type of Error: Break Down…
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question