Janus의 official page에 있는 데모 페이지 소스코드를 읽어보다 official documentation에는 없는 내용이 있어서 기록함.
Send에 plugin으로부터 response가 왔을때 성공여부에 따른 callback을 호출할 수 있다.
데모 페이지 소스 코드의 일부:
screentest.send({"message": create, success: function(result) {
var event = result["videoroom"];
Janus.debug("Event: " + event);
if(event != undefined && event != null) {
// Our own screen sharing session has been created, join it
room = result["room"];
Janus.log("Screen sharing session created: " + room);
myusername = randomString(12);
var register = { "request": "join", "room": room, "ptype": "publisher", "display": myusername };
screentest.send({"message": register});
}
}});
screentest는 pluginHandler인데, send에서 저렇게 일반적으로 보내는 message말고도 success와 error 콜백함수를 보낼 수 있다.
아래는 janus.js안의 코드인데, send의 파라미터로 넘어온 객체 전체를 sendMessage라는 private method에 넘겨준다.
send : function(callbacks) { sendMessage(handleId, callbacks); },
그리고 sendMessage에서는:
callbacks.success = (typeof callbacks.success == "function") ? callbacks.success : Janus.noop;
callbacks.error = (typeof callbacks.error == "function") ? callbacks.error : Janus.noop;
var message = callbacks.message;
이런식으로 사용한다.
'프론트엔드' 카테고리의 다른 글
Typescript가 무엇일까? 기본 개념 알아보기 (0) | 2023.04.26 |
---|---|
WebRTC 기본 개념 정리 (0) | 2020.12.24 |
Janus media server 설치하기 (4) | 2020.03.17 |
Intel Open WebRTC Toolkit 클라이언트 삽질기 (0) | 2020.03.13 |
8. GraphQL Introspection (0) | 2019.12.26 |