草庐IT

ios - 在 ios 中从 XMPP 服务器检索存档消息

我正在将XMPP功能集成到我的iOS应用程序中,但遇到了一个我无法解决的问题。问题是我无法从服务器获取存档消息。我的客户能够登录,我已经成功测试了几个服务调用(发送、接收消息、获取用户信息)。发送时响应是SEND:RECV:服务器管理员能够看到存档的消息,因为他激活了存档。必须在服务器端或客户端完成某些操作才能实现此功能吗?难道看到旧消息和服务器实际实现和支持XEP-0136是两件不同的事情吗? 最佳答案 如果你想从服务器获取意味着使用这个代码internalvarxmppMAM:XMPPMessageArchiveManageme

android - 在本地网络中推送通知

我需要在无法访问Internet的本地网络中使用我自己的服务器为Android和iOS实现推送通知。更准确地说,我的用户将拥有一个移动应用程序(Android和iOS),它将通过无线网络连接到本地服务器。此网络没有任何Internet连接。当某些具体事件发生时,服务器将需要向连接的设备发送推送通知。我在服务器端使用Django。我进行了一些研究,看起来使用XMPP是一个很好的解决方案。因此我想我需要一个XMPP服务器来与移动设备通信。我已经看到了服务器端的几种替代方案,但我并不完全理解我到底需要什么。有一些XMPP服务器,例如Openfire和SleekXMPP.我不太确定它们是做什么

iphone XMPP App运行后台

我使用XMPP框架创建了一个聊天应用程序..当我退出应用程序(进入后台模式)时,我想接收聊天消息..并且还需要显示图标角标(Badge)...我该怎么做? 最佳答案 您确实可以在iOS4的后台运行基于XMPP框架的应用程序,方法是将其称为VoIP应用程序。(但是,Apple会拒绝将其从AppStore中删除,除非它也真正支持VoIP)。您需要在应用的(appname)-info.plist文件中设置VoIP标志,然后在(void)xmppStream:(XMPPStream*)sendersocketWillConnect:(Asy

android - xmpp android中实现心跳机制

我在聊天应用程序的Android设备中使用持久的xmpp连接。为了保持连接打开,我想使用TCPHEARTBEAT机制。我只想知道心跳步骤何时完成:1.whenapacketissentonserverandaresponsecomesfromserver(Twosteps)2.Orjustpacketsendingisdonefromclientside(1step)如何使用smack库来实现。正在使用KeepAliveManager类吗? 最佳答案 只需使用XMPPPings到服务器作为心跳。(a)Smack会自动执行此操作。您可

tcp - 为什么 XMPP 消息有时会在移动设备上丢失

Thisquestion询问当移动设备没有稳定连接时如何处理丢失XMPP消息,但我真的不明白为什么包首先会丢失。我记得曾经读过,当连接突然丢失时,服务器和客户端之间的流保持打开状态,只有在连接超时时才会被销毁。这意味着服务器通过流发送到达的消息,即使断开连接的客户端无法再接收这些消息。有一段时间我对这个解释很满意,但开始怀疑为什么核心XMPP会缺少如此重要的功能。最后我注意到,确保XMPP协议(protocol)中的正确传输是多余的,因为底层TCP应该已经确保消息的正确传输,但是由于丢失消息引起的各种问题,这似乎不是真的。为什么TCP不足以确保消息正确发送或失败,以便服务器知道它必须稍

android - Ejabberd:如果在客户端的 resume_timeout 之前发送,Xmpp 消息将被丢弃

我最近在我的ArchLinux机器上从github编译了最新的ejabberd代码。我是ejabberd的新手,所以我可能犯了一个新手错误。我遇到了一个问题,即在特定情况下数据包无法到达目标客户端。如果消息是在之后客户端断开连接但之前客户端session因resume_timeout而关闭时发送的,则会发生这种情况。我已按照此处提到的说明进行操作https://www.ejabberd.im/faq/tcp,但我仍然无法处理所有情况。我的ejabberd.yml的相关部分看起来像listen:-port:5222module:ejabberd_c2smax_stanza_size:65

iPhone/Android 实时通信、XMPP、原始 TCP?

我的应用有2个版本:1个在iPhone上,1个在Android上。我希望我的2个应用程序能够实时通信。用例是:用户A看到一个好友列表,选择一个用户B然后点击“分享一个项目”用户B收到一条通知,说用户A想与他分享一个项目用户B接受,交易发生,并且两个用户都被通知交易顺利。我考虑过使用一个简单的HTTP事务,但那样会轮询用户,因此用户体验不佳。我认为XMPP非常适合,但我不太确定该解决方案的灵active如何(如果我想将我的用户信息也保存在单独的服务器上等等)。我还考虑使用原始TCP套接字(服务器上的Node.js相当容易操作)。目前最好的解决方案是什么? 最佳

java - 无法连接到 Openfire 服务器(使用 smack api)

我正在尝试使用smack4.1.0运行此代码ThreadD=newThread(newRunnable(){@Overridepublicvoidrun(){SmackConfiguration.setDefaultPacketReplyTimeout(10000);XMPPTCPConnectionConfigurationconfig=XMPPTCPConnectionConfiguration.builder().setUsernameAndPassword("harsh","pass").setServiceName("192.168.0.200").setHost("192.

用于 Twisted 的 Python Jabber/XMPP 客户端库

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我正在寻找使用Twisted框架编写Jabber/XMPP客户端的Python库。

python - Celery 工作人员之间共享 XMPP 连接

我的网络应用程序需要能够发送XMPP消息(Facebook聊天),我认为Celery可能是一个很好的解决方案。一项任务将包括查询数据库并将XMPP消息发送给多个用户。但是,使用这种方法,我每次运行任务时都必须连接到XMPP服务器,这不是一个好主意。来自FacebookChatAPIdocs:BestPracticesYourFacebookChatintegrationshouldonlybeusedforsessionsthatareexpectedtobelong-lived.Clientsshouldnotrapidlychurnonandoff.有没有一种方法可以在工作人员之间