This commit is contained in:
commit
d6de5644f2
|
@ -87,8 +87,9 @@ public class RuleActivity extends AppCompatActivity {
|
|||
listView.setOnItemClickListener((parent, view, position, id) -> {
|
||||
RuleModel ruleModel = ruleModels.get(position);
|
||||
Log.d(TAG, "onItemClick: " + ruleModel);
|
||||
setRule(ruleModel);
|
||||
setRule(ruleModel, false);
|
||||
});
|
||||
|
||||
listView.setOnItemLongClickListener((parent, view, position, id) -> {
|
||||
//定义AlertDialog.Builder对象,当长按列表项的时候弹出确认删除对话框
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(RuleActivity.this);
|
||||
|
@ -103,6 +104,17 @@ public class RuleActivity extends AppCompatActivity {
|
|||
Toast.makeText(getBaseContext(), R.string.delete_rule_toast, Toast.LENGTH_SHORT).show();
|
||||
});
|
||||
|
||||
//添加AlertDialog.Builder对象的setNegativeButton()方法
|
||||
builder.setNeutralButton(R.string.clone, (dialog, which) -> {
|
||||
RuleModel ruleModel = ruleModels.get(position);
|
||||
//TODO:直接复制
|
||||
//RuleUtil.addRule(ruleModel);
|
||||
//initRules();
|
||||
//adapter.add(ruleModels);
|
||||
//TODO:只复制到编辑对话框
|
||||
setRule(ruleModel, true);
|
||||
});
|
||||
|
||||
//添加AlertDialog.Builder对象的setNegativeButton()方法
|
||||
builder.setNegativeButton(R.string.cancel, (dialog, which) -> {
|
||||
|
||||
|
@ -169,10 +181,10 @@ public class RuleActivity extends AppCompatActivity {
|
|||
final RadioGroup radioGroupTypeCheck = findViewById(R.id.radioGroupTypeCheck);
|
||||
radioGroupTypeCheck.check(typeCheckId);
|
||||
|
||||
setRule(null);
|
||||
setRule(null, false);
|
||||
}
|
||||
|
||||
private void setRule(final RuleModel ruleModel) {
|
||||
private void setRule(final RuleModel ruleModel, final boolean isClone) {
|
||||
final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(RuleActivity.this);
|
||||
final View view1 = View.inflate(RuleActivity.this, getDialogView(currentType), null);
|
||||
|
||||
|
@ -260,7 +272,7 @@ public class RuleActivity extends AppCompatActivity {
|
|||
|
||||
int radioGroupRuleCheckId = Math.max(radioGroupRuleCheck.getCheckedRadioButtonId(), radioGroupRuleCheck2.getCheckedRadioButtonId());
|
||||
Log.d(TAG, radioGroupRuleCheck.getCheckedRadioButtonId() + " " + radioGroupRuleCheck2.getCheckedRadioButtonId() + " " + radioGroupRuleCheckId);
|
||||
if (ruleModel == null) {
|
||||
if (isClone || ruleModel == null) {
|
||||
RuleModel newRuleModel = new RuleModel();
|
||||
newRuleModel.setType(currentType);
|
||||
newRuleModel.setFiled(RuleModel.getRuleFiledFromCheckId(radioGroupRuleFiled.getCheckedRadioButtonId()));
|
||||
|
|
|
@ -117,37 +117,37 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
switch (senderModel.getType()) {
|
||||
case TYPE_DINGDING:
|
||||
setDingDing(senderModel);
|
||||
setDingDing(senderModel, false);
|
||||
break;
|
||||
case TYPE_EMAIL:
|
||||
setEmail(senderModel);
|
||||
setEmail(senderModel, false);
|
||||
break;
|
||||
case TYPE_BARK:
|
||||
setBark(senderModel);
|
||||
setBark(senderModel, false);
|
||||
break;
|
||||
case TYPE_WEB_NOTIFY:
|
||||
setWebNotify(senderModel);
|
||||
setWebNotify(senderModel, false);
|
||||
break;
|
||||
case TYPE_QYWX_GROUP_ROBOT:
|
||||
setQYWXGroupRobot(senderModel);
|
||||
setQYWXGroupRobot(senderModel, false);
|
||||
break;
|
||||
case TYPE_QYWX_APP:
|
||||
setQYWXApp(senderModel);
|
||||
setQYWXApp(senderModel, false);
|
||||
break;
|
||||
case TYPE_SERVER_CHAN:
|
||||
setServerChan(senderModel);
|
||||
setServerChan(senderModel, false);
|
||||
break;
|
||||
case TYPE_TELEGRAM:
|
||||
setTelegram(senderModel);
|
||||
setTelegram(senderModel, false);
|
||||
break;
|
||||
case TYPE_SMS:
|
||||
setSms(senderModel);
|
||||
setSms(senderModel, false);
|
||||
break;
|
||||
case TYPE_FEISHU:
|
||||
setFeiShu(senderModel);
|
||||
setFeiShu(senderModel, false);
|
||||
break;
|
||||
case TYPE_PUSHPLUS:
|
||||
setPushPlus(senderModel);
|
||||
setPushPlus(senderModel, false);
|
||||
break;
|
||||
default:
|
||||
Toast.makeText(SenderActivity.this, R.string.invalid_sender, Toast.LENGTH_LONG).show();
|
||||
|
@ -173,6 +173,51 @@ public class SenderActivity extends AppCompatActivity {
|
|||
Toast.makeText(getBaseContext(), R.string.delete_sender_toast, Toast.LENGTH_SHORT).show();
|
||||
});
|
||||
|
||||
builder.setNeutralButton(R.string.clone, (dialog, which) -> {
|
||||
SenderModel senderModel = senderModels.get(position);
|
||||
switch (senderModel.getType()) {
|
||||
case TYPE_DINGDING:
|
||||
setDingDing(senderModel, true);
|
||||
break;
|
||||
case TYPE_EMAIL:
|
||||
setEmail(senderModel, true);
|
||||
break;
|
||||
case TYPE_BARK:
|
||||
setBark(senderModel, true);
|
||||
break;
|
||||
case TYPE_WEB_NOTIFY:
|
||||
setWebNotify(senderModel, true);
|
||||
break;
|
||||
case TYPE_QYWX_GROUP_ROBOT:
|
||||
setQYWXGroupRobot(senderModel, true);
|
||||
break;
|
||||
case TYPE_QYWX_APP:
|
||||
setQYWXApp(senderModel, true);
|
||||
break;
|
||||
case TYPE_SERVER_CHAN:
|
||||
setServerChan(senderModel, true);
|
||||
break;
|
||||
case TYPE_TELEGRAM:
|
||||
setTelegram(senderModel, true);
|
||||
break;
|
||||
case TYPE_SMS:
|
||||
setSms(senderModel, true);
|
||||
break;
|
||||
case TYPE_FEISHU:
|
||||
setFeiShu(senderModel, true);
|
||||
break;
|
||||
case TYPE_PUSHPLUS:
|
||||
setPushPlus(senderModel, true);
|
||||
break;
|
||||
default:
|
||||
Toast.makeText(SenderActivity.this, R.string.invalid_sender, Toast.LENGTH_LONG).show();
|
||||
SenderUtil.delSender(senderModel.getId());
|
||||
initSenders();
|
||||
adapter.del(senderModels);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
//添加AlertDialog.Builder对象的setNegativeButton()方法
|
||||
builder.setNegativeButton(R.string.cancel, (dialog, which) -> {
|
||||
|
||||
|
@ -195,37 +240,37 @@ public class SenderActivity extends AppCompatActivity {
|
|||
builder.setItems(R.array.add_sender_menu, (dialogInterface, which) -> {
|
||||
switch (which) {
|
||||
case TYPE_DINGDING:
|
||||
setDingDing(null);
|
||||
setDingDing(null, false);
|
||||
break;
|
||||
case TYPE_EMAIL:
|
||||
setEmail(null);
|
||||
setEmail(null, false);
|
||||
break;
|
||||
case TYPE_BARK:
|
||||
setBark(null);
|
||||
setBark(null, false);
|
||||
break;
|
||||
case TYPE_WEB_NOTIFY:
|
||||
setWebNotify(null);
|
||||
setWebNotify(null, false);
|
||||
break;
|
||||
case TYPE_QYWX_GROUP_ROBOT:
|
||||
setQYWXGroupRobot(null);
|
||||
setQYWXGroupRobot(null, false);
|
||||
break;
|
||||
case TYPE_QYWX_APP:
|
||||
setQYWXApp(null);
|
||||
setQYWXApp(null, false);
|
||||
break;
|
||||
case TYPE_SERVER_CHAN:
|
||||
setServerChan(null);
|
||||
setServerChan(null, false);
|
||||
break;
|
||||
case TYPE_TELEGRAM:
|
||||
setTelegram(null);
|
||||
setTelegram(null, false);
|
||||
break;
|
||||
case TYPE_SMS:
|
||||
setSms(null);
|
||||
setSms(null, false);
|
||||
break;
|
||||
case TYPE_FEISHU:
|
||||
setFeiShu(null);
|
||||
setFeiShu(null, false);
|
||||
break;
|
||||
case TYPE_PUSHPLUS:
|
||||
setPushPlus(null);
|
||||
setPushPlus(null, false);
|
||||
break;
|
||||
default:
|
||||
Toast.makeText(SenderActivity.this, R.string.not_supported, Toast.LENGTH_LONG).show();
|
||||
|
@ -238,7 +283,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//钉钉机器人
|
||||
@SuppressLint("SimpleDateFormat")
|
||||
private void setDingDing(final SenderModel senderModel) {
|
||||
private void setDingDing(final SenderModel senderModel, final boolean isClone) {
|
||||
DingDingSettingVo dingDingSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -277,7 +322,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
final AlertDialog show = alertDialog71.show();
|
||||
buttonDingdingOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextDingdingName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_DINGDING);
|
||||
|
@ -339,7 +384,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//邮箱
|
||||
@SuppressLint("SimpleDateFormat")
|
||||
private void setEmail(final SenderModel senderModel) {
|
||||
private void setEmail(final SenderModel senderModel, final boolean isClone) {
|
||||
EmailSettingVo emailSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -407,7 +452,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
EmailSettingVo emailSettingVoNew = new EmailSettingVo(protocol, host, port, ssl, fromEmail, nickname, pwd, toEmail, title);
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextEmailName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_EMAIL);
|
||||
|
@ -495,7 +540,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
}
|
||||
|
||||
//Bark
|
||||
private void setBark(final SenderModel senderModel) {
|
||||
private void setBark(final SenderModel senderModel, final boolean isClone) {
|
||||
BarkSettingVo barkSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -527,7 +572,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
buttonBarkOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextBarkName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_BARK);
|
||||
|
@ -582,7 +627,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
}
|
||||
|
||||
//Server酱·Turbo版
|
||||
private void setServerChan(final SenderModel senderModel) {
|
||||
private void setServerChan(final SenderModel senderModel, final boolean isClone) {
|
||||
ServerChanSettingVo serverchanSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -613,7 +658,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
buttonServerChanOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextServerChanName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_SERVER_CHAN);
|
||||
|
@ -666,7 +711,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//webhook
|
||||
@SuppressLint("SimpleDateFormat")
|
||||
private void setWebNotify(final SenderModel senderModel) {
|
||||
private void setWebNotify(final SenderModel senderModel, final boolean isClone) {
|
||||
WebNotifySettingVo webNotifySettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -707,7 +752,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
(radioGroupWebNotifyMethod.getCheckedRadioButtonId() == R.id.radioWebNotifyMethodGet ? "GET" : "POST"),
|
||||
editTextWebNotifyWebParams.getText().toString().trim()
|
||||
);
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextWebNotifyName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_WEB_NOTIFY);
|
||||
|
@ -753,7 +798,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//企业微信群机器人
|
||||
@SuppressLint("SimpleDateFormat")
|
||||
private void setQYWXGroupRobot(final SenderModel senderModel) {
|
||||
private void setQYWXGroupRobot(final SenderModel senderModel, final boolean isClone) {
|
||||
QYWXGroupRobotSettingVo qywxGroupRobotSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -784,7 +829,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
buttonQyWxGroupRobotOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextQYWXGroupRobotName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_QYWX_GROUP_ROBOT);
|
||||
|
@ -837,7 +882,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//企业微信应用
|
||||
@SuppressLint({"SimpleDateFormat", "SetTextI18n"})
|
||||
private void setQYWXApp(final SenderModel senderModel) {
|
||||
private void setQYWXApp(final SenderModel senderModel, final boolean isClone) {
|
||||
QYWXAppSettingVo QYWXAppSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -895,7 +940,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
return;
|
||||
}
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextQYWXAppName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_QYWX_APP);
|
||||
|
@ -959,7 +1004,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
}
|
||||
|
||||
//Telegram机器人
|
||||
private void setTelegram(final SenderModel senderModel) {
|
||||
private void setTelegram(final SenderModel senderModel, final boolean isClone) {
|
||||
TelegramSettingVo telegramSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -1044,7 +1089,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
buttonTelegramOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextTelegramName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_TELEGRAM);
|
||||
|
@ -1122,7 +1167,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
}
|
||||
|
||||
//短信
|
||||
private void setSms(final SenderModel senderModel) {
|
||||
private void setSms(final SenderModel senderModel, final boolean isClone) {
|
||||
SmsSettingVo smsSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -1157,7 +1202,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
buttonSmsOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextSmsName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_SMS);
|
||||
|
@ -1219,7 +1264,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//飞书机器人
|
||||
@SuppressLint("SimpleDateFormat")
|
||||
private void setFeiShu(final SenderModel senderModel) {
|
||||
private void setFeiShu(final SenderModel senderModel, final boolean isClone) {
|
||||
FeiShuSettingVo feiShuSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -1252,7 +1297,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
final AlertDialog show = alertDialog71.show();
|
||||
buttonFeishuOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextFeishuName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_FEISHU);
|
||||
|
@ -1306,7 +1351,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
|
||||
//推送加
|
||||
@SuppressLint("SimpleDateFormat")
|
||||
private void setPushPlus(final SenderModel senderModel) {
|
||||
private void setPushPlus(final SenderModel senderModel, final boolean isClone) {
|
||||
PushPlusSettingVo pushPlusSettingVo = null;
|
||||
//try phrase json setting
|
||||
if (senderModel != null) {
|
||||
|
@ -1349,7 +1394,7 @@ public class SenderActivity extends AppCompatActivity {
|
|||
final AlertDialog show = alertDialog71.show();
|
||||
buttonPushPlusOk.setOnClickListener(view -> {
|
||||
|
||||
if (senderModel == null) {
|
||||
if (isClone || senderModel == null) {
|
||||
SenderModel newSenderModel = new SenderModel();
|
||||
newSenderModel.setName(editTextPushPlusName.getText().toString().trim());
|
||||
newSenderModel.setType(TYPE_PUSHPLUS);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
<string name="app_name">SmsForwarder</string>
|
||||
<string name="notification_content">Forward SMS (and others!) to another app/device, a must-have for anyone's secondary smartphone. Free and open source, do NOT buy or sell this App.</string>
|
||||
<string name="notification_content">Forward SMS (and others!) to another app/device, a must-have for anyones\' secondary smartphone. Free and open source, do NOT buy or sell this App.</string>
|
||||
<!--Common-->
|
||||
<string name="ok">OK</string>
|
||||
<string name="cancel">Cancel</string>
|
||||
|
@ -146,7 +146,7 @@
|
|||
<string name="ServerChanSendKey">ServerChan\'s SendKey</string>
|
||||
<string name="TelegramApiToken">ApiToken or Custom address</string>
|
||||
<string name="TelegramChatId">ChatId</string>
|
||||
<string name="WebNotifyMethod" formatted="false">Method</string>
|
||||
<string name="WebNotifyMethod">Method</string>
|
||||
<string name="WebNotifyWebServer">WebServer e.g. https://a.b.com/msg?token=xyz</string>
|
||||
<string name="WebNotifyWebParams">WebParams e.g. payload=%7B%22text%22%3A%22[msg]%22%7D [msg] will be replaced with text message content. \nSupport Json format, for example: {"text":[MSG]}.\n Note: MSG is automatically utF-8 encoded in addition to JSON format</string>
|
||||
<string name="WebNotifySecret">Secret (sign is not counted if left blank)</string>
|
||||
|
@ -233,7 +233,7 @@
|
|||
<string name="user_app">User App</string>
|
||||
<string name="system_app">System App</string>
|
||||
<string name="tips_battery_optimization">Please deactivate power optimization for SmsForwarder, in order to keep the App alive!</string>
|
||||
<string name="tips_notification_listener">Please grant Notification reading permission to SmsForwarder, before other Apps' notification could be forwarded. Forwarding automatically canceled!</string>
|
||||
<string name="tips_notification_listener">Please grant Notification reading permission to SmsForwarder, before other Apps\' notification could be forwarded. Forwarding automatically canceled!</string>
|
||||
<string name="notification_listener_service_enabled">The notification service is enabled</string>
|
||||
<string name="notification_listener_service_disabled">The notification service is disabled</string>
|
||||
<string name="pushplus_token">Token</string>
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
<string name="sender_setting">发送通道</string>
|
||||
<string name="app_list">应用列表</string>
|
||||
<string name="log_tips">提示:置顶下拉刷新,长按删除单条,选项卡切换日志类型</string>
|
||||
<string name="rule_tips">提示:新建规则点击“添加”,长按删除/点击编辑已有</string>
|
||||
<string name="sender_tips">提示:新建发送通道点击“添加”,长按删除/点击编辑已有</string>
|
||||
<string name="rule_tips">提示:新建规则点击“添加”,长按删除/克隆,点击编辑已有</string>
|
||||
<string name="sender_tips">提示:新建发送通道点击“添加”,长按删除/克隆,点击编辑已有</string>
|
||||
<string name="app_tips">提示:点击复制APP的包名,长按则启动并跳转该APP</string>
|
||||
<!--AboutActivity-->
|
||||
<string name="version">当前版本</string>
|
||||
|
@ -52,7 +52,7 @@
|
|||
<string name="setrule">设置短信转发规则</string>
|
||||
<string name="setrule_call">设置来电转发规则</string>
|
||||
<string name="setrule_app">设置APP通知转发规则</string>
|
||||
<string name="delete_rule_title">规则删除确认</string>
|
||||
<string name="delete_rule_title">转发规则操作确认</string>
|
||||
<string name="delete_rule_tips">确定删除该条规则?</string>
|
||||
<string name="delete_rule_toast">该条规则已经删除!</string>
|
||||
<string name="new_sender_first">请选择发送通道(若无,请先添加)</string>
|
||||
|
@ -84,7 +84,7 @@
|
|||
<string name="match_value">设置匹配的值</string>
|
||||
<!--SenderActivity-->
|
||||
<string name="invalid_sender">异常的发送通道类型,自动删除!</string>
|
||||
<string name="delete_sender_title">发送通道删除确认</string>
|
||||
<string name="delete_sender_title">发送通道操作确认</string>
|
||||
<string name="delete_sender_tips">确定删除该条发送通道?</string>
|
||||
<string name="delete_sender_toast">该条发送通道已经删除!</string>
|
||||
<string name="add_sender_title">选择发送通道类型</string>
|
||||
|
@ -146,7 +146,7 @@
|
|||
<string name="ServerChanSendKey">设置Server酱·Turbo版的SendKey</string>
|
||||
<string name="TelegramApiToken">设置Telegram机器人的ApiToken 或 自定义地址(http开头)</string>
|
||||
<string name="TelegramChatId">设置被通知人(或群组)的ChatId</string>
|
||||
<string name="WebNotifyMethod" formatted="false">请求方式</string>
|
||||
<string name="WebNotifyMethod">请求方式</string>
|
||||
<string name="WebNotifyWebServer">设置WebServer:例如:https://a.b.com/msg?token=xyz</string>
|
||||
<string name="WebNotifyWebParams">设置WebParams:例如:payload=%7B%22text%22%3A%22[msg]%22%7D [msg]将被替换成短信内容。\n支持Json格式,例如:{"text":[msg]}。\n注意:除JSON格式外,msg会自动进行UTF-8编码</string>
|
||||
<string name="WebNotifySecret">设置Secret:置空则不计算sign</string>
|
||||
|
|
Loading…
Reference in New Issue