title: Twilio Call Status
body: <p>How do I know whether or not a call is answered?</p>
  
  <p>For StatusCallback, I can set the following values:</p>
  
  <ul>
  <li>initiated </li>
  <li>ringing </li>
  <li>answered </li>
  <li>completed</li>
  </ul>
  
  <p>When Twilio sends me statuses, I don't see a value for "answered" what I see are the following:</p>
  
  <ul>
  <li>no-answer</li>
  <li>busy</li>
  <li>completed</li>
  <li>initiated</li>
  <li>failed</li>
  </ul>
  
  <p>I'm wondering why there is no status returned for:</p>
  
  <ul>
  <li>answered</li>
  </ul>
  
  <p>though I'm setting "answered" as one of the values for StatusCallback.</p>
  
  <p>What confuses me is that Twilio sends "Completed" irrespective of whether or not the call was answered or not.</p>
  
  <p>I need a definite status for the call being answered. If the call is not answered then I need to retry again later or build a business logic around it.</p>
  
  <p>When the call is not answered, then I get "not-answered".</p>
  
  <p>When the call is answered, then I get "completed", but "completed" does not necessarily mean the call was actually answered assuming that the call went to the voicemail box or something.</p>
  
  <p>On a side note, I am also setting the "IfMachine" parameter in the call request. Though I know that it is an experimental feature, I get the call status as "completed" as in this case, my expectation is "not-answered".</p>
  
  <p>How do I know if the call was actually answered?</p>