|
@@ -37,28 +37,34 @@ public class ScriptSender {
|
|
|
|
|
|
private String userParams;
|
|
|
|
|
|
+ private static final String ALERT_TITLE_OPTION = " -t ";
|
|
|
+
|
|
|
+ private static final String ALERT_CONTENT_OPTION = " -c ";
|
|
|
+
|
|
|
+ private static final String ALERT_USER_PARAMS_OPTION = " -p ";
|
|
|
+
|
|
|
ScriptSender(Map<String, String> config) {
|
|
|
scriptPath = config.get(ScriptParamsConstants.NAME_SCRIPT_PATH);
|
|
|
scriptType = config.get(ScriptParamsConstants.NAME_SCRIPT_TYPE);
|
|
|
userParams = config.get(ScriptParamsConstants.NAME_SCRIPT_USER_PARAMS);
|
|
|
}
|
|
|
|
|
|
- AlertResult sendScriptAlert(String msg) {
|
|
|
+ AlertResult sendScriptAlert(String title, String content) {
|
|
|
AlertResult alertResult = new AlertResult();
|
|
|
if (ScriptType.SHELL.getDescp().equals(scriptType)) {
|
|
|
- return executeShellScript(msg);
|
|
|
+ return executeShellScript(title, content);
|
|
|
}
|
|
|
return alertResult;
|
|
|
}
|
|
|
|
|
|
- private AlertResult executeShellScript(String msg) {
|
|
|
+ private AlertResult executeShellScript(String title, String content) {
|
|
|
AlertResult alertResult = new AlertResult();
|
|
|
alertResult.setStatus("false");
|
|
|
if (Boolean.TRUE.equals(OSUtils.isWindows())) {
|
|
|
alertResult.setMessage("shell script not support windows os");
|
|
|
return alertResult;
|
|
|
}
|
|
|
- String[] cmd = {"/bin/sh", "-c", scriptPath + " " + msg + " " + userParams};
|
|
|
+ String[] cmd = {"/bin/sh", "-c", scriptPath + ALERT_TITLE_OPTION + "'" + title + "'" + ALERT_CONTENT_OPTION + "'" + content + "'" + ALERT_USER_PARAMS_OPTION + "'" + userParams + "'"};
|
|
|
int exitCode = ProcessUtils.executeScript(cmd);
|
|
|
|
|
|
if (exitCode == 0) {
|