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.
part of the code:
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);
port list i have been Tried
//"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)

Reply With Quote

