예제 #1
0
        public void NewJobRequest(AuthJobRequest authJobRequest)
        {
            if (!_observerStreams.Any(o => o.Key == authJobRequest.StreamerId))
            {
                return;
            }

            var foundObserver = _observerStreams.FirstOrDefault(o => o.Key == authJobRequest.StreamerId);

            foundObserver.Value.WriteAsync(authJobRequest.Job);
        }
예제 #2
0
        public void StartCloseApplicationJob(StreamerClient streamerClient)
        {
            var authRequest = new AuthJobRequest()
            {
                AuthKey    = _authKey,
                StreamerId = streamerClient.Id,
                Job        = new Job()
                {
                    JobId   = Guid.NewGuid().ToString(),
                    JobType = Job.Types.JobType.CloseApplication,
                }
            };

            _client.CreateNewJob(authRequest);
        }
예제 #3
0
        public string StartStreamingJob(StreamerClient streamerClient)
        {
            var jobId       = Guid.NewGuid().ToString();
            var authRequest = new AuthJobRequest()
            {
                AuthKey    = _authKey,
                StreamerId = streamerClient.Id,
                Job        = new Job()
                {
                    JobId   = Guid.NewGuid().ToString(),
                    JobType = Job.Types.JobType.StartStreaming,
                }
            };

            _client.CreateNewJob(authRequest);
            return(jobId);
        }
 public override Task CreateNewJob(AuthJobRequest request, IServerStreamWriter <JobAnswer> responseStream, ServerCallContext context)
 {
     _jobService.NewJobRequest(request);
     return(Task.CompletedTask);
 }