public void StartCall(string contact) { // Build call action var handle = new CXHandle(CXHandleType.Generic, contact); var startCallAction = new CXStartCallAction(new NSUuid(), handle); // Create transaction var transaction = new CXTransaction(startCallAction); // Inform system of call request SendTransactionRequest(transaction); }
public ActiveCall StartCall(string name, int id) { var newCall = new ActiveCall(new NSUuid(), name, id, true, null, false); Calls.Add(newCall); var handle = new CXHandle(CXHandleType.Generic, name); var startCallAction = new CXStartCallAction(newCall.UUID, handle); var transaction = new CXTransaction(startCallAction); SendTransactionRequest(transaction); return(newCall); }
public override void PerformStartCallAction(CXProvider provider, CXStartCallAction action) { Console.WriteLine("CXProviderDelegate: PerformStartCallAction"); // Create new call record var activeCall = new ActiveCall(action.CallUuid, action.CallHandle.Value, true); // Monitor state changes activeCall.StartingConnectionChanged += (call) => { if (call.isConnecting) { // Inform system that the call is starting Provider.ReportConnectingOutgoingCall(call.UUID, call.StartedConnectingOn.ToNSDate()); } }; activeCall.ConnectedChanged += (call) => { if (call.isConnected) { // Inform system that the call has connected provider.ReportConnectedOutgoingCall(call.UUID, call.ConnectedOn.ToNSDate()); } }; // Start call activeCall.StartCall((successful) => { // Was the call able to be started? if (successful) { // Yes, inform the system action.Fulfill(); // Add call to manager CallManager.Calls.Add(activeCall); } else { // No, inform system action.Fail(); } }); }
public void StartCall(string contact) { // Build call action var handle = new CXHandle(CXHandleType.Generic, contact); //var handle = new CXHandle(CXHandleType.EmailAddress, contact); //var handle = new CXHandle(CXHandleType.PhoneNumber, contact); var thisCallID = new NSUuid(); Console.WriteLine("Call instance " + thisCallID + " generated for " + contact); var startCallAction = new CXStartCallAction(thisCallID, handle); // Create transaction var transaction = new CXTransaction(startCallAction); // Inform system of call request SendTransactionRequest(transaction); }
public static void PerformStartCallAction(this ICXProviderDelegate This, CXProvider provider, CXStartCallAction action) => throw new PlatformNotSupportedException(Constants.UnavailableOnMacOS);
public virtual void PerformStartCallAction(CXProvider provider, CXStartCallAction action) => throw new PlatformNotSupportedException(Constants.UnavailableOnMacOS);