Gammu 同时使用两个或多个 java 应用程序从 ssh 发送短信
Gammu send sms using two or more java app from ssh at the same time
我正在使用 gammu 发送短信,我想知道是否可以使用装有 java 应用程序的两台或多台计算机同时发送消息。我试了 10 次,10 次中有 1 次从两台计算机成功发送了消息。 9 次只有一台计算机可以发送短信而另一台发送失败。
是否有某种设置或命令可以同时从两台计算机发送消息?对于配置,我使用 Gammu
的默认配置
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Properties;
import com.jcraft.jsch.ChannelExec;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session;
public class TestingSms {
public static void main(String[] args) {
// TODO Auto-generated method stub
String host = "MY GAMMU IP";
String user = "MY USERNAME";
String password = "MY PASSWORD";
int port = 22;
String sms ="haloo";
JSch jsch = new JSch();
try {
Session session = jsch.getSession(user, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
ChannelExec exec = (ChannelExec) session.openChannel("exec");
exec.setCommand("gammu sendsms TEXT 08xxxxxxxxxx -text \""+sms+"\"");
exec.setErrStream(System.err);
exec.connect();
BufferedReader reader = new BufferedReader(new InputStreamReader(exec.getInputStream()));
String temp;
while((temp=reader.readLine())!=null) {
System.out.println(temp);
}
exec.disconnect();
session.disconnect();
System.out.println("\n\nFinish");
} catch (JSchException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
失败消息:
Warning: No configuration read, using builtin defaults!
No response in specified timeout. Probably phone not connected.
提前致谢
也许您更愿意为此使用 Gammu SMSD - 它在服务器和 sends/receives 消息 from/to 数据库上运行。这样您就可以轻松地从其他主机发送消息,只需将它们插入数据库即可。
错误Warning: No configuration read, using builtin defaults!
表明Gammu没有找到配置文件,也许你运行它是不同的用户?或者尝试使用 --config parameter.
指定配置文件的路径
我正在使用 gammu 发送短信,我想知道是否可以使用装有 java 应用程序的两台或多台计算机同时发送消息。我试了 10 次,10 次中有 1 次从两台计算机成功发送了消息。 9 次只有一台计算机可以发送短信而另一台发送失败。 是否有某种设置或命令可以同时从两台计算机发送消息?对于配置,我使用 Gammu
的默认配置import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Properties;
import com.jcraft.jsch.ChannelExec;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session;
public class TestingSms {
public static void main(String[] args) {
// TODO Auto-generated method stub
String host = "MY GAMMU IP";
String user = "MY USERNAME";
String password = "MY PASSWORD";
int port = 22;
String sms ="haloo";
JSch jsch = new JSch();
try {
Session session = jsch.getSession(user, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
ChannelExec exec = (ChannelExec) session.openChannel("exec");
exec.setCommand("gammu sendsms TEXT 08xxxxxxxxxx -text \""+sms+"\"");
exec.setErrStream(System.err);
exec.connect();
BufferedReader reader = new BufferedReader(new InputStreamReader(exec.getInputStream()));
String temp;
while((temp=reader.readLine())!=null) {
System.out.println(temp);
}
exec.disconnect();
session.disconnect();
System.out.println("\n\nFinish");
} catch (JSchException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
失败消息:
Warning: No configuration read, using builtin defaults!
No response in specified timeout. Probably phone not connected.
提前致谢
也许您更愿意为此使用 Gammu SMSD - 它在服务器和 sends/receives 消息 from/to 数据库上运行。这样您就可以轻松地从其他主机发送消息,只需将它们插入数据库即可。
错误Warning: No configuration read, using builtin defaults!
表明Gammu没有找到配置文件,也许你运行它是不同的用户?或者尝试使用 --config parameter.