Gammu отправляет смс, используя два или более Java-приложения из SSH одновременно
Я использую гамму для отправки смс, и мне было интересно, можно ли отправлять сообщения одновременно, используя два или более компьютера с приложением Java. Я пробовал это 10 раз и 1 из 10 раз сообщение успешно отправлено с обоих компьютеров. 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.
заранее спасибо
1 ответ
Возможно, вы предпочитаете использовать для этого Gammu SMSD - он работает на сервере и отправляет / получает сообщения из / в базу данных. Таким образом, вы можете легко отправлять сообщения с других хостов, просто вставляя их в базу данных.
Ошибка Warning: No configuration read, using builtin defaults!
указывает на то, что Gammu не нашел файл конфигурации, может быть, вы используете его как другой пользователь? Или попробуйте указать путь к файлу конфигурации с помощью параметра --config.