mpp多人聊天实例

上传人:xy****7 文档编号:45535525 上传时间:2018-06-17 格式:DOCX 页数:16 大小:220.22KB
返回 下载 相关 举报
mpp多人聊天实例_第1页
第1页 / 共16页
mpp多人聊天实例_第2页
第2页 / 共16页
mpp多人聊天实例_第3页
第3页 / 共16页
mpp多人聊天实例_第4页
第4页 / 共16页
mpp多人聊天实例_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《mpp多人聊天实例》由会员分享,可在线阅读,更多相关《mpp多人聊天实例(16页珍藏版)》请在金锄头文库上搜索。

1、 一直想写东西,但是上班不能在 CSDN 上写东西。下班回家又忙着学 Iphone 开发,唉,两个个字,忒忙。今天就写写 Smack 的聊天室功能吧。先上代码:view plain1.import java.io.BufferedReader; 2.import java.io.InputStreamReader; 3.import java.util.ArrayList; 4.import java.util.Collection; 5.import java.util.Iterator; 6.import java.util.List; 7. 8.import org.jivesoftwa

2、re.smack.Chat; 9.import org.jivesoftware.smack.ConnectionConfiguration; 10. import org.jivesoftware.smack.MessageListener; 11. import org.jivesoftware.smack.PacketListener; 12. import org.jivesoftware.smack.SmackConfiguration; 13. import org.jivesoftware.smack.XMPPConnection; 14. import org.jivesoft

3、ware.smack.XMPPException; 15. import org.jivesoftware.smack.packet.Message; 16. import org.jivesoftware.smack.packet.Packet; 17. import org.jivesoftware.smack.provider.ProviderManager; 18. import org.jivesoftware.smackx.Form; 19. import org.jivesoftware.smackx.FormField; 20. import org.jivesoftware.

4、smackx.ServiceDiscoveryManager; 21. import org.jivesoftware.smackx.muc.DefaultParticipantStatusListener; 22. import org.jivesoftware.smackx.muc.DefaultUserStatusListener; 23. import org.jivesoftware.smackx.muc.DiscussionHistory; 24. import org.jivesoftware.smackx.muc.HostedRoom; 25. import org.jives

5、oftware.smackx.muc.InvitationListener; 26. import org.jivesoftware.smackx.muc.InvitationRejectionListener; 27. import org.jivesoftware.smackx.muc.MultiUserChat; 28. import org.jivesoftware.smackx.muc.RoomInfo; 29. import org.jivesoftware.smackx.muc.SubjectUpdatedListener; 30. import org.jivesoftware

6、.smackx.packet.ChatStateExtension; 31. import org.jivesoftware.smackx.packet.DiscoverInfo; 32. import org.jivesoftware.smackx.packet.DiscoverItems; 33. import org.jivesoftware.smackx.packet.OfflineMessageInfo; 34. import org.jivesoftware.smackx.packet.OfflineMessageRequest; 35. import org.jivesoftwa

7、re.smackx.provider.AdHocCommandDataProvider; 36. import org.jivesoftware.smackx.provider.BytestreamsProvider; 37. import org.jivesoftware.smackx.provider.DataFormProvider; 38. import org.jivesoftware.smackx.provider.DiscoverInfoProvider; 39. import org.jivesoftware.smackx.provider.DiscoverItemsProvi

8、der; 40. import org.jivesoftware.smackx.provider.IBBProviders; 41. import org.jivesoftware.smackx.provider.MUCAdminProvider; 42. import org.jivesoftware.smackx.provider.MUCOwnerProvider; 43. import org.jivesoftware.smackx.provider.MUCUserProvider; 44. import org.jivesoftware.smackx.provider.StreamIn

9、itiationProvider; 45. import org.jivesoftware.smackx.provider.VCardProvider; 46. import org.jivesoftware.smackx.provider.XHTMLExtensionProvider; 47. 48. public class TestSmack2 49. public static void main(String args) XMPPConnection.DEBUG_ENABLED = true; 50. final ConnectionConfiguration connectionC

10、onfig = new ConnectionConfiguration(“PC2010102716“, 5222, “); 51. connectionConfig.setSASLAuthenticationEnabled(false); 52. ProviderManager pm = ProviderManager.getInstance(); 53. configure(pm); 54. try 55. XMPPConnection connection = new XMPPConnection(connectionConfig); 56. connection.connect();/连

11、接 57. initFeatures(connection); 58. connection.login(“test“, “test“);/登陆 59. /聊天室 60. /MultiUserChat multiUserChat = new MultiUserChat(connection, new InvitationListener() ); 61. /查找服务 62. System.out.println(connection.getServiceName(); 63. List col = getConferenceServices(connection.getServiceName(

12、), connection); 64. for (Object aCol : col) 65. String service = (String) aCol; 66. /查询服务器上的聊天室 67. Collection rooms = MultiUserChat.getHostedRooms(connection, service); 68. for(HostedRoom room : rooms) 69. /查看 Room 消息 70. System.out.println(room.getName() + “ - “ +room.getJid(); 71. RoomInfo roomIn

13、fo = MultiUserChat.getRoomInfo(connection, room.getJid(); 72. if(roomInfo != null) 73. System.out.println(roomInfo.getOccupantsCount() + “ : “ + roomInfo.getSubject(); 74. 75. 76. 77. 78. /*-创建默认配置的聊天室 - 79. 先看看官方的文档: 80. Creates a new multi user chat with the specified connection and room name.Note

14、: no 81. * information is sent to or received from the server until you attempt to 82. * link #join(String) join the chat room. On some server implementations, 83. * the room will not be created until the first person joins it 84. * 最重要一句:直到用户调用 join 方法的时候聊天室才会被创建 85. */ 86. MultiUserChat muc = new MultiUserChat(connection, “instantconference.pc2010102716“); 87.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号