- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试使用 prosody 进行 session 聊天,对于客户端,我使用 strophe.js。一切都很好,除了一件事,即当用户刚加入房间时向用户显示的聊天记录不完整。例如:一位客户已经向房间发送了这样的消息:
1
2
3
4
5
6
7
8
9
10
但是当新客户加入房间时,他们只会收到这样的消息:
1
3
5
7
9
我尝试在韵律配置中设置 max_history_messages = 10
,并从客户端设置 maxstanzas = 10
。但还是一样。
这是我的配置文件
admins = { "agent@localhost" }
modules_enabled = {
"message_logging";
"roster";
"saslauth";
"tls";
"dialback";
"disco";
"private";
"vcard";
"version";
"uptime";
"time";
"ping";
"pep";
"register";
"admin_adhoc";
"admin_telnet";
"bosh";
"posix";
};
bosh_ports = { 5280 }
bosh_max_inactivity = 60
consider_bosh_secure = true
cross_domain_bosh = true
http_paths = {
bosh = "/http-bind"; -- Serve BOSH at /http-bind
files = "/"; -- Serve files from the base URL
}
allow_registration = true;
daemonize = true;
pidfile = "/var/run/prosody/prosody.pid";
ssl = {
key = "/etc/prosody/certs/localhost.key";
certificate = "/etc/prosody/certs/localhost.crt";
}
c2s_require_encryption = false
s2s_secure_auth = false
authentication = "internal_plain"
log = {
info = "/var/log/prosody/prosody.log";
error = "/var/log/prosody/prosody.err";
{ levels = { "error" }; to = "syslog"; };
}
VirtualHost "localhost"
enabled = true -- Remove this line to enable this host
ssl = {
key = "/etc/prosody/certs/localhost.key";
certificate = "/etc/prosody/certs/localhost.crt";
}
Component "conference.localhost" "muc"
restrict_room_creation = true
max_history_messages = 10
Include "conf.d/*.cfg.lua"
config里有什么需要设置的吗?
以下是我在 Strophe.js 中处理消息的方式:
function onLoginComplete(status) {
console.log(status);
if (status == Strophe.Status.CONNECTING) {
console.log('Strophe is connecting.');
} else if (status == Strophe.Status.CONNFAIL) {
console.log('Strophe failed to connect.');
} else if (status == Strophe.Status.DISCONNECTING) {
console.log('Strophe is disconnecting.');
} else if (status == Strophe.Status.DISCONNECTED) {
console.log('Strophe is disconnected.');
} else if (status == Strophe.Status.CONNECTED) {
console.log('Strophe is connected.');
connection.addHandler(onMessage, null, 'message', null, null, null);
if (!chat_room) {
// join to chatroom
}
}
/**
* on new message handler
**/
function onMessage(message) {
console.log(message);
var type = $(message).attr('type');
var body = $(message).find('body').text();
switch (type) {
case 'groupchat':
console.log(body);
// todo append message to the list
appendMessage(message);
break;
}
return true;
}
这是用户刚加入房间时的一条历史消息:
<message xmlns="jabber:client" type="groupchat" to="subkhan@localhost/edff55f2-2980-4d01-bf65-0d2c0b011845" from="test@conference.localhost/subkhan"><body>8</body><delay xmlns="urn:xmpp:delay" stamp="2017-04-12T02:54:48Z"></delay><x xmlns="jabber:x:delay" stamp="20170412T02:54:48"></x></message>
延迟有什么关系吗?
提前谢谢你。
最佳答案
事实证明,这段时间客户端已经获得了所有完整的消息历史记录,除了它转到 rawInput(data)
,而不是 onMessage()
处理程序。所以我只是删除处理程序并通过 rawInput(data)
处理传入的消息。
关于lua - Prosody muc 聊天记录不完整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43359598/
我尝试使用 prosody 进行 session 聊天,对于客户端,我使用 strophe.js。一切都很好,除了一件事,即当用户刚加入房间时向用户显示的聊天记录不完整。例如:一位客户已经向房间发送了
我正在尝试设置韵律以在 https 上使用 candy。我已尝试配置 SSL 和列出的所有步骤以使其正常工作,但出于某种原因,当我尝试 https://servername.com:5280/http
我正在使用 Aclab 的 Prosody 声卡,它记录来自某个 channel 的声音。我现在想在 channel “静音”时触发警报,例如24 小时。任何人都对如何使用 Prosody Speec
我有一个在 Voice Server 4.0 上运行 SSML 2.0 的 IVR 应用程序 我能够在使用时成功地减慢 TTS 输出 Hello 我也可以用 say-as 来表示数字,而不是整数
我想要 prosody 从我的 mysql 数据库中读取用户名和密码。Prosody 提供 module我想编辑它可以从sql数据库获取这些信息。 我的问题是:这段lua代码如何防止sql注入(inj
我试图弄清楚 XMPP 是如何工作的(通常是协议(protocol)的初学者)并且我想设置一个服务器。 到目前为止,我看到了 3 个主要挑战者: ejabberd 开火 韵律 我查看了一些网站和the
我正在为 VUI 工具编写和标记语音。我们正在使用 Google Cloud Wave-net对于我们的 TTS 服务,我一直在尝试使用 SSML 使 TTS 输出更自然。当我添加标签“prosody
我在 example.com 上设置了一个 prosody 服务器。我可以使用 pidgin 和 url http://example.com:5280/http-bind 连接到 bosh 服务,并
使用 WaveNet 语音时使用 ssml 时无法生成不同的音频波。 Can you hear me now? Can you hear me now? Can you hear me now? 使用
我已经安装并配置了 Prosody 服务器。它监听标准 localhost:5222。在配置文件中添加了 admin - user1@example.com。对服务器的每个请求都以错误结束:
我是一名优秀的程序员,十分优秀!