教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 法律文档 >

xmpp-多人聊天实例(2)

来源:网络收集 时间:2026-04-03
导读: 188. 189. //改变聊天室主题 190. muc.addSubjectUpdatedListener(new SubjectUpdatedListener() { 191. @Override 192. public void subjectUpdated(String subject, String from) { 193. System.out.println(\ +

188.

189. //改变聊天室主题

190. muc.addSubjectUpdatedListener(new SubjectUpdatedListener() { 191. @Override

192. public void subjectUpdated(String subject, String from) {

193. System.out.println(\ + subject +\ + from)

;

194. } 195. });

196. //muc.changeSubject(\ 197.

198. /*一个成员可能有四种角色:

199. 1:主持者(Moderator) (权限最大的角色,管理其他成员在聊天室中的角色 200. 2:参与者(Participant

201. 3:游客 (Visitor) (不能向所有成员发送消息) 202. 4:无(没有角色)(NONE) 203. */ 204.

205. /*聊天室用户可以有5种从属关系 206. * 1、所有者 Owner 207. * 2、管理员 Admin 208. * 3、成员 Member 209. * 4、被驱逐者 Outcast 210. * 5、无(不存在从属关系) None 211. */ 212.

213. //配置聊天室为Moderated聊天室 214. form = muc.getConfigurationForm();

215. Form answerForm = form.createAnswerForm();

216. answerForm.setAnswer(\, \); 217. muc.sendConfigurationForm(answerForm); 218.

219. //监听自己的状态变更和事件

220. muc.addUserStatusListener(new DefaultUserStatusListener() { 221. @Override

222. public void voiceRevoked() { 223. super.voiceRevoked();

224. System.out.println(\你被禁言了!\); 225. } 226.

227. @Override

228. public void voiceGranted() { 229. super.voiceGranted();

230. System.out.println(\你被批准发言了!\);

231. } 232.

233. @Override

234. public void membershipGranted() { 235. super.membershipGranted();

236. System.out.println(\你被赋予了Member权限\); 237. } 238.

239. @Override

240. public void membershipRevoked() { 241. super.membershipRevoked();

242. System.out.println(\你被解除了Member权限\); 243. } 244.

245. @Override

246. public void adminGranted() { 247. super.adminGranted();

248. System.out.println(\你被赋予了管理员权限\); 249. } 250.

251. @Override

252. public void adminRevoked() { 253. super.adminRevoked();

254. System.out.println(\你被解除了管理员权限\); 255. } 256. //...... 257. });

258. //房主(Owner)批准test3发言权

259. muc.grantVoice(\); 260.

261. //监听他人状态变更

262. muc.addParticipantStatusListener(new DefaultParticipantStatusListener() {

263.

264. @Override

265. public void voiceGranted(String participant) { 266. super.voiceGranted(participant);

267. System.out.println(participant + \被批准发言了!\); 268. } 269.

270. @Override

271. public void voiceRevoked(String participant) { 272. super.voiceRevoked(participant);

273. System.out.println(participant + \被禁言了!\);

274. } 275.

276. @Override

277. public void membershipRevoked(String participant) { 278. super.membershipRevoked(participant); 279. } 280.

281. @Override

282. public void adminGranted(String participant) { 283. super.adminGranted(participant); 284. } 285.

286. @Override

287. public void adminRevoked(String participant) { 288. super.adminRevoked(participant); 289. } 290.

291. }); 292.

293. //房主(Owner)批准test3管理员特权 294. muc.grantAdmin(\); 295. 296.

297. //发送消息

298. BufferedReader cmdIn = new BufferedReader(new InputStreamReader(System.in)

);

299. while(true) { 300. try {

301. String cmd = cmdIn.readLine(); 302. if(\.equalsIgnoreCase(cmd)) { 303. break; 304. }

305. }catch(Exception ex) { 306. } 307. }

308. connection.disconnect(); 309. System.exit(0); 310. } catch (Exception e) { 311. e.printStackTrace(); 312. } 313. } 314.

315. public static List getConferenceServices(String server, XMPPConnection co

nnection) throws Exception {

316. List answer = new ArrayList…… 此处隐藏:3543字,全部文档内容请下载后查看。喜欢就下载吧 ……

xmpp-多人聊天实例(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/434721.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)