RTX 常见问题解答

腾讯科技(深圳)有限公司,2011年8月

目录

  1. 文档说明
  2. RTX 服务器防火墙配置
  3. RTX 公网部署
  4. 远程登录(总机号码登录)
  5. SQL 数据库配置
  6. 组织架构问题处理
  7. 发送文件问题处理
  8. 后语

一、文档说明

RTX 是腾讯公司推出的企业级即时通信平台。该平台定位于降低企业通信费用,增强企业内部沟通能力,改善企业与客户之间的沟通渠道,创造新兴的企业沟通文化,提高企业生产力。RTX 平台的主要功能,包括企业内部实时信息交互、视频语音、企业短信中心等等。RTX 平台具有很高的实用性、易用性、可管理性和安全性。除了底层采用 128 位对称加密技术之外,在实际应用中,RTX 可以通过员工实名制、记录对外交互信息等措施,确保企业应用的通信安全。RTX 可以利用 SDK 和 API 接口扩展第三方应用,如可以开发第三方短信网关、IM 监控功能、用户数据同步等功能,为企业、ISV 合作伙伴提供参考的整体解决方案。

本文档将介绍公网环境下如何部署 RTX2011 Formal、SQL 数据库配置、组织架构问题处理,针对各种具体情况提供了相应的解决方案,供 RTX 实施人员或企业系统管理人员参考阅读。

二、RTX 服务器防火墙配置

a) RTX 服务与端口

RTX 服务端程序在安装之后,如果服务器操作系统自带了防火墙(如 Windows XP、Windows2003 等)或者用户自己安装了防火墙(如瑞星、Norton 等),再或者访问服务器需要经过硬件防火墙,需要在防火墙放开 RTX 相关端口,其他电脑上的 RTX 客户端才能连接上 RTX 服务端,正常使用相关功能。

RTX 的正常使用,需要服务器打开下列端口:

服务 端口 用途
ConnServer TCP & UDP 8000 用于客户端与服务器端相连,RTX2011 默认采用 UDP
FileServer TCP 8003 用于客户端发送文件
Upgradesvr TCP 8009 用于客户端升级
SessionServer TCP 8880 语音、视频、大于 1M 文件传输
InfoServer TCP 8010 用于客户端取组织架构

如果需要配置 RCA2.0,RTX 服务器还需要打开以下端口:

服务 端口
RCAProxyFileSVR TCP 8013

如果需要配置 RCA2.0,RTX 中心服务器需要打开以下端口:

服务 端口
CenterServer TCP 8025
RCAFileServer TCP 8023

如果进行 RTX 的二次开发,需要根据访问情况打开以下端口:

用途 端口
访问 SDKServer TCP 6000(调用 SDKAPI.dll 的接口需要打开这个端口)
访问 AppServer TCP 8006(调用 ObjectApi.dll 的接口需要打开这个端口)
访问 HttpServer TCP 8012(需要通过 URL 访问调用需要打开这个端口)

b) 服务器防火墙设置(以 Windows XP SP2 为例)

  1. 点击 设置 → 网络连接,如下图所示:

    网络连接

  2. 右击 本地连接 → 属性,如下图所示:

    本地连接属性

  3. 选择 高级 → 设置,如下图所示:

    高级设置

  4. 点击 启用(推荐)→ 例外,如下图所示:

    例外设置

  5. 点击"添加端口"→ 输入服务名称与端口号。点击确定可以把该端口添加进例外,如下图所示:

    添加端口

  6. 按同样的方法,把 8003、8009、8010、8880 这几个端口添加进例外。完成之后如下图所示:

    端口列表

  7. 如果需要配置 RCA 或二次开发,按以上的方法,把相应服务和端口添加进例外即可。

三、RTX 公网部署

a) RTXServer 安装在托管的服务器上

如果 RTXServer 安装的服务器放在电信的托管机房,服务器拥有公网的固定 IP 地址,那么用户就可以通过公网固定 IP 登录 RTX。如图 1.1 所示。

远程 RTX 客户端登录公网服务器

图 1.1:远程 RTX 客户端登录公网服务器

b) RTXServer 安装在局域网内的客户机上

方法 I:外网用户可以通过总机号码登录 RTX 服务器,但前提必须确保 RTX 服务器的 Outsupport 已经连接上 WanServer,详细远程登录(总机号码登陆)请见下一节。如图 1.2 所示。

远程 RTX 客户端登录局域网服务器

图 1.2:远程 RTX 客户端登录局域网服务器

方法 II:可以在路由器上做端口映射的方式实现登录,把刚才所介绍的端口映射到 RTX 服务器,外网用户即可通过路由器的 IP 地址登录 RTX,但必须先在 RTX 服务器上设置公网 IP。如图 1.3 所示。

路由器映射端口登录

图 1.3:路由器映射端口登录

方法 III:局域网外的用户也可以通过 VPN(Virtual Private Network)虚拟个人网络,从外网连接到局域网内,然后再登录网内的 RTX 服务器。VPN 业务可以向电信局或者其他网路服务商申请,性价比较 DDN 专线高。

c) RTXServer 安装在代理服务器上

这种情况跟 RTXServer 安装在局域网内部相同,通常代理服务器上有双网卡,一个外网 IP、一个内网 IP,公网用户通过公网 IP 登录、内网通过局域网 IP 登录,但必须先在 RTX 服务器上设置公网 IP。

代理服务器部署

d) 设置公网 IP

打开 RTX 管理器,点击左边列表中的"配置向导" → "服务运行状态",如下图所示:

配置向导1

配置向导2

配置向导3

配置向导4

点击"高级配置",在"高级配置"界面上添加公网 IP 地址或域名,填写完毕后点击"确定",并重启所有服务。

高级配置1

高级配置2

高级配置3

RTX2011 可以添加多个 IP;如您的服务器有电信和网通两个网卡,您可以在上图把电信和网通地址都增加进去。

四、远程登录(总机号码登录)

远程登录(总机号码登陆)是指 RTX 用户在外网也可以正常使用 RTX 提供的功能。在出差的情况下,用户与部署在企业内部的 RTX 服务器不在同一个局域网内,为了让用户能与其他同事通过 RTX 正常沟通,提供的解决方案。

a) 远程登录的原理

局域网内部服务器启动 OutSupport 服务后将连接到腾讯公司 WanServer 服务器,外网客户端登录时连接到 WanServer,WanServer 担负着为外网用户和企业内 LAN 服务建立传输通道的职责。整体架构模型如图 1.4 所示:

出差支持模型

图 1.4:出差支持模型

说明:

  1. SessionServer 为外网中转服务器,可以有多个,启动后要向 WanServer 登记;
  2. OutSupport 为企业部署的网关,充当 proxy 以及安全认证的角色,每个企业部署一个;
  3. Wan Server 负责对企业网关的注册和寻址和为出差用户指定 SessionServer 以及统计数据;
  4. 出差用户首先从 WanServer 上获得 SessionServer 的地址,由 SessionServer 作为中介与 OutSupport 交互,OutSupport 再帮助出差用户与 Lan Server 间进行连接;
  5. 安全连接建立后,出差用户与 LAN 内用户进行无缝操作。

b) 远程登录优点

  1. 不需要企业开放端口,安全性高。
  2. 部署在企业内部的 OutSupport 有本地权限验证机制,同时 OutSupport 与部署在公网的腾讯运营服务器之间有严密的认证机制,促进了 RTX 服务器的安全。
  3. 用户操作简单,客户端远程登录只需要在登录前选中远程登录就可以了(第一次登录 RTX 的机器需要填写总机号)。
  4. 使用远程登录的用户,与内网用户之间可以进行无缝的交互。

c) 远程登录功能的限制

由于带宽的限制,在目前的版本中,暂时限制了照片、音频和视频等功能。

d) 如何启动 OutSupport 服务

如果已经导入 License 并正确输入总机号码密码,远程登录服务将随 RTX 服务器一同启动。

e) 客户端如何使用远程登录

  1. 输入用户名、密码 → 点击"远程登录模式" → 点击:

    远程登录按钮

    如图 1.5 所示。

    选择远程登录模式

    图 1.5:选择远程登录模式

  2. 输入"企业总机号码"后点击确定。用远程登陆模式时,服务器地址不用填写。如图 1.6 所示。

    输入企业总机号码1

    输入企业总机号码2

    图 1.6:输入企业总机号码

  3. 点击登录,将提示"正在以远程登录模式登录",登录成功后在 RTX 面板右下方将显示:

    远程登录图标

    如图 1.7 所示。

    远程登录成功1

    远程登录成功2

    图 1.7:远程登录成功

  4. 如果您在局域网内使用"远程登录"时,将弹出善意提示窗口,提醒您是在局域内部,是否使用远程登录。如图 1.8 所示。

    远程登录提示

    图 1.8:远程登录提示

五、SQL 数据库配置

RTX 数据库默认为 Access,支持将 RTX 数据库切换为 SQLServer,必须注意,RTX 数据库的数据只允许通过 RTXServer SDK 接口来更新,不能直接操作数据库,直接操作数据将导致内部的版本不一致,客户端将无法获取服务器更新后的数据。

下面介绍如何把 RTX 数据库切换到 SQLServer 数据库。

a) 备份用户数据

如果原来 RTX 服务器有用户数据,先通过 RTX 管理器导出用户数据;如果没有用户数据则不需要备份,导出数据如下图所示:

导出数据

b) 切换数据库

先把 RTX 服务停止,如下图所示。

停止服务

打开 RTX 服务器安装目录下的 RTXServer\bin\ChangeDB.exe 文件,配置 master 数据库连接字符串,连接字符串格式 Driver={SQL Server};Server=127.0.0.1,1433;Uid=sa;pwd=;Database=master。填写完成后点击"测试",如果连接成功就可以切换到 MSSQL,如下图所示。

切换数据库

点击"一切换为其他数据库",提示"设置成功!"表示已经切换成功。

设置成功

c) 导入数据

打开 RTX 管理器,此时管理员的密码为空,您可以在"登录" → "修改密码",重新设置管理员密码,如下图所示:

修改密码

把刚才备份的用户数据导进来,如下图所示:

导入数据

到此,已经成功的将 RTX 数据库转换为 SQL Server,启动 RTX 服务。

d) 其他说明

ChangeDB 只支持一键切换到 SQLServer 数据库,ChangeDB 做了三件事情,分别是:

  1. 连接到 SQLServer 创建数据库,创建数据库 sql 脚本在 RTXServer\install 可以找到。

    SQL脚本

  2. 修改配置文件中的数据库连接字符串,在 RTXServer\config\rtxserver.xml 可以找到。

    连接字符串

  3. 运行初始化内置权限 bat 文件,在 RTXServer\bin\Convert.bat 可以找到。

    Convert.bat

六、组织架构问题处理

a) 组织架构机制

  1. 客户端首次登录服务器只拉取组织架构(只有部门列表,不包含人员),这些信息写在 Group.xml 下。
  2. 客户端根据版本号向服务器拉取人员列表文件,这些信息写在 UserList2.xml
  3. 客户端每 1 秒向服务器拉取 1 个用户的简单资料(如:手机、Email),这些信息写在 RTXProfile.xml

b) 组织架构问题表现

  1. 所有用户登录都看不到组织架构,包括服务器本机。
  2. RTX 服务器本机登录可以看到组织架构,但其他的机器看不到。
  3. 局域网内部机器可以看到组织架构,但外网用户看不到。
  4. 新增用户看不到组织架构,旧用户可以正常(旧用户在新用户的机器登录可以看到组织架构)。

c) 组织架构问题处理

1、所有用户登录都看不到组织架构,包括在服务器本机登录 RTX 客户端

分析原因:

  • i. Infoserver 服务或 apporgstruct 应用停止或异常。
  • ii. RTXServer\Config 文件夹里的配置文件 IP 地址不正确,服务器 IP 已改变。
  • iii. RTX 服务器有多个 IP 地址,RTXServer\AppLogs\OrgStruct.Log 提示上传组织架构错误。

解决方法:

  • i. 端口可能被占用。查看服务器安装目录下 Logs\InfoServer.log 日志是否异常,端口有没有被其他程序占用,如果端口被其他程序占用,可以修改 RTX 服务器安装目录下 rtxserver.xml(2008 正式版以前版本放在服务器安装目录下,2008 正式版以后版本放在 Config 下)文件 Infoserver 的端口(如下图所示),然后在"服务管理器"重启 Infoserver 服务、在"应用管理器"重启 apporgstruct 应用。
  • ii. 服务器的 IP 地址变更。查看服务器本机的网卡 IP 地址是否与服务器安装目录下 Config 文件夹里的 xml 文件 IP 地址一致,如果不同,先在计算机管理 → 服务和应用程序 → 服务,把 RTX_ConfigCenterRTX_SvrMain 停止,然后把 RTXServer\Config 文件夹三个 xml 文件旧 IP 地址替换为服务器当前新的 IP 地址(文件中默认 127.0.0.1 的 IP 地址不要改),最后先启动 RTX_ConfigCenter,再启动 RTX_SvrMain 服务。
  • iii. 用记事本打开 RTXServer\InfosvrConnCfg.Xml,在"IPLimit"节点下添加服务器的多个 IP 地址,保存后重新启动所有服务。

IPLimit1

IPLimit2

2、RTX 服务器本机登录可以看到组织架构,但其他的机器看不到

分析原因: 服务器安装了防火墙,限制了客户端访问 8010 的端口。

解决方法: 在防火墙打开 8010 端口。

3、局域网内部机器可以看到组织架构,但外网用户看不到

分析原因:

  • i. 路由器没有映射 8010 端口。
  • ii. RTX 服务器没有配置外网登录 IP。

解决方法:

  • i. 在路由器映射 8010 的端口。
  • ii. 参照上文的设置公网 IP。

4、新增用户看不到组织架构,旧用户可以正常

分析原因: 这种情况比较少,可以尝试将旧用户 ....\RTXC\Accounts 目录下旧用户帐号为名文件夹重命名(改为 123 即可),重新登录旧用户,如果也看不到,说明全部用户都看不到,请按上面介绍的方法处理;如果能看到,重启 RTX 服务即可恢复正常,或者升级到 RTX2011 版本可以解决。

解决方法: 重启 RTX 服务即可恢复正常,或者升级到 RTX2011 版本。

5、RTX 服务端配置了多套组织架构,服务端重装或升级导入原来用户数据后,出现非默认组织架构的用户无法刷新组织架构问题

非默认组织架构用户不能刷新组织架构

分析原因: 设置了多套组织架构,非默认的组织架构文件保存在 WebRoot\OrgstructFiles 目录和 Files\Infoserver\OrgstructFiles 下,只拷贝 rtxdb.Mdb 文件会导致非默认组织架构的用户登陆后找不到部门列表。

解决方法:

rtxdb.mdb 有两张表包含自定义组织架构的信息,把这两张表的信息全部删除,然后新建多套组织架构。

  1. 打开 RTX 管理器 → 配置向导 → 服务运行状态,停止所有服务;用 Access 打开服务器安装目录 \db\rtxdb.mdb 文件,找到 APP_ORG_FileAPP_ORG_UserFile 数据表:

    数据表1

    数据表2

  2. 双击打开 APP_ORG_File 表,将非默认组织架构信息数据删除,保存文件:

    删除数据

  3. 双击打开 APP_ORG_UserFile 表,将全部数据删除,保存文件:

    删除全部数据

  4. 启动 RTX 所有服务,重新配置多套组织架构。

6、RTX 服务端配置了多套组织架构,在管理器添加/删除部门、用户后,出现非默认组织架构的 RTX 帐号不能更新到最新的组织架构

非默认组织架构用户不能刷新组织架构

分析原因: RTX 服务端设置了多套组织架构时,在管理器添加/删除部门、用户后,只会同步到默认组织架构,不会同步到其它自定义组织架构,所以非默认组织架构的 RTX 帐号不能更新到服务端最新的组织架构信息。

解决方法: 在配置组织架构面板将自定义的组织架构删除,重新添加配置自定义组织架构。

7、以上是常见的原因,如果尚无法解决,请确认是否存在以下的问题

  1. 客户端的版本与服务器不一致 —— 解决方法:安装与服务器相同的客户端版本。
  2. 用户直接操作数据库添加用户数据 —— 解决方法:通过服务管理器或 SDK 添加用户数据。

七、发送文件问题处理

a) 发送文件机制

  1. 客户端发送小于 1M 文件、多人会话窗口文件(所有文件)、离线文件由服务器 Filesever 处理。
  2. 客户端一对一发送大于 1M 的文件优先 P2P 连接,P2P 连接不成功由服务器中转。
  3. 客户端没有"点对点方式传送文件"权限或"建立点对点连接失败"时,大于 3M 的文件由服务器 SessionServer 处理,小于 3M 的文件由 FileServer 处理。

b) 发送文件问题表现

  1. 所有用户都无法发送文件,包括服务器本机。
  2. RTX 服务器本机可以发送离线文件,但其他客户端收不到。
  3. 局域网内部机器可以收发文件,但外网用户无法收发。
  4. 客户端发送大于 3M 的文件失败,发送小文件、离线文件正常。

c) 发送文件问题处理

1、所有用户都无法发送文件,包括服务器本机登录的 RTX 客户端

分析原因:

  • i. FileServer 服务停止或异常。
  • ii. RTXServer\Config 文件夹里的配置文件 IP 地址不正确。

解决方法:

  • i. 端口可能被占用。查看服务器安装目录下 Logs\FileServer.log 日志是否异常,端口有没有被其他程序占用,如果端口被其他程序占用,可以修改 RTX 服务器安装目录下 rtxserver.xml(RTX2008 以前版本放在服务器安装目录下,2008 正式版以后版本放在 Config 下)文件 Fileserver 的端口(如下图所示),然后在"腾讯通 RTX 管理器"重启 Fileserver 服务。

    端口被占用1

    端口被占用2

  • ii. 服务器的 IP 地址变更。查看服务器本机的网卡 IP 地址是否与服务器安装目录下 Config 文件夹里的 xml 文件 IP 地址一致,如果不同,先在计算机管理 → 服务和应用程序 → 服务,把 RTX_ConfigCenterRTX_SvrMain 停止,然后把 RTXServer\Config 文件夹里的所有 xml 文件 IP 地址改为服务器当前的 IP 地址(文件中默认 127.0.0.1 的 IP 地址不要改),最后先启动 RTX_ConfigCenter,再启动 RTX_SvrMain 服务。

2、RTX 服务器本机发送离线文件正常,但其他客户端收不到

分析原因:

  • i. 服务器安装了防火墙程序或属于不同网段,限制了客户端访问 8003、8880 的端口。
  • ii. 服务器有网卡没有配置默认网关。

解决方法:

  • i. 在防火墙或网段间开放 8003 端口。
  • ii. 服务器有网卡没有配置默认网关时,可能会导致网络通讯错误。请给网卡配置网关或先禁用该网卡,若这样测试可以正常收发文件,说明就是没有配置网关引起的,请给您的网卡分配网关或用 route 设置软路由解决通讯问题。

3、局域网内部机器可以收发文件,但外网用户无法收发文件

分析原因:

  • i. 路由器没有映射 8003、8880 端口。
  • ii. rtxserver.xml 没有配置公网的 IP 地址。

解决方法:

  • i. 在路由器映射 8003、8880 的端口。
  • ii. 参照上文的设置公网 IP。

4、客户端发送大于 3M 的文件失败,发送小文件、离线文件正常

分析原因: 客户端发送方、接收方、服务器三者之间的网络不稳定,无法用服务器 SessionServer 进行 P2P 中转。

解决方法:

  • i. 禁止用户 P2P 权限。方法:打开腾讯通 RTX 管理器 → 用户管理 → 权限管理,新添加一个角色,将发大文件老是失败的 RTX 帐号添加到该角色,并选择右上角权限设置将"点对点方式传送文件"权限设置为拒绝。
  • ii. 提高网络质量。

八、后语

本文档主要介绍 RTX 常见问题处理。详细服务器端应用请阅读《RTX 管理员手册》。