wildfirechat / im-server Goto Github PK
View Code? Open in Web Editor NEW即时通讯(IM)系统
Home Page: http://docs.wildfirechat.cn
License: Other
即时通讯(IM)系统
Home Page: http://docs.wildfirechat.cn
License: Other
只部署到自己的服务器,提供对外的服务,类似于环信。。。能做到吗
im-server源码编译的版本, 添加好友直接成为好友, 不需要对方同意
没有doc介绍不会填啊。。
IMClient client = new IMClient("pqpxpxee","vnVczJAke+2SLT0XguQAjw7p1EXhIZ8t7nCxfr40W2PSF1eRS75BxP61jOMPx/fDQxVP2LjvrmjVzw0JaDnlaC1e/AFQrrOCGeprF63IeEB07cq/c/ivpsZWYdsrXCKRVPMIrReXX3ZJ50u/KdGwdGmS4dyxPYeJN+Xe+wZ2M5Y\u003d", "1234", "127.0.0.1", 1883);
当前这样填写但是运行之后只有一个报错
org.apache.http.NoHttpResponseException: 127.0.0.1:1883 failed to respond
java -version
)uname -a
)参考http://docs.wildfirechat.cn/quick_start/server.html 第2.0.1和2.0.2部署了IM服务器;
参考http://docs.wildfirechat.cn/quick_start/android.html编译了安卓客户端;现在客户端上使用superCode 66666不能连接到服务器,请问是什么原因?服务器上并没有监听8888端口
如果将用户信息交由app_server的表去管理,那im_server的用户表还要存在吗
distribution-0.22-bundle版本启用mysql出错,没有读取配置文件
如题
在数据库手动修改了用户的手机号后,用原来的手机号通过后台依然能查到这个用户,并且手机号还是原来的,但是数据已经修改了
java -version
)uname -a
)A和B分别向C用户发送添加好友申请(C暂时都不处理,等收到2个请求时再处理),C同意A的请求(成功),C再同意B的请求,这时会提示失败。im后端无法拿到该friendRequest
发送的消息有记录
但是无法接收,收到的data={2}
aes无法解密
2019-04-26 10:47:29
[INFO]-[Thread: main]-[HttpUtils.httpJsonPost()]: http request content: {"sender":"z_zazaaa","conv":{"type":2,"target":"chatroom1"},"payload":{"type":1,"content":"你好"}}
2019-04-26 10:47:29
[INFO]-[Thread: main]-[HttpUtils.httpJsonPost()]: http request response content:
返回的数据为空,而且发送信息,在对应的前端聊天室没有显示,感觉是发送不成功
退群、解散群组、被踢等操作,需要更新用户的favGroups
java -version
)uname -a
)在项目中使用了protobuf,但是只有编译好的java类,没有定义的*.proto文件
java -version
)uname -a
)客户端与服务器之间是否支持ssl
1.获取好友列表功能,数据库里面存在很多还有,通过客户端sdk获取好友列表,获取的列表跟数据库的不一致!2.设置朋友alisa 报找不到用户,数据库中存在该用户。
2.设置朋友alisa 报找不到用户,数据库中存在该用户。
java -version
)uname -a
)java -version
)uname -a
)由于一些业务需求,发出某条消息后,对方选择同意或者拒绝。此时,想更新服务器中这条信息的选择状态,该怎么做。 当然,手机终端app可以更新这条消息的选择状态,但是服务器端无法更新,,这样的话就会带来一些问题。比如,删除手机app之后,再请求会话和消息数据,这条业务消息仍然不是期望的状态,而是原始状态。
java -version
)uname -a
)java -version
)uname -a
)java -version
)uname -a
)04/07/2019 17:30:25,020 [nioEventLoopGroup-3-2] ERROR NettyMQTTHandler 113 - An unexpected exception was caught while processing MQTT message. Closing Netty channel. CId=754a87ccd8ce4adb1562230239593, cause=null, errorMessage=Connection reset by peer
请求参数有一项是群成员id的list集合,为什么不直接传群成员对象集合。server端目前处理时是遍历群成员id的list集合,然后不断新增群成员对象,不做其他特殊处理,这个操作可以由应用服务器或客户端来处理
SQL State : 42S02
Error Code : 1146
Message : Table 'abcde.test' doesn't exist
at org.flywaydb.core.internal.jdbc.JdbcUtils.openConnection(JdbcUtils.java:60)
at org.flywaydb.core.internal.database.DatabaseFactory.createDatabase(DatabaseFactory.java:72)
at org.flywaydb.core.Flyway.execute(Flyway.java:1670)
at org.flywaydb.core.Flyway.migrate(Flyway.java:1356)
at win.liyufan.im.DBUtil.init(DBUtil.java:110)
at io.moquette.server.Server.startServer(Server.java:218)
at io.moquette.server.Server.startServer(Server.java:210)
at io.moquette.server.Server.startServer(Server.java:194)
at io.moquette.server.Server.start(Server.java:108)
at cn.wildfirechat.server.Server.main(Server.java:15)
Caused by: java.sql.SQLSyntaxErrorException: Table 'abcde.test' doesn't exist
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:118)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:960)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:1019)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:431)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.initializeAutomaticTestTable(C3P0PooledConnectionPoolManager.java:1026)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.createPooledConnectionPool(C3P0PooledConnectionPoolManager.java:921)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.getPool(C3P0PooledConnectionPoolManager.java:397)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.getPool(C3P0PooledConnectionPoolManager.java:414)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
at org.flywaydb.core.internal.jdbc.JdbcUtils.openConnection(JdbcUtils.java:56)
... 9 more
理由:
字符串形式扩展性更好
(1)根据业务需求,添加对Id添加字母下划线等特殊符号
(2)表名的计算方式更加灵活
(3)无规则数字不利于后期统计
调用转让群主之后,无效,服务器数据修改了,但是app调用sdk疑似获取到缓存数据,refresh设置true无效
首先拉几个用户新建一个群,然后发几十条群消息,发送完毕后,再新增用户。新进来的用户下拉加载历史记录时,历史记录会不停的重复加载,并且有数据不全,排序还会有问题。
java -version
)uname -a
)com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Out of range value for column '_automatic' at row 1
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:104)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:960)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1116)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1066)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1396)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1051)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:462)
at io.moquette.persistence.DatabaseStore.lambda$updateChannelInfo$19(DatabaseStore.java:2073)
at cn.wildfirechat.server.ThreadPoolExecutorWrapper.lambda$execute$0(ThreadPoolExecutorWrapper.java:37)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)
at java.util.concurrent.FutureTask.run(FutureTask.java)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
fromUser是自己
java -version
)uname -a
)java -version
)uname -a
)3万并发测试,连接成功。
Thread Name: Thread Group 1-22745
Sample Start: 2019-06-17 14:42:01 CST
Load time: 2
Connect Time: 0
Latency: 0
Size in bytes: 7
Sent bytes:0
Headers size in bytes: 0
Body size in bytes: 0
Sample Count: 1
Error Count: 1
Data type ("text"|"bin"|""):
Response code: 500
Response message: Connection null connected failed.
Response headers:
SampleResult fields:
ContentType:
DataEncoding: null
java -version
)openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
uname -a
)Linux localhost.localdomain 3.10.0-957.5.1.el7.x86_64 #1 SMP Fri Feb 1 14:54:57 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
java -version
)uname -a
)A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.