コード例 #1
0
        /// <summary>
        /// Change gain by inputted gain value for requested input channel id
        /// </summary>
        /// <param name="request"></param>
        /// <param name="change"></param>
        /// <returns></returns>
        //[BasicAuthorize]
        //[HttpPost]
        //[Route("changeinputgain")]
        private async Task <ActionResult <InputGainLevelResponse> > ChangeInputGain(ChangeGainRequest request, int change)
        {
            if (request == null)
            {
                return(BadRequest());
            }

            return(await Execute(request.SipAddress, async (codecApi, codecInformation) =>
            {
                var gain = await codecApi.GetInputGainLevelAsync(codecInformation.Ip, request.Input);
                var newGain = gain + change;
                var setGain = await codecApi.SetInputGainLevelAsync(codecInformation.Ip, request.Input, newGain);
                return new InputGainLevelResponse
                {
                    GainLevel = setGain
                };
            }));
        }
コード例 #2
0
 public async Task <ActionResult <InputGainLevelResponse> > DecreaseInputGain([FromBody] ChangeGainRequest parameters)
 {
     return(await ChangeInputGain(parameters, -1));
 }