zoukankan      html  css  js  c++  java
  • OPENFIRE+SPARK语音视频出错连不上的解决办法,倾心吐露:



    这是套基于XMPP解决方案的即时通讯系统,支持几万的并发数,支持语音视频等。
    上年测试的时候,发现局域网内可以直接使用语音视频;但是真的放到学校部署的时候发现,在多个校区并联、不同局域网之间都无法实现语音视频,提示NOT FOUND错误什么的。非常懊恼!

    后来也没去研究这个东西,自己写了个语音视频程序作为这套系统的补充。

    前几天突然想到:RED5之所以出错,是因为找不到连接语音视频地址的服务器。也就是URL路径没有直接关联到服务器。

    如服务器域名为:hello.vicp.net
    而在OPENFIR初始设置域名为:BIG

    那么SPARK端使用RED5进行语音视频的时候,就直接指向了BIG的域名相关路径。结果肯定不行了。

    而且也需要在OPENFIRE端绑定HTTP到8080端口,直接指向RED5的端口。

    概括一下全新安装这套方案时候,避免语音视频无法实现的注意点:

    1、在OPENFIRE填写的域名或者IP地址必须跟服务器的域名或者IP地址一致,而不是随意填写,也不是自动填写。

    2、在OPENFIRE端开启HTTP绑定到8080端口

    3、将RED5插件拷贝到插件目录,重启OPENFIRE。RED5的初始参数不要修改。

    4、接触对8080端口的封锁,防火墙进行相关解锁(如果你的服务器有防火墙拦截干扰的话)

    如果你已经犯了错误,将OPENFIRE的域名填写错误,或者填写一些任意字符,或者任由其自动取计算机名为域名,我也对此琢磨了以下解决办法:

    1、备份所有“embedded-db”目录数据,要求目录一份,RAR压缩一份,以防万一。

    2、删除全部OPENFIRE程序和OPENFIRE目录

    3、重装OPENFIRE

    4、设定域名为您的服务器的真实域名,或者真实IP,这点不要再犯错误了。

    5、拷贝插件等到目录

    6、修改备份的“embedded-db”目录下的“openfire.script”文件,用写字板打开,搜索原先的错误域名或者IP地址。全字匹配替换为新的正确域名或者IPD地址,保存。

    7、将修改好的“openfire.script”文件拷贝到OPENFIRE的“embedded-db”目录下替换原始文件。

    8、重新启动OPENFIRE,进入设置,配置好各个选项,然后重新启动OPENFIRE。确定域名为真实的域名或者IP地址才行。

    这样做是有理论和实际根据的,经过我的排查,发现“openfire.script”是储存用户数据资料的一个文件。里面包含了所有用户的密码和账户信息。只有把里面的错误信息替换成正确信息,才能移植数据库。

    而新的域名是采用RSA算法跟计算机名进行匹配的,直接修改“embedded-db”目录下的所有文件的错误域名关键字为正确域名关键字,是没有用的。因为你要自行计算和修改RSA值,才能让它匹配计算机。

    所以我们干脆从头再来,直接设定好真实域名,让它自动计算RSA进行标记。然后再移植数据库,这样就完美了。

    呵呵

    这就是我今天最大的收获,哈哈,我想很多人也跟我一样碰到过这样的问题。网上也没有人能解答,我到OPENFIRE的官方网站,找官方用英语问过这个语音视频架设问题,他们其实也不太清楚。
  • 相关阅读:
    mybatis中的#和$的区别
    spring ioc三种注入方式
    JSP中动态INCLUDE与静态INCLUDE的区别
    j2ee部分
    面试 框架部分
    注册Jdbc驱动程序的三种方式
    union和union all有什么不同?
    面试 JavaWeb 部分
    Cordova插件开发(iOS/Android)--看这篇就够了
    程序员,请不要只看技术
  • 原文地址:https://www.cnblogs.com/hannover/p/2001936.html
Copyright © 2011-2022 走看看