Ejabberd 插件开发 --- IQ截获与处理】的更多相关文章

ejabberd的组件开发其实是非常简单的,只要遵循其gen_mod规范,添加iq处理函数就可以了.下面一步步教大家如何开发ejabberd组件. 首先,最好是自己编译ejabberd源码,这样的话把自己写的组件直接放到ejabberd源码目录src中进行编译即可,在我的博客http://blog.csdn.net/yangchen521/article/details/41970069中简单介绍了如何在ubuntu中安装ejabberd,主要是解决好依赖问题,使用apt-getinstall…
Ejabberd的基本介绍就不多言了,使用erlang开发的高并发高稳定性XMPP服务器,在whatsapp中得到了应用,算是erlang领域一个杀手级应用.前面的文章中我已经总结了Ejabberd插件的开发方法,并演示了如何在插件中捕获和处理IQ.然而有时候,用户可能不想搭建一个完整的XMPP服务器,而只是想单独运行一个类似服务器插件的程序,用于处理特定的报文,这种程序我们叫做外部组件.外部组件由自己独立的域名,并且和XMPP服务器连接,所有发送至该域名的报文,XMPP服务器都会直接投送过来.…
网上一搜一大陀ejabberd安装配置的,扩展开发的资料少之又少,写个笔记记录一下. xmpp protocal: http://xmpp.org/xmpp-protocols/xmpp-extensions/ 安装与配置: http://www.process-one.net/docs/ejabberd/guide_en.html 默认配置文件在 /etc/ejabberd/ejabberd.cfg 1 git clone git://github.com/processone/ejabber…
移动应用开发已经成为软件开发的一个重要方向,但是移动开发面临的一个重要问题就是跨平台的问题.PhoneGap 作为一个多平台的软件开发框架,提供了一次编写多个平台的运行.目前已经支持多达 6 个移动平台.对应平台的插件开发则可以为 PhoneGap 扩展 API 的本地接口,提供更加复杂的特性.了解 PhoneGap 框架的原理以便为 PhoneGap 提供本地的插件接口成为 PhoneGap 应用开发的重要方面.本文将以一个简单的实例介绍 PhoneGap 在 Android 上的插件开发方法…
ejabberd的工程主要通过ejabberd.app 组织起来 ejabberd.erl : application:start(ejabberd). ejabberd_app.erl: Mod:start(normal, _Args);  该函数中启动ejabberd_listener:start_listeners() ejabberd_listener.erl 通过 conf 得到<!---->ejabberd_c2s, 开始listen 如果有连接,accpet之后 <!---…
参考: http://anders.conbere.org/journal/ http://www.process-one.net/en/wiki/ejabberd_module_development/ ejabberd的内部的很多模块都是以插件的形式工作,这样我们也可以开发自己的模块融合到ejabberd中去,完成各种各样我们独特的需求. ejabberd定义了一个gen_mod behaviour,其要求下面的callback: start(Host, Opts) -> ok stop(H…
XMPP详解 XMPP(eXtensible Messaging and Presence Protocol,可扩展消息处理和现场协议)是一种在两个地点间传递小型结构化数据的协议.在此基础上,XMPP协议已经被用来构建大规模即时通信系统.游戏平台.协作空间及语音和视频会议系统. XMPP由几个小的构造块组成,并在此基础上扩展出了更多的构造块.XMPP中有众多系统:发布-订阅服务.多人聊天.表单检索与处理.服务发现.实时数据传输.隐私处理及远程过程调用等. 大多数社交媒体(Facebook及Twi…
前提: 1)     基于Moodle3.0,要求Moodle版本高于2.0 2)     PHP编程基础:语言的了解和开发工具使用 有经验的开发人员和那些只是想程序员的参考文本应参阅附录A. 1.   简述 从无到有,创建一个名为“SimpleHtml”的版块,为了保持一致性,遵循使用小写“simplehtml”.同时新建版块相应文件均在/blocks/simplehtml目录下.每当一个文件的路径在本文档中提到的,它会始终以斜线开始.这是指Moodle的主目录: 所有文件和目录将相对于该目录…
通过ejabberd的日志,整理了下客户端登录流程. 1. 通过TCP连接5222端口的流程: (1) 客户端向服务器发送stream流 <stream:stream to="nba.com" xml:lang="*" version="1.0" xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client"> (2)…
转:http://blog.csdn.net/huwenfeng_2011/article/details/43418493 Plugin接口规范 插件是openfire功能的增强表现,它的主要任务: l  在XMPP协议中作为附加功能实现 l  动态修改控制管理台 l  使用openfire api作为新功能添加到服务器 Openfire里面的插件都会存放在plugins(工程目录为:src/plugins)的住目录下.使用ant工具编译后插件会打成jar包生成在target/openfire…