Exemple #1
0
        public async Task GetToken(RequestContext <IScenePeerClient> ctx)
        {
            var client = await _accessor.GetApplicationClient();

            var user = await _sessions.GetUser(ctx.RemotePeer);

            var sceneId = ctx.ReadObject <string>();

            _logger.Log(LogLevel.Debug, "authorization", $"Authorizing access to scene '{sceneId}'", new { sceneId, user.Id });
            var token = await client.CreateConnectionToken(sceneId, new byte[0], "application/octet-stream");

            ctx.SendValue(token);
        }
        public async Task GetToken(RequestContext <IScenePeerClient> ctx)
        {
            var client = await _accessor.GetApplicationClient();

            var user = await _sessions.GetUser(ctx.RemotePeer);

            if (user == null)
            {
                throw new ClientException("userDisconnected");
            }
            var sceneId = ctx.ReadObject <string>();

            var token = await client.CreateConnectionToken(sceneId, new byte[0], "application/octet-stream");

            await ctx.SendValue(token);
        }
Exemple #3
0
        public async Task GetToken(RequestContext <IScenePeerClient> ctx)
        {
            _logger.Log(LogLevel.Trace, "authorization", "Receiving a token request to access a scene", new { });

            var client = await _accessor.GetApplicationClient();

            var user = await _sessions.GetUser(ctx.RemotePeer);

            if (user == null)
            {
                throw new ClientException("Client is not logged in.");
            }
            var sceneId = ctx.ReadObject <string>();

            _logger.Log(LogLevel.Debug, "authorization", $"Authorizing access to scene '{sceneId}'", new { sceneId, user.Id });
            var token = await client.CreateConnectionToken(sceneId, new byte[0], "application/octet-stream");

            ctx.SendValue(token);
        }