ActionSendSMS improvement
This commit is contained in:
parent
e12217ae69
commit
532a7e3741
|
@ -31,14 +31,14 @@ public class ActionSendSMS extends Action {
|
|||
|
||||
@Override
|
||||
public String shortDescription() {
|
||||
return MainApp.gs(R.string.sendsmsactionlabel);
|
||||
return MainApp.gs(R.string.sendsmsactionlabel, text.getValue());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void doAction(Callback callback) {
|
||||
SmsCommunicatorPlugin.getPlugin().sendNotificationToAllNumbers(text.getValue());
|
||||
boolean result = SmsCommunicatorPlugin.getPlugin().sendNotificationToAllNumbers(text.getValue());
|
||||
if (callback != null)
|
||||
callback.result(new PumpEnactResult().success(true).comment(R.string.ok)).run();
|
||||
callback.result(new PumpEnactResult().success(result).comment(result ? R.string.ok : R.string.danar_error)).run();
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -33,11 +33,12 @@ public class Notification {
|
|||
public static final int OLD_NSCLIENT = 8;
|
||||
public static final int OLD_NS = 9;
|
||||
public static final int INVALID_PHONE_NUMBER = 10;
|
||||
public static final int APPROACHING_DAILY_LIMIT = 11;
|
||||
public static final int NSCLIENT_NO_WRITE_PERMISSION = 12;
|
||||
public static final int MISSING_SMS_PERMISSION = 13;
|
||||
public static final int PUMPERROR = 14;
|
||||
public static final int WRONGSERIALNUMBER = 15;
|
||||
public static final int INVALID_MESSAGE_BODY = 11;
|
||||
public static final int APPROACHING_DAILY_LIMIT = 12;
|
||||
public static final int NSCLIENT_NO_WRITE_PERMISSION = 13;
|
||||
public static final int MISSING_SMS_PERMISSION = 14;
|
||||
public static final int PUMPERROR = 15;
|
||||
public static final int WRONGSERIALNUMBER = 16;
|
||||
|
||||
public static final int NSANNOUNCEMENT = 18;
|
||||
public static final int NSALARM = 19;
|
||||
|
|
|
@ -737,11 +737,13 @@ public class SmsCommunicatorPlugin extends PluginBase {
|
|||
sendSMS(new Sms(receivedSms.phoneNumber, R.string.wrongformat));
|
||||
}
|
||||
|
||||
public void sendNotificationToAllNumbers(String text) {
|
||||
public boolean sendNotificationToAllNumbers(String text) {
|
||||
boolean result = true;
|
||||
for (int i = 0; i < allowedNumbers.size(); i++) {
|
||||
Sms sms = new Sms(allowedNumbers.get(i), text);
|
||||
sendSMS(sms);
|
||||
result = result && sendSMS(sms);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private void sendSMSToAllNumbers(Sms sms) {
|
||||
|
@ -751,7 +753,7 @@ public class SmsCommunicatorPlugin extends PluginBase {
|
|||
}
|
||||
}
|
||||
|
||||
void sendSMS(Sms sms) {
|
||||
boolean sendSMS(Sms sms) {
|
||||
SmsManager smsManager = SmsManager.getDefault();
|
||||
sms.text = stripAccents(sms.text);
|
||||
|
||||
|
@ -768,13 +770,22 @@ public class SmsCommunicatorPlugin extends PluginBase {
|
|||
|
||||
messages.add(sms);
|
||||
} catch (IllegalArgumentException e) {
|
||||
if (e.getMessage().equals("Invalid message body")) {
|
||||
Notification notification = new Notification(Notification.INVALID_MESSAGE_BODY, MainApp.gs(R.string.smscommunicator_messagebody), Notification.NORMAL);
|
||||
RxBus.INSTANCE.send(new EventNewNotification(notification));
|
||||
return false;
|
||||
} else {
|
||||
Notification notification = new Notification(Notification.INVALID_PHONE_NUMBER, MainApp.gs(R.string.smscommunicator_invalidphonennumber), Notification.NORMAL);
|
||||
RxBus.INSTANCE.send(new EventNewNotification(notification));
|
||||
return false;
|
||||
}
|
||||
} catch (java.lang.SecurityException e) {
|
||||
Notification notification = new Notification(Notification.MISSING_SMS_PERMISSION, MainApp.gs(R.string.smscommunicator_missingsmspermission), Notification.NORMAL);
|
||||
RxBus.INSTANCE.send(new EventNewNotification(notification));
|
||||
return false;
|
||||
}
|
||||
MainApp.bus().post(new EventSmsCommunicatorUpdateGui());
|
||||
return true;
|
||||
}
|
||||
|
||||
private String generatePasscode() {
|
||||
|
|
|
@ -1574,7 +1574,7 @@
|
|||
<string name="medtronic_cmd_desc_set_bolus">Set Bolus</string>
|
||||
<string name="profilename">Change profile to</string>
|
||||
<string name="changengetoprofilename">Change profile to %1$s</string>
|
||||
<string name="sendsmsactionlabel">Send SMS</string>
|
||||
<string name="sendsmsactionlabel">Send SMS: %1$s</string>
|
||||
<string name="sendsmsactiondescription">Send SMS to all numbers in preferences</string>
|
||||
<string name="sendsmsactiontext">Send SMS with text</string>
|
||||
|
||||
|
@ -1594,5 +1594,6 @@
|
|||
|
||||
<string name="close">Close</string>
|
||||
<string name="increasingmaxbasal">Increasing max basal value because setting is lower than your max basal in profile</string>
|
||||
<string name="smscommunicator_messagebody">Invalid message body</string>
|
||||
|
||||
</resources>
|
||||
|
|
Loading…
Reference in a new issue