2017-06-02 57 views
0

我试图找回Archived Messages From OpenFire的Android 4.2啪 “XMPPError:功能没有实现 - 取消”(错误)

请注意:

  1. 我加入了归档邮件插件。
  2. 相同的代码工作正常在本地,openfire的服务器安装没有抛出错误。
  3. 我已经经历了互联网上提供的所有解决方案,但未能成功。
  4. 我可以在openfire面板中看到存档消息。
下面

是检索消息的代码:

public MamManager.MamQueryResult getArchivedMessages() { 
     //org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPPError: feature-not-implemented - cancel 
     try { 
      MamManager mamManager = MamManager.getInstanceFor(connection); 
      boolean isSupported = mamManager.isSupportedByServer(); 
      if (isSupported) { 
       MamManager.MamQueryResult mamQueryResult = mamManager.pageAfter(JidCreate.from(mUsername + SERVICE_NAME), "2r2Vf-68", 250); 
       List<Forwarded> forwardedMessages = mamQueryResult.forwardedMessages; 
       Forwarded d = forwardedMessages.get(0); 
      } 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
     return null; 
    } 

其他然后这个我也在努力实现OfflineMessageManagersmack 4.2

下面

是脱机maanger代码:

public static void handleOfflineMessages() throws Exception { 
     OfflineMessageManager offlineMessageManager = new OfflineMessageManager(getConnection()); 

     if (!offlineMessageManager.supportsFlexibleRetrieval()) { 
      return; 
     } 

     if (offlineMessageManager.getMessageCount() == 0) { 
      String d = "ss"; 
     } else { 
      List<Message> msgs = offlineMessageManager.getMessages(); 
      for (Message msg : msgs) { 
       BareJid fullJid = msg.getFrom().asBareJid(); 
       String messageBody = msg.getBody(); 
       if (messageBody != null) { 

       } 
      } 
      // offlineMessageManager.deleteMessages(); 
     } 

    } 

Note : The above method is not throwing any error my I am always getting the message count = 0. where as I am following the official Doc for this. i.e not sending presence so as to get all offline messages. but failed to do so.

this is the link for official doc : OfflineMessageManager

任何人都可以指出我做错了什么?再次

+0

关于MAM功能不执行,那么你可以说的Openfire的版本,归档插件和拍击你正在使用 监测服务? –

+0

关于离线消息,您是否确认过您的离线消息实际上是存储在服务器上的?你能检查Openfire数据库中的消息吗? –

+0

我的档案插件的版本是:'监视服务器的对话和统计数据:1.5.7: IgniteRealtime // Jive Software' –

回答

1

刷新在插件中
这一切