Error Handling
 


When AcrossCommunications' server was not able to service a method request the client side received SOAP fault response in standard format. A fault message is simply an instance of the following type encoded as the root element of a <soap:Body>:

<soap:Envelope
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
 <soap:Body>
   <soap:Fault>
      <faultcode xmlns:q0="http://ws.acrosscommunications.com/errors">q0:general_code</faultcode>
      <faultstring>Error description</faultstring>
      <faultactor>Object and Method where error occurred</faultactor>
      <detail>
        <Error name="general_code">
            <Desc>error text description</Desc>
            <SpecificCode>specific_error_code</SpecificCode>
        </Error>
      </detail>
   </soap:Fault>
 </soap:Body>
</soap:Envelope>

Where:
general_code is:

OK, WRONG_COMMAND, ACCESS_DENIED, SERVICE_NOT_ACTIVE, DEMO_CLIENT, SERVICE_ERROR, TRIAL_MAX_NOTIF_PER_DAY, MAX_NOTIFICATIONS, CREATE_FILES_ERROR, CREATE_FILE_ERROR, FILE_NOT_FOUND, VALUE_ERROR, METHOD_INVOKING, METHOD_PARAMETERS_INVALID, TOO_MANY_NOTIF, GENERIC_EXCEPTION, METHOD_NOT_FOUND, LOGON_FAIL, CONNECT_FAIL, SET_STATUS_ERROR, NOT_CONNECTED, NOT_LOGGED_IN, ICQ_ERROR, MSN_ERROR, BILLING_ERROR, MAIL_SEND_ERROR, PHONE_TEXT_EMPTY, PHONE_ERROR, SMS_ERROR, NO_MORE_FILES, TOO_MANY_FILES, FILE_EXISTS, FILE_TYPE_NOT_ALLOWED, FILE_TOO_LONG, FILE_STRUCTURE_ERROR, HTTP_ERROR


specific_error_code for Phone service is:

COM_ERROR, API_ERROR, FORCED_CANCEL, NO_CONNECTION, AUDIO_OPEN_FAIL, AUDIO_CANCEL, AUDIO_SAY_ERROR, CONNECT_FAILED, CONNECT_BUSY, CONNECT_NO_DIALTONE, CONNECT_TIMEOUT, REMOTE_DISCONNECT, DG_FAILED, DM_TIMEOUT, EXCEPTION


If you use .NET environment it is possible to receive failed response wrapped in SoapException object. The followed properties of SoapException object could be used for error retrieving:

Code.Name = general_code
Code.NameSpace = could be "http://ws.acrosscommunications.com/errors/" for AcrossCommunications service error or "http://schemas.xmlsoap.org/soap/envelope/" for other errors
Actor = text description of exception point (ex: Mail Send )
Detail is XmlNode with structure:
<Error name="general_code">
  <Desc>error text description</Desc>
  <SpecificCode>specific_error_code</SpecificCode>
</Error>