我尝试设置在线模式,但它无法通过名册工作。我运行此代码并检查我的localhost服务器,该模式仍然“可用”而不是“请勿打扰”。
final Connection connection = new XMPPConnection("xxx.xxx.x.xx");
connection.connect();
connection.login("hieugioi@hieund", "123456");
final Roster roster = connection.getRoster();
Presence p = roster.getPresence("hieugioi@hieund");
p.setPriority(128);
p.setMode(Mode.dnd);
答案 0 :(得分:21)
因为您没有将Presence数据包发送到服务器。组装完Presence数据包后,您需要发送它。例如:
Presence p = new Presence(available, "I am busy", 42, Mode.dnd);
connection.sendStanza(p);
另请参阅:Smack - Getting Started; section "Reading and Writing Packets"