diff --git a/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java b/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java
index 000d4965..7d7c4dc7 100644
--- a/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java
+++ b/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java
@@ -1244,6 +1244,7 @@ public class SenderActivity extends AppCompatActivity {
final EditText editTextPushPlusChannel = view1.findViewById(R.id.editTextPushPlusChannel);
final EditText editTextPushPlusWebhook = view1.findViewById(R.id.editTextPushPlusWebhook);
final EditText editTextPushPlusCallbackUrl = view1.findViewById(R.id.editTextPushPlusCallbackUrl);
+ final EditText editTextPushPlusValidTime = view1.findViewById(R.id.editTextPushPlusValidTime);
if (pushPlusSettingVo != null) {
editTextPushPlusName.setText(senderModel.getName());
@@ -1253,6 +1254,7 @@ public class SenderActivity extends AppCompatActivity {
editTextPushPlusChannel.setText(pushPlusSettingVo.getChannel());
editTextPushPlusWebhook.setText(pushPlusSettingVo.getWebhook());
editTextPushPlusCallbackUrl.setText(pushPlusSettingVo.getCallbackUrl());
+ editTextPushPlusValidTime.setText(pushPlusSettingVo.getValidTime());
}
Button buttonPushPlusOk = view1.findViewById(R.id.buttonPushPlusOk);
@@ -1272,12 +1274,13 @@ public class SenderActivity extends AppCompatActivity {
newSenderModel.setType(TYPE_PUSHPLUS);
newSenderModel.setStatus(STATUS_ON);
PushPlusSettingVo pushPlusSettingVoNew = new PushPlusSettingVo(
- editTextPushPlusToken.getText().toString(),
- editTextPushPlusTopic.getText().toString(),
- editTextPushPlusTemplate.getText().toString(),
- editTextPushPlusChannel.getText().toString(),
- editTextPushPlusWebhook.getText().toString(),
- editTextPushPlusCallbackUrl.getText().toString()
+ editTextPushPlusToken.getText().toString().trim(),
+ editTextPushPlusTopic.getText().toString().trim(),
+ editTextPushPlusTemplate.getText().toString().trim(),
+ editTextPushPlusChannel.getText().toString().trim(),
+ editTextPushPlusWebhook.getText().toString().trim(),
+ editTextPushPlusCallbackUrl.getText().toString().trim(),
+ editTextPushPlusValidTime.getText().toString().trim()
);
newSenderModel.setJsonSetting(JSON.toJSONString(pushPlusSettingVoNew));
SenderUtil.addSender(newSenderModel);
@@ -1288,12 +1291,13 @@ public class SenderActivity extends AppCompatActivity {
senderModel.setType(TYPE_PUSHPLUS);
senderModel.setStatus(STATUS_ON);
PushPlusSettingVo pushPlusSettingVoNew = new PushPlusSettingVo(
- editTextPushPlusToken.getText().toString(),
- editTextPushPlusTopic.getText().toString(),
- editTextPushPlusTemplate.getText().toString(),
- editTextPushPlusChannel.getText().toString(),
- editTextPushPlusWebhook.getText().toString(),
- editTextPushPlusCallbackUrl.getText().toString()
+ editTextPushPlusToken.getText().toString().trim(),
+ editTextPushPlusTopic.getText().toString().trim(),
+ editTextPushPlusTemplate.getText().toString().trim(),
+ editTextPushPlusChannel.getText().toString().trim(),
+ editTextPushPlusWebhook.getText().toString().trim(),
+ editTextPushPlusCallbackUrl.getText().toString().trim(),
+ editTextPushPlusValidTime.getText().toString().trim()
);
senderModel.setJsonSetting(JSON.toJSONString(pushPlusSettingVoNew));
SenderUtil.updateSender(senderModel);
@@ -1314,12 +1318,13 @@ public class SenderActivity extends AppCompatActivity {
buttonPushPlusTest.setOnClickListener(view -> {
PushPlusSettingVo pushPlusSettingVoNew = new PushPlusSettingVo(
- editTextPushPlusToken.getText().toString(),
- editTextPushPlusTopic.getText().toString(),
- editTextPushPlusTemplate.getText().toString(),
- editTextPushPlusChannel.getText().toString(),
- editTextPushPlusWebhook.getText().toString(),
- editTextPushPlusCallbackUrl.getText().toString()
+ editTextPushPlusToken.getText().toString().trim(),
+ editTextPushPlusTopic.getText().toString().trim(),
+ editTextPushPlusTemplate.getText().toString().trim(),
+ editTextPushPlusChannel.getText().toString().trim(),
+ editTextPushPlusWebhook.getText().toString().trim(),
+ editTextPushPlusCallbackUrl.getText().toString().trim(),
+ editTextPushPlusValidTime.getText().toString().trim()
);
String token = pushPlusSettingVoNew.getToken();
diff --git a/app/src/main/java/com/idormy/sms/forwarder/model/vo/PushPlusSettingVo.java b/app/src/main/java/com/idormy/sms/forwarder/model/vo/PushPlusSettingVo.java
index cc52a0d1..1cbb3e22 100644
--- a/app/src/main/java/com/idormy/sms/forwarder/model/vo/PushPlusSettingVo.java
+++ b/app/src/main/java/com/idormy/sms/forwarder/model/vo/PushPlusSettingVo.java
@@ -12,16 +12,18 @@ public class PushPlusSettingVo implements Serializable {
private String channel;
private String webhook;
private String callbackUrl;
+ private String validTime;
public PushPlusSettingVo() {
}
- public PushPlusSettingVo(String token, String topic, String template, String channel, String webhook, String callbackUrl) {
+ public PushPlusSettingVo(String token, String topic, String template, String channel, String webhook, String callbackUrl, String validTime) {
this.token = token;
this.topic = topic;
this.template = template;
this.channel = channel;
this.webhook = webhook;
this.callbackUrl = callbackUrl;
+ this.validTime = validTime;
}
}
diff --git a/app/src/main/java/com/idormy/sms/forwarder/sender/SenderPushPlusMsg.java b/app/src/main/java/com/idormy/sms/forwarder/sender/SenderPushPlusMsg.java
index 2c8801ab..d214fcca 100644
--- a/app/src/main/java/com/idormy/sms/forwarder/sender/SenderPushPlusMsg.java
+++ b/app/src/main/java/com/idormy/sms/forwarder/sender/SenderPushPlusMsg.java
@@ -29,7 +29,7 @@ import okhttp3.Response;
@SuppressWarnings({"ResultOfMethodCallIgnored", "rawtypes", "unchecked", "deprecation"})
public class SenderPushPlusMsg extends SenderBaseMsg {
- static final String TAG = "SenderFeishuMsg";
+ static final String TAG = "SenderPushPlusMsg";
public static void sendMsg(final long logId, final Handler handError, PushPlusSettingVo pushPlusSettingVo, String title, String content) throws Exception {
@@ -67,7 +67,10 @@ public class SenderPushPlusMsg extends SenderBaseMsg {
if (callbackUrl != null && !callbackUrl.isEmpty()) textMsgMap.put("callbackUrl", callbackUrl);
//毫秒时间戳。格式如:1632993318000。服务器时间戳大于此时间戳,则消息不会发送
- textMsgMap.put("timestamp", System.currentTimeMillis());
+ String validTime = pushPlusSettingVo.getValidTime();
+ if (validTime != null && !validTime.isEmpty() && Integer.parseInt(validTime) > 0) {
+ textMsgMap.put("timestamp", System.currentTimeMillis() + Integer.parseInt(validTime) * 1000L);
+ }
final String requestUrl = "http://www.pushplus.plus/send/" + token;
Log.i(TAG, "requestUrl:" + requestUrl);
diff --git a/app/src/main/res/layout/alert_dialog_setview_pushplus.xml b/app/src/main/res/layout/alert_dialog_setview_pushplus.xml
index 5777c9b7..2f41f25e 100644
--- a/app/src/main/res/layout/alert_dialog_setview_pushplus.xml
+++ b/app/src/main/res/layout/alert_dialog_setview_pushplus.xml
@@ -177,6 +177,30 @@
tools:ignore="LabelFor" />
+
+
+
+
+
+
+
Channel
Webhook Code
Callback Url
+ Valid time(secs)
wechat
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index eb5682f6..305e2e08 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -235,5 +235,6 @@
发送渠道
webhook编码
回调地址
+ 有效时间(秒)
wechat