- 浏览: 109989 次
最新评论
-
ribavnu:
楼主,你的clientinfo.hrl文件是什么啊?转载的别人 ...
Erlang 聊天室程序( 一) -
wenwushuangquandexia:
晕倒,谁用我号给你评论了。。。。
系统中字典表该怎么用 -
Jason_Bourne:
楼主,请问多个客户端向一个主题发送消息,服务端如何通过这个主题 ...
手机上的消息推送 -
yjl49:
wenwushuangquandexia 写道 大哥,你在讲故 ...
系统中字典表该怎么用 -
wenwushuangquandexia:
大哥,你在讲故事吗
系统中字典表该怎么用
文章列表
ejabberd的启动从ejabberd:start() 开始。
application:start(ejabberd).
application用来表示一个可以单独启动和停止、并被复用的程序单元。通常一个application都有一个同名的app文件来定义。
对于系统工具(systool)直接调用的app文件必须包含以下几项:
description
, vsn
,
modules
, registered
, applications
我们查看ejabberd.app可以看到以下内容:
{application, ejabberd,
...
自己整了个java项目,里面实现了一些数据库访问、配置文件读取、日志记录的功能,在eclipse上调试运行都OK,但需要发布到服务器上就没辙了。
项目的目录如下:
查了下资料终于搞定,过程如下:
1.将项目调试通过,保证项目本身没有error。
2.在项目上右击export --->选java下的JAR file 点next。
3.全选整个项目,并在复选框中选"export all output folders for check projects" ,export destination中填要生成的jar名,点next。
4.pakeging o ...
%%server1.erl:
-module(server1)
-export([start/2,rpc/2])
start(Name,Mod)->
register(Name,spawn(fun()->loop(Name,Mod,Mod:init())end)).
rpc(Name,Request)->
Name!{self(),Request},
receive
{Name,Response}->Response
end.
loop(Name,Mod,State)->
receive
{From,Re ...
- 2011-09-05 22:53
- 浏览 607
- 评论(0)
1.客户端连接服务器,并发送消息给服务器的处理在ejabberd_c2s中。
ejabberd_c2s 是一个gen_fsm 状态机,在 ejabberd启动时装载。
初始状态为 wait_for_stream,接受形为 {xmlstreamstart, _Name, Attrs} 的消息,其他任何消息都会导致stop。
接受到连接请求,发送feature 请求后状态改为wait_for_feature_request 。
接受到feature 再发送challenge 后,状态改为 wait_for_sasl_response。
经过sasl鉴权后,状态改为 wait_fo ...
Openfire中有一个CacheFactory 工厂类,负责创建各种类型的Cache。
从控制台的Server -> System Propertys 里面可以设置各个Cache的大小,格式为 cache.XXXX.size 1024byte
具体对应的XXXX 为CacheFactory 下 cacheNames.put(Type,Name) 中Name对应的值。
- 2011-08-27 14:52
- 浏览 723
- 评论(0)
Connection 对于openfire的消息是透传的,只是在原有的消息外面包上一层<route/>
假如openfire 所在ip 为192.168.1.11 服务器上设置的域为 myserver
ConnectionManager 所在ip为192.168.1.12 则ConnectionManager 的配置中
<jive>
<xmpp>
<domain> </domain> 里面填写IP地址会出现问题
填写IP则最终发送到openfire的消息里的to的值为ip,而不是域。所以出现server. ...
- 2011-08-25 20:52
- 浏览 1001
- 评论(0)
如图Openfire一般启动之后如果有收到客户端发送的数据则会在控制台打印出来。
根据这些信息我们可以很清晰地了解到服务器的数据交互情况,再结合内部的代码和注释,整个Openfire就比较容易搞懂了。
这些信息是由一个叫xmldebugger的插件提供的。
RawPrintFilter这个类负责处理指定内容的信息,可通过在数据库表ofproperty中添加plugin.xmldebugger.c2s 的属性设置,来控制打印信息的开关。
默认情况下为开启。
第二种方法就是直接通过管理控制台来操作:
服务器-->服务器设置-->Debugger Properti ...
客户端A向B 发送文件的过程:
两个XMPP节点之间传输文件一般有三种方式:
Out-of-Band Data 具体见XEP-0066:点击打开链接
in-band bytestream 适合传输较小的数据,通过直接携带在XML中进行传输 具体见:XEP-0047:点击打开链接
socks5 通过服务器代理的方式,实现两个节点之间的直接传输
以下为通过socks5 方式传输文件的过程:
1.A向B发送请求查询B是否支持字节流。
2.B返回应答
3.A向服务器发送请求,查询可用的代理
4.服务器应答,返回目 ...
Openfire 离线消息的处理机制
- 博客分类:
- openfire
OfflineMessagetrategy:
离线消息的处理策略类。
1.静态成员变量type 用来设置消息的处理类型,主要包括:
打回
丢弃
存储,在超限情况下打回
存储,在超限情况下丢弃
2.静态成员变量quota 标识最大所能存储的message总和大小默认为100k。
3.支持OfflineMessageListener事件监听器,只要实现此接口并加入到监听器列表,则在消息被打回或存储时可扑捉到相应消息。
4.所有离线消息都存储在表ofoffline中。
OfflineMessageStore:
用来具体处理离线消息的类。
1.用addMessa ...
下载了OpenFire 的源码导入后SSLSocketFactory 可能出现编译出错的情况。
解决方法:将JVM由JRE改为JDK下的JRE。
- 2011-07-03 11:45
- 浏览 705
- 评论(0)
要在sql server 中批量插入10W条相同的数据。。。。最简单的方法就是找一表已有10W条数据的表然后select 一把。
insert into tableA
select 'a','b','c'
from tableB;
不用union。
- 2010-11-22 18:14
- 浏览 765
- 评论(0)
先引入命名空间:
using System.Collections;
using System.Management;
using System.Net;
using System.Net.Sockets;
再编写代码如下:
public void scanPort()
{
string availPorts = "";
string usedPorts = "";
ManagementClass manage = new ManagementC ...
- 2010-03-30 18:32
- 浏览 1058
- 评论(0)
delete from tbl_talbe
where (col1,col2,col3) in
(select col1,col2,col3
from tbl_table
group by col1,col2,col3
having count(*)>1)
and rowid not in
(
select max(rowid)
from tbl_table
group by col1,col2,col3
having count(*) >1
)
今天在asp.net下实现一个发短信的功能时需要调用现有的一个URL,并从本地取参数添加到URL上,然后请求此URL。
但参数中含有汉字:
public bool SendMMSByHttp(string url)
{
try
{
HttpWebRequest req = (HttpWebRequest) HttpWebRequest.Create(UrlEncode(url));
HttpWebResponse res = (HttpWebResponse)re ...
- 2010-01-27 18:51
- 浏览 868
- 评论(0)
提交时错误信息如下:
SVN Error: ***is out of date; try updating........
原因是当前所使用的文件已经不是最新版本,别人有可能已经做了修改,直接提交会产生冲突。
所以可以先更新到最新版本,再修改提交。
- 2009-12-29 09:42
- 浏览 654
- 评论(0)