• 大小: 16.68MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-06-19
  • 语言: 其他
  • 标签:

资源简介

可以直接运行。请使用hurento server 6.0

资源截图

代码片段和文件信息

package org.kurento.tutorial.one2manycall;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArraySet;

import javax.websocket.OnClose;
import javax.websocket.onerror;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;

import org.kurento.client.EventListener;
import org.kurento.client.IceCandidate;
import org.kurento.client.IceCandidateFoundEvent;
import org.kurento.client.KurentoClient;
import org.kurento.client.MediaPipeline;
import org.kurento.client.WebRtcEndpoint;
import org.kurento.jsonrpc.JsonUtils;








import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.Jsonobject;


@ServerEndpoint(“/call“)
public class newWebsocket {
// 静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。
private static int onlineCount = 0;

// 与某个客户端的连接会话,需要通过它来给客户端发送数据
private Session session;
private  KurentoClient kurento=KurentoClient.create(“ws://192.168.1.138:8888/kurento“);
// static {
//
// if(kurento==null){
// kurento=KurentoClient.create(“ws://192.168.1.138:8888/kurento“);
// }
//
// }
 private static final Logger log = LoggerFactory.getLogger(newWebsocket.class);
  private static final Gson gson = new GsonBuilder().create();

//  private final ConcurrentHashMap viewers = new ConcurrentHashMap<>();

private static MediaPipeline pipeline;
private static  UserSession presenterUserSession;

private final static ConcurrentHashMap viewers = new ConcurrentHashMap<>();

/**
 * 连接建立成功调用的方法
 * 
 * @param session
 *            可选的参数。session为与某个客户端的连接会话,需要通过它来给客户端发送数据
 */
@OnOpen
public void onOpen(Session session) {
this.session = session;
addOnlineCount(); // 在线数加1
System.out.println(“有新连接加入!当前在线人数为“ + getOnlineCount());
}

/**
 * 连接关闭调用的方法
 */
@OnClose
public void onClose() {
subOnlineCount(); // 在线数减1
System.out.println(“有一连接关闭!当前在线人数为“ + getOnlineCount());
}

/**
 * 收到客户端消息后调用的方法
 * 
 * @param message
 *            客户端发送过来的消息
 * @param session
 *            可选的参数
 * @throws IOException
 */

@OnMessage
public void onMessage(String message Session session) throws IOException {

 Jsonobject jsonMessage = gson.fromJson(message Jsonobject.class);
    log.debug(“Incoming message from session ‘{}‘: {}“ session.getId() jsonMessage);

    switch (jsonMessage.get(“id“).getAsString()) {
      case “presenter“:
        try {
          presenter(session jsonMessage);
        } catch (Throwable t) {
          handleErrorResponse(t session “presenterResponse“);
        }
        break;
      case “viewer“:
        try {
          viewer(session jsonMessage);
   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1639  2016-07-05 11:13  websocket\.classpath

     文件       1334  2016-06-01 11:47  websocket\.project

     文件        522  2016-06-01 11:44  websocket\.settings\.jsdtscope

     文件        598  2016-06-02 10:40  websocket\.settings\org.eclipse.jdt.core.prefs

     文件        486  2016-06-01 11:44  websocket\.settings\org.eclipse.wst.common.component

     文件        396  2016-06-01 11:44  websocket\.settings\org.eclipse.wst.common.project.facet.core.xml

     文件         49  2016-06-01 11:44  websocket\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2016-06-01 11:44  websocket\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件       2207  2016-06-01 11:46  websocket\src\websocket\EchoServlet.java

     文件       2805  2016-07-05 11:16  websocket\src\websocket\Websocket.java

     文件        834  2016-06-01 11:44  websocket\WebRoot\index.jsp

     文件         39  2016-06-01 11:44  websocket\WebRoot\meta-INF\MANIFEST.MF

     文件       2111  2016-07-05 11:14  websocket\WebRoot\WEB-INF\classes\websocket\EchoServlet$WebSocketMessageInbound.class

     文件       1260  2016-07-05 11:14  websocket\WebRoot\WEB-INF\classes\websocket\EchoServlet.class

     文件       3309  2016-07-05 11:18  websocket\WebRoot\WEB-INF\classes\websocket\Websocket.class

     文件     188671  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\commons-beanutils-1.7.0.jar

     文件     575389  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\commons-collections-3.2.1.jar

     文件     305001  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\commons-httpclient-3.1.jar

     文件     245274  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\commons-lang-2.3.jar

     文件      60841  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\commons-logging-1.1.1.jar

     文件      77826  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\ezmorph-1.0.3.jar

     文件     148490  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib\json-lib-2.2.3-jdk15.jar

     文件        969  2016-06-01 11:47  websocket\WebRoot\WEB-INF\web.xml

     文件       2152  2016-06-02 10:46  websocket\WebRoot\websocket.jsp

     文件       4443  2016-07-05 17:45  websocket\WebRoot\wtcnoffer.jsp

     文件       4378  2016-07-05 17:45  websocket\WebRoot\wtcoffer.jsp

     目录          0  2016-07-05 11:14  websocket\WebRoot\WEB-INF\classes\websocket

     目录          0  2016-07-05 11:14  websocket\WebRoot\WEB-INF\classes

     目录          0  2016-07-05 11:12  websocket\WebRoot\WEB-INF\lib

     目录          0  2016-06-02 10:39  websocket\src\websocket

............此处省略428个文件信息

评论

共有 条评论

相关资源