added emergency parameters
This commit is contained in:
parent
5d9c22496d
commit
df88cc80b7
@ -34,6 +34,9 @@ public class JPushover {
|
|||||||
private String pushoverUrl;
|
private String pushoverUrl;
|
||||||
private String pushoverUrlTitle;
|
private String pushoverUrlTitle;
|
||||||
private String pushoverTimestamp;
|
private String pushoverTimestamp;
|
||||||
|
private String pushoverRetry;
|
||||||
|
private String pushoverExpire;
|
||||||
|
private String pushoverCallback;
|
||||||
private Priority pushoverPriority;
|
private Priority pushoverPriority;
|
||||||
private Sound pushoverSound;
|
private Sound pushoverSound;
|
||||||
|
|
||||||
@ -64,6 +67,30 @@ public class JPushover {
|
|||||||
this.pushoverUser = user;
|
this.pushoverUser = user;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Specifies how often (in seconds) the Pushover servers will send the same notification to the user.
|
||||||
|
* Only required if priority is set to emergency.
|
||||||
|
*
|
||||||
|
* @param retry Number of seconds
|
||||||
|
* @return JPushover instance
|
||||||
|
*/
|
||||||
|
public JPushover retry(String retry) {
|
||||||
|
this.pushoverRetry = retry;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Specifies how many seconds your notification will continue to be retried for (every retry seconds).
|
||||||
|
* Only required if priority is set to emergency.
|
||||||
|
*
|
||||||
|
* @param expire Number of seconds
|
||||||
|
* @return JPushover instance
|
||||||
|
*/
|
||||||
|
public JPushover expire(String expire) {
|
||||||
|
this.pushoverExpire = expire;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Your message
|
* Your message
|
||||||
@ -161,6 +188,20 @@ public class JPushover {
|
|||||||
this.pushoverSound = sound;
|
this.pushoverSound = sound;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Callback parameter may be supplied with a publicly-accessible URL that the
|
||||||
|
* Pushover servers will send a request to when the user has acknowledged your
|
||||||
|
* notification.
|
||||||
|
* Only required if priority is set to emergency.
|
||||||
|
*
|
||||||
|
* @param callback
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public JPushover callback(String callback) {
|
||||||
|
this.pushoverCallback = callback;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Send the message to pushover
|
* Send the message to pushover
|
||||||
@ -170,6 +211,11 @@ public class JPushover {
|
|||||||
Preconditions.checkNotNull(this.pushoverUser, "User is required");
|
Preconditions.checkNotNull(this.pushoverUser, "User is required");
|
||||||
Preconditions.checkNotNull(this.pushoverMessage, "Message is required");
|
Preconditions.checkNotNull(this.pushoverMessage, "Message is required");
|
||||||
|
|
||||||
|
if (Priority.EMERGENCY.equals(this.pushoverPriority)) {
|
||||||
|
Preconditions.checkNotNull(this.pushoverRetry, "Retry is required on priority emergency");
|
||||||
|
Preconditions.checkNotNull(this.pushoverExpire, "Expire is required on priority emergency");
|
||||||
|
}
|
||||||
|
|
||||||
List<NameValuePair> params = Form.form()
|
List<NameValuePair> params = Form.form()
|
||||||
.add(Constants.TOKEN.get(), this.pushoverToken)
|
.add(Constants.TOKEN.get(), this.pushoverToken)
|
||||||
.add(Constants.USER.get(), this.pushoverUser)
|
.add(Constants.USER.get(), this.pushoverUser)
|
||||||
@ -177,12 +223,15 @@ public class JPushover {
|
|||||||
.add(Constants.DEVICE.get(), this.pushoverDevice)
|
.add(Constants.DEVICE.get(), this.pushoverDevice)
|
||||||
.add(Constants.TITLE.get(), this.pushoverTitle)
|
.add(Constants.TITLE.get(), this.pushoverTitle)
|
||||||
.add(Constants.URL.get(), this.pushoverUrl)
|
.add(Constants.URL.get(), this.pushoverUrl)
|
||||||
|
.add(Constants.RETRY.get(), this.pushoverRetry)
|
||||||
|
.add(Constants.EXPIRE.get(), this.pushoverExpire)
|
||||||
|
.add(Constants.CALLBACK.get(), this.pushoverCallback)
|
||||||
.add(Constants.URLTITLE.get(), this.pushoverUrlTitle)
|
.add(Constants.URLTITLE.get(), this.pushoverUrlTitle)
|
||||||
.add(Constants.PRIORITY.get(), this.pushoverPriority.get())
|
.add(Constants.PRIORITY.get(), (this.pushoverPriority == null) ? null : this.pushoverPriority.get())
|
||||||
.add(Constants.TIMESTAMP.get(), this.pushoverTimestamp)
|
.add(Constants.TIMESTAMP.get(), this.pushoverTimestamp)
|
||||||
.add(Constants.SOUND.get(), this.pushoverSound.get())
|
.add(Constants.SOUND.get(), (this.pushoverSound == null) ? null : this.pushoverSound.get())
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
HttpResponse httpResponse = null;
|
HttpResponse httpResponse = null;
|
||||||
JPushoverResponse jPushoverResponse = null;
|
JPushoverResponse jPushoverResponse = null;
|
||||||
try {
|
try {
|
||||||
|
@ -16,8 +16,11 @@ public enum Constants {
|
|||||||
PRIORITY("priority"),
|
PRIORITY("priority"),
|
||||||
TIMESTAMP("timestamp"),
|
TIMESTAMP("timestamp"),
|
||||||
URL("url"),
|
URL("url"),
|
||||||
URLTITLE("urltitle");
|
URLTITLE("urltitle"),
|
||||||
|
CALLBACK("callback"),
|
||||||
|
EXPIRE("expire"),
|
||||||
|
RETRY("retry");
|
||||||
|
|
||||||
private final String value;
|
private final String value;
|
||||||
|
|
||||||
Constants (String value) {
|
Constants (String value) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user