How to get failure delivery by http api

Home Forums iSMS How to get failure delivery by http api

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #9356
    Marcin Buciora
    Participant

    Hello
    We use SF-400. I got following issue. When user put some invalid phone number like 789123789123, then SF treat it as international number. API response to such a case is OK, SMS SEND. But in SMS Failure Log we got following:

    <p>
    <b>Sep 22 09:34:33 modem: faillog: [FAILED TO] : 68556353553550 : [MSG] : International messaging is disabled, message cannot be sent.
    Sep 22 09:34:33 modem: faillog: [FAILED TO] : 68556353553550 : [MSG] : Error creating message PDU data.</b>
    </p>

    How to query http api to get such information. At the moment our application thinks that sms is delivered and process endup correctly. How to get true status of delivery process?

    best regards,
    Marcin.

    #9357
    Bryon Davis
    Moderator

    Hi Marcin,
    When you send a sendmsg request and it is accepted, you get a response with the API Msg ID. This indicates that the iSMS didn’t detect an error in the API request’s format and will try to send the sms message. You can then use the querymsg request to check the status of that job and see if it was successfully sent.

    Processing the “Send API” and sending the message takes some time. So, only an apimsgid is returned as a response to the “Send SMS API”. Query API can be used to query the status of a Send. It returns the status of a message submitted earlier.

    HTTP API format is:
    http://192.168.2.1%5B:portnumber%5D/querymsg?user=xxx&passwd=xxx&apimsgid=id
    Response values:
    ID: apimsgid Status: status code
    OR
    ID: apimsgid Err: error code
    OR
    Err: error code

    Status Code on Descriptions:

    0 = Done
    The MultiModem iSMS has completed servicing the “Send” job. The message has been successfully sent to the cellular network for delivery to all intended recipients.

    1 = Done with error
    The MultiModem iSMS has completed servicing the “Send” job, but the message is not sent to all the recipients

    2 = In progress
    The MultiModem iSMS is processing the “Send” API.

    3 = Request Received
    The MultiModem iSMS has received the “Send” request.

    4 = Error
    Error occurred while sending the SMS from the MultiModem iSMS.

    5 = Message ID Not Found
    An API Message ID does not exist.

    6 = Distributed to Slave1 [10.10.10.101]
    The Master MultiModem iSMS has distributed the Job to a given slave.

    7 = Distribution resulted in error
    Master tried to send the job to the slaves and could not send the job to any of the slaves as the slaves are not available (loaded full or network unreachable)

    8 = Distributed among many Slaves
    The Master MultiModem iSMS has distributed the Job Request among many slaves.

    9 = API is canceled
    Reflects that API job is dropped if the Send API job is canceled from the web interface

    Bryon

    #9358
    Marcin Buciora
    Participant

    Hi Bryon
    We do as you write, even now for this particular case when i call http request i receive: ID: 163 Status: 0, it means OK process end with success.
    Why API doesn’t report that sms delivery failed? I need a way to get such information automatically not manually reading failure logs. Can you help us? Is the problem is that we switched off international sms?

    best regards,
    Marcin

    #9359
    Bryon Davis
    Moderator

    Marcin,
    If the iSMS modem log shows the message failed to send, but the querymsg status shows successful, then there may be a bug in the firmware when International messaging is disabled and an invalid number is sent. I will check into this.

    Bryon

Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.