title: Twilio Voice iOS CallKit Outgoing Call Not Working
body: <p>I am using the the iOS client quick start project hosted on <a href="https://github.com/twilio/voice-callkit-quickstart-objc" rel="nofollow noreferrer">https://github.com/twilio/voice-callkit-quickstart-objc</a></p>
  
  <p>on server I am using python (as recommended on github project)</p>
  
  <p>When I clicked on "Place outgoing call" it worked fine and I got "Welcome to Twilio" voice. Great!</p>
  
  <p>Then I changed the code a bit and tried to make an outgoing call to specific number. Here's the modified code</p>
  
  <p>Button click event</p>
  
  <pre><code>- (IBAction)placeCall:(id)sender {
      NSUUID *uuid = [NSUUID UUID];
      NSString *handle = @"Real Number";
  
      [self performStartCallActionWithUUID:uuid handle:handle];
  }
  </code></pre>
  
  <p>Here's the CallKit handle</p>
  
  <pre><code>- (void)performStartCallActionWithUUID:(NSUUID *)uuid handle:(NSString *)handle {
      if (uuid == nil || handle == nil) {
          return;
      }
  
      CXHandle *callHandle = [[CXHandle alloc] initWithType:CXHandleTypeGeneric value:handle];
      CXStartCallAction *startCallAction = [[CXStartCallAction alloc] initWithCallUUID:uuid handle:callHandle];
      CXTransaction *transaction = [[CXTransaction alloc] initWithAction:startCallAction];
  
      [self.callKitCallController requestTransaction:transaction completion:^(NSError *error) {
          if (error) {
              NSLog(@"StartCallAction transaction request failed: %@", [error localizedDescription]);
          } else {
              NSLog(@"StartCallAction transaction request successful");
  
              CXCallUpdate *callUpdate = [[CXCallUpdate alloc] init];
              callUpdate.remoteHandle = callHandle;
              callUpdate.supportsDTMF = YES;
              callUpdate.supportsHolding = NO;
              callUpdate.supportsGrouping = NO;
              callUpdate.supportsUngrouping = NO;
              callUpdate.hasVideo = NO;
  
              [self.callKitProvider reportCallWithUUID:uuid updated:callUpdate];
          }
      }];
  }
  </code></pre>
  
  <p>And the number to call</p>
  
  <pre><code>- (void)provider:(CXProvider *)provider performStartCallAction:(CXStartCallAction *)action {
      NSLog(@"provider:performStartCallAction:");
  
      [[VoiceClient sharedInstance] configureAudioSession];
  
      NSDictionary *toParam = @{@"To": @"+14805058877"};
      //THIS IS WHERE WE NEED TO INSERT CALLING NUMBER
      self.outgoingCall = [[VoiceClient sharedInstance] call:[self fetchAccessToken]
                                                      params:toParam
                                                    delegate:self];
  
      if (!self.outgoingCall) {
          [action fail];
      } else {
          self.outgoingCall.uuid = action.callUUID;
          [self toggleUIState:NO];
          [self startSpin];
  
          [action fulfillWithDateStarted:[NSDate date]];
      }
  }
  </code></pre>
  
  <p>No matter what I enter in the parameter value I always get "Welcome to Twilio" msg. I need to know if I need change anything on the Python server or in the iOS client code. Please help! </p>