1、pom文件加入
<dependency>
<groupId>com.corundumstudio.socketio</groupId>
<artifactId>netty-socketio</artifactId>
<version>1.7.18</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.7</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.redisson/redisson -->
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson</artifactId>
<version>3.12.0</version>
</dependency>
2、im server启动
package com.corundumstudio.socketio.demo;
import com.corundumstudio.socketio.listener.*;
import com.corundumstudio.socketio.*;
import com.corundumstudio.socketio.store.RedissonStoreFactory;
import com.corundumstudio.socketio.store.StoreFactory;
import org.redisson.Redisson;
import org.redisson.api.RBucket;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;
import java.util.UUID;
public class ChatLauncher {
public static void main(String[] args) throws InterruptedException {
Config redis = new Config();
redis.useSingleServer().setAddress("redis://192.168.32.136:26379").setPassword("123456");
final RedissonClient redisson = Redisson.create(redis);
Configuration config = new Configuration();
config.setPort(9092);
StoreFactory storeFactory = new RedissonStoreFactory(redisson);
//session存储在redis
config.setStoreFactory(storeFactory);
final SocketIOServer server = new SocketIOServer(config);
server.addConnectListener(new ConnectListener() {
@Override
public void onConnect(SocketIOClient socketIOClient) {
//用户连接
//id为连用户id
String userId = socketIOClient.getHandshakeData().getSingleUrlParam("id");
//保存uuid key 用户id value SocketIOClient的UUID
RBucket<