zoukankan      html  css  js  c++  java
  • 判断openfire用户的状态

    /**
    * 判断openfire用户的状态
    * 说明 :必须要 openfire加载 presence 插件,同时设置任何人都可以访问
    * /status?jid=user1@my.openfire.com&type=xml 返回值 : 0 - 用户不存在; 1 - 用户在线; 2 -用户离线
    * 示例:http://192.168.1.254:9090/plugins/presence/status?jid=13817764475@192.168.1.254&type=xml

    * @后面的参数是服务器名称,我测试时服务器名称写为了192.168.1.254

    */
    public static short IsUserOnLine(String strUrl) {
    strUrl = "http://192.168.1.254:9090/plugins/presence/status?jid=13817764475@192.168.1.254&type=xml";
    short shOnLineState = 0; // -不存在-
    try {
    URL oUrl = new URL(strUrl);
    URLConnection oConn = oUrl.openConnection();
    if (oConn != null) {
    BufferedReader oIn = new BufferedReader(new InputStreamReader(oConn.getInputStream()));
    if (null != oIn) {
    String strFlag = oIn.readLine();
    oIn.close();

    if (strFlag.indexOf("type="unavailable"") >= 0) {
    shOnLineState = 2;
    }
    if (strFlag.indexOf("type="error"") >= 0) {
    shOnLineState = 0;
    } else if (strFlag.indexOf("priority") >= 0 || strFlag.indexOf("id="") >= 0) {
    shOnLineState = 1;
    }
    }
    }
    } catch (Exception e) {

    }
    return shOnLineState;
    }

    // 离线時,向offline表写数据
    OfflineMessageStore offlineMessageStore = new OfflineMessageStore();
    offlineMessageStore.addMessage(message);

  • 相关阅读:
    chrome:禁用缓存
    datatables:如何禁用一列的排序
    springboot:集成fastjson(教训)
    eclipse:显示堆内存
    模板, 保存&发布
    动画
    配色
    图示 Smart-Art
    常用快捷键 & BLOG & Website
    图表
  • 原文地址:https://www.cnblogs.com/shihaiming/p/5923022.html
Copyright © 2011-2022 走看看