aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java
diff options
context:
space:
mode:
authorDaniel Gultsch <daniel@gultsch.de>2015-10-08 00:35:04 +0200
committerDaniel Gultsch <daniel@gultsch.de>2015-10-08 00:35:04 +0200
commit52a5e72b02e748780dc14b2a5f595df41f8c3f92 (patch)
tree4c9f6f11a738bdd60a4c2380377ed3341a0ca3b6 /src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java
parent043e19dd65b127d0672e5be70086696521e301d2 (diff)
introduced expert options to set status to away and xa if screen is off or if phone is silenced
Diffstat (limited to 'src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java')
-rw-r--r--src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java b/src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java
index c40c6d05..3e9555ca 100644
--- a/src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java
+++ b/src/main/java/eu/siacs/conversations/generator/PresenceGenerator.java
@@ -2,6 +2,7 @@ package eu.siacs.conversations.generator;
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Contact;
+import eu.siacs.conversations.entities.Presences;
import eu.siacs.conversations.services.XmppConnectionService;
import eu.siacs.conversations.xml.Element;
import eu.siacs.conversations.xmpp.stanzas.PresencePacket;
@@ -36,8 +37,22 @@ public class PresenceGenerator extends AbstractGenerator {
return subscription("subscribed", contact);
}
- public PresencePacket sendPresence(Account account) {
+ public PresencePacket selfPresence(Account account, int presence) {
PresencePacket packet = new PresencePacket();
+ switch(presence) {
+ case Presences.AWAY:
+ packet.addChild("show").setContent("away");
+ break;
+ case Presences.XA:
+ packet.addChild("show").setContent("xa");
+ break;
+ case Presences.CHAT:
+ packet.addChild("show").setContent("chat");
+ break;
+ case Presences.DND:
+ packet.addChild("show").setContent("dnd");
+ break;
+ }
packet.setFrom(account.getJid());
String sig = account.getPgpSignature();
if (sig != null) {