private void OnTransferRequest(int call, CORESIP_CallInfo info, CORESIP_CallTransferInfo transferInfo) { Debug.Assert(info.Type == CORESIP_CallType.CORESIP_CALL_DIA); _Logger.Debug("Nueva peticion de transferencia [CallId={0}] [DstId={1}] [DstIp={2}] [DstSubId={3}] [DstRs={4}]", call, transferInfo.DstId, transferInfo.DstIp, transferInfo.DstSubId, transferInfo.DstRs); Top.WorkingThread.Enqueue("OnTransferRequest", delegate() { CORESIP_Answer answer = new CORESIP_Answer(SipAgent.SIP_DECLINE); General.SafeLaunchEvent(TlfTransferRequest, this, call, info, transferInfo, answer); if (answer.Value != 0) { SipAgent.TransferAnswer(transferInfo.TsxKey, transferInfo.TxData, transferInfo.EvSub, answer.Value); } }); }