SMS API Question

Options

I'm looking over the API documentation, and it appears for SMS that the message itself must be exposed as a file via HTTP accessible by easylink.  Is there any way I can just pass in the 160 character text message as either text or uploaded as a file (such as the VOICE api allows) rather than exposing the message via HTTP, which will take more effort?

Comments

  • Yes, you can include the SMS message content directly in your input, the same way you can with any of the other modalities.

    The XML would look something like this:

      <ns1:JobSubmitRequest xmlns:ns1="http://premconn.premiereconnect.com/JobSubmit/2009/07">

          <ns1:Message>

            <ns1:JobOptions>

                    <ns1:SmsOptions></ns1:SmsOptions>

            </ns1:JobOptions>

            <ns1:Destinations>

              <ns1:Sms>

                <ns1:Phone>19999999999</ns1:Phone>

              </ns1:Sms>

            </ns1:Destinations>

            <ns1:Reports>

              <ns1:DeliveryReport>

                <ns1:DeliveryReportType>none</ns1:DeliveryReportType>

              </ns1:DeliveryReport>

            </ns1:Reports>

            <ns1:Contents>

              <ns1:Part>

                <ns1:Document>

                  <ns1:DocType>text</ns1:DocType>

                  <ns1:DocData format="text">This is a sample SMS message with the content directly in the input XML.</ns1:DocData>

                </ns1:Document>

                <ns1:Treatment>body</ns1:Treatment>

                <ns1:AddrTypeUse>sms</ns1:AddrTypeUse>

              </ns1:Part>

            </ns1:Contents>

          </ns1:Message>

        </ns1:JobSubmitRequest>

  • Thanks, this is helpful.  I am working with some older code that references the legacy APIs.  I am now getting the following validation error back from a job submission.  I am not exactly sure what it is looking for.  Any ideas on the missing "DocRef" that it is complaining about?  Thanks.

     

    cvc-complex-type.2.4.a: Invalid content was found starting with element 'Treatment'. One of '{\"http://premconn.premiereconnect.com/JobSubmit/2009/07\":DocRef, \"http://premconn.premiereconnect.com/JobSubmit/2009/07\":Document}' is expected.

  • I think I'm getting closer.  I added an "Item" node (I assume it's going in as a node, as I'm constructing this request using helper classes).  I set the value of that to "SmsMessage" since I have no idea what else to put.  I added this based on what I found before "Treatment" in the reference file automatically built by my Visual Studio project for this web reference:

            [System.Xml.Serialization.XmlElementAttribute("DocRef", typeof(string))]
            [System.Xml.Serialization.XmlElementAttribute("Document", typeof(DocumentType))]
            public object Item {
                get {
                    return this.itemField;
                }
                set {
                    this.itemField = value;
                }
            }

    Anyway, the request has made it further, apparently beyond the parsing, but now I just have an issue that it's not finding the list.  I'm chasing that one now.  Thanks.

    XOA-2000 [system error] : Couldn't find list with name ...

  • Certainly!
    If the SMS API documentation specifies that the message must be exposed as a file via HTTP accessible by easylink, you might need to adhere to those requirements for integration. However, there could be alternatives or workarounds depending on the capabilities of the API and your specific use case.
    Here are a few suggestions:

    1. Clarify with the Provider
    2. Check for Batch Sending
    3. Evaluate Message Templates
    4. Explore API Extensions or Libraries
    5. Consider Automation

    Ultimately, the best approach will depend on the specific requirements of your integration, the capabilities of the SMS API, and any constraints or limitations imposed by your environment. By working closely with your SMS service provider and exploring alternative methods, you may find a solution that meets your needs while minimizing the effort required for integration.