summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/webrtc.go40
-rw-r--r--model/config.go1
-rw-r--r--model/webrtc.go21
-rw-r--r--model/webrtc_test.go6
4 files changed, 9 insertions, 59 deletions
diff --git a/app/webrtc.go b/app/webrtc.go
index 28c754622..b8b0a2827 100644
--- a/app/webrtc.go
+++ b/app/webrtc.go
@@ -23,9 +23,8 @@ func (a *App) GetWebrtcInfoForSession(sessionId string) (*model.WebrtcInfoRespon
}
result := &model.WebrtcInfoResponse{
- Token: token,
- GatewayUrl: *a.Config().WebrtcSettings.GatewayWebsocketUrl,
- GatewayType: *a.Config().WebrtcSettings.GatewayType,
+ Token: token,
+ GatewayUrl: *a.Config().WebrtcSettings.GatewayWebsocketUrl,
}
if len(*a.Config().WebrtcSettings.StunURI) > 0 {
@@ -49,16 +48,6 @@ func (a *App) GetWebrtcToken(sessionId string) (string, *model.AppError) {
return "", model.NewAppError("WebRTC.getWebrtcToken", "api.webrtc.disabled.app_error", nil, "", http.StatusNotImplemented)
}
- switch strings.ToLower(*a.Config().WebrtcSettings.GatewayType) {
- case "kopano-webmeetings":
- return a.GetKopanoWebmeetingsWebrtcToken(sessionId)
- default:
- // Default to Janus.
- return a.GetJanusWebrtcToken(sessionId)
- }
-}
-
-func (a *App) GetJanusWebrtcToken(sessionId string) (string, *model.AppError) {
token := base64.StdEncoding.EncodeToString([]byte(sessionId))
data := make(map[string]string)
@@ -76,7 +65,7 @@ func (a *App) GetJanusWebrtcToken(sessionId string) (string, *model.AppError) {
defer consumeAndClose(rp)
return "", model.AppErrorFromJson(rp.Body)
} else {
- janusResponse := model.JanusGatewayResponseFromJson(rp.Body)
+ janusResponse := model.GatewayResponseFromJson(rp.Body)
if janusResponse.Status != "success" {
return "", model.NewAppError("getWebrtcToken", "api.webrtc.register_token.app_error", nil, "", http.StatusInternalServerError)
}
@@ -85,29 +74,6 @@ func (a *App) GetJanusWebrtcToken(sessionId string) (string, *model.AppError) {
return token, nil
}
-func (a *App) GetKopanoWebmeetingsWebrtcToken(sessionId string) (string, *model.AppError) {
- data := make(map[string]string)
- data["type"] = "Token"
- data["id"] = sessionId
-
- rq, _ := http.NewRequest("POST", *a.Config().WebrtcSettings.GatewayAdminUrl+"/auth/tokens", strings.NewReader(model.MapToJson(data)))
- rq.Header.Set("Content-Type", "application/json")
- rq.Header.Set("Authorization", "Bearer "+*a.Config().WebrtcSettings.GatewayAdminSecret)
-
- if rp, err := utils.HttpClient(true).Do(rq); err != nil {
- return "", model.NewAppError("WebRTC.Token", "model.client.connecting.app_error", nil, err.Error(), http.StatusInternalServerError)
- } else if rp.StatusCode >= 300 {
- defer consumeAndClose(rp)
- return "", model.AppErrorFromJson(rp.Body)
- } else {
- kwmResponse := model.KopanoWebmeetingsResponseFromJson(rp.Body)
- if kwmResponse.Value == "" {
- return "", model.NewAppError("getWebrtcToken", "api.webrtc.register_token.app_error", nil, "", http.StatusInternalServerError)
- }
- return kwmResponse.Value, nil
- }
-}
-
func GenerateTurnPassword(username string, secret string) string {
key := []byte(secret)
h := hmac.New(sha1.New, key)
diff --git a/model/config.go b/model/config.go
index ae62626de..097a73ab3 100644
--- a/model/config.go
+++ b/model/config.go
@@ -474,7 +474,6 @@ type NativeAppSettings struct {
type WebrtcSettings struct {
Enable *bool
- GatewayType *string
GatewayWebsocketUrl *string
GatewayAdminUrl *string
GatewayAdminSecret *string
diff --git a/model/webrtc.go b/model/webrtc.go
index 3318128fe..fa15a4b71 100644
--- a/model/webrtc.go
+++ b/model/webrtc.go
@@ -11,24 +11,19 @@ import (
type WebrtcInfoResponse struct {
Token string `json:"token"`
GatewayUrl string `json:"gateway_url"`
- GatewayType string `json:"gateway_type"`
StunUri string `json:"stun_uri,omitempty"`
TurnUri string `json:"turn_uri,omitempty"`
TurnPassword string `json:"turn_password,omitempty"`
TurnUsername string `json:"turn_username,omitempty"`
}
-type JanusGatewayResponse struct {
+type GatewayResponse struct {
Status string `json:"janus"`
}
-type KopanoWebmeetingsResponse struct {
- Value string `json:"value"`
-}
-
-func JanusGatewayResponseFromJson(data io.Reader) *JanusGatewayResponse {
+func GatewayResponseFromJson(data io.Reader) *GatewayResponse {
decoder := json.NewDecoder(data)
- var o JanusGatewayResponse
+ var o GatewayResponse
err := decoder.Decode(&o)
if err == nil {
return &o
@@ -56,13 +51,3 @@ func WebrtcInfoResponseFromJson(data io.Reader) *WebrtcInfoResponse {
return nil
}
}
-
-func KopanoWebmeetingsResponseFromJson(data io.Reader) *KopanoWebmeetingsResponse {
- decoder := json.NewDecoder(data)
- var o KopanoWebmeetingsResponse
- err := decoder.Decode(&o)
- if err == nil {
- return &o
- }
- return nil
-}
diff --git a/model/webrtc_test.go b/model/webrtc_test.go
index 30a92f2b1..4b8b26dc1 100644
--- a/model/webrtc_test.go
+++ b/model/webrtc_test.go
@@ -27,20 +27,20 @@ func TestWebrtcInfoResponseToFromJson(t *testing.T) {
}
}
-func TestJanusGatewayResponseFromJson(t *testing.T) {
+func TestGatewayResponseFromJson(t *testing.T) {
if testing.Short() {
t.SkipNow()
}
// Valid Gateway Response
s1 := `{"janus": "something"}`
- g1 := JanusGatewayResponseFromJson(strings.NewReader(s1))
+ g1 := GatewayResponseFromJson(strings.NewReader(s1))
CheckString(t, g1.Status, "something")
// Malformed JSON
s2 := `{"wat"`
- g2 := JanusGatewayResponseFromJson(strings.NewReader(s2))
+ g2 := GatewayResponseFromJson(strings.NewReader(s2))
if g2 != nil {
t.Fatal("expected nil")