我正在为sipp命令行程序编写Java接口。我当前的代码是:
ProcessBuilder builder = new ProcessBuilder("sipp", "-sn uac",
"127.0.0.1");
Map<String, String> environment = builder.environment();
Process javap = builder.start();
InputStreamReader tempReader = new InputStreamReader(new BufferedInputStream(javap.getInputStream()));
BufferedReader reader = new BufferedReader(tempReader);
while (true){
String line = reader.readLine();
if (line == null)
break;
System.out.println(line);
}这对我来说是行不通的,我已经设置了sipp环境变量,所以这不是问题。标准输出是sipp的帮助消息。我做错了什么?我还想知道,一旦我运行了sipp,是否可以将参数传递给与其关联的processBuilder对象,以便我可以更改调用速率?例如,sipp让用户通过按+,-,*来改变呼叫速率,这是可能的吗?
发布于 2011-03-24 03:35:38
尝试分解-sn和uac参数:
ProcessBuilder builder = new ProcessBuilder("sipp", "-sn", "uac", "127.0.0.1");我还想知道,一旦我运行了sipp,是否可以将参数传递给与其关联的processBuilder对象,以便我可以更改调用速率?
如果sipp期望从标准输入中获得输入,那么您应该能够获取进程的输出流(javap.getOutputStream())并向其写入命令。不过,我对sipp一无所知,无法告诉你它是如何工作的。
https://stackoverflow.com/questions/5410036
复制相似问题