Difference between revisions of "GetMessageStatusByReferenceID"

From CDYNE Wiki
Jump to navigation Jump to search
Line 294: Line 294:
 
gets data
 
gets data
  
</code>
+
</syntaxhighlight>
  
 
=== JAVA ===
 
=== JAVA ===

Revision as of 11:55, 23 January 2019

This method returns all messages with a predefined user ReferenceID set in AdvancedSMSSend method.

GetMessageStatusByReferenceID Request

Parameter Name Data Type Sample Input
ReferenceID: Input unique ID that can be set with the AdvancedSMSSend method. String CDYNE Test

HTTP Method

HTTP Method: GET

Url: http://sms2.cdyne.com/sms.svc/GetMessageStatusByReferenceID?ReferenceID={REFERENCEID}&LicenseKey={LICENSEKEY}

Url: https://sms2.cdyne.com/sms.svc/GetMessageStatusByReferenceID?ReferenceID={REFERENCEID}&LicenseKey={LICENSEKEY}

GetMessageStatusByReferenceID Response


Parameter Name Data Type Sample Output
Cancelled: Returns true or false if the SMS message has been cancelled. Boolean False
MessageID: Returns unique Guid ID for every SMS message sent. Guid B01d89fd-5155-5455-5585-e84ab8de8591
Queued: Returns true or false if the SMS message has been queued. Boolean True
ReferenceID: Returns a unique ID that is assigned during request input. (Not a required Input) String CDYNE Test
SMSError: Returns a string indicating if there was an error sending the SMS message.
  • NoError
  • STOPfromPhoneNumber
  • LicenseKeyInvalid
  • PhoneNumberInvalid
  • MessageInvalid
  • ScheduledDateTimeIsNotUTC
  • InvalidAssignedDID
  • NotFound (Occurs for Invalid MessageID)
  • InternalError
  • ContactCdyneAccountSuspended
String NoError
SMSIncomingMessages: Returns an array of type SMSIncomingMessage SMSIncomingMessage[] See Table Below
Sent: Returns true or false if the SMS message has been sent to the carrier. Boolean False
SentDateTime: Returns the UTC Date and Time of when the message was sent. Datetime 0001-01-01T00:00:00


SMSIncomingMessage Parameter Name Data Type Sample Output
FromPhoneNumber: Returns the phone number that sent this incoming message. String 17575449510
IncomingMessageID: Returns a unique Guid ID for this incoming message. Guid 1835fecd-8402-4b02-91a4-5f4f9e036fe6
MatchedMessageID: Returns a unique Guid ID that matches the outgoing MessageID that this message is in response to. Guid B01d89fd-5155-5455-5585-e84ab8de8591
Message: Returns the content of the incoming message. String Ok.
ResponseReceiveDate: Returns the UTC Date and Time of when the message was received. DateTime 0001-01-01T00:00:00
ToPhoneNumber: Returns the destination phone number of this incoming message. String 17577698337

XML Response

The following is an example response Xml body:


  <SMSResponse>
    <Cancelled>true</Cancelled>
    <MessageID>1627aea5-8e0a-4371-9022-9b504344e724</MessageID>
    <Queued>true</Queued>
    <ReferenceID>String content</ReferenceID>
    <SMSError>NoError</SMSError>
    <SMSIncomingMessages>
      <SMSIncomingMessage>
        <FromPhoneNumber>String content</FromPhoneNumber>
        <IncomingMessageID>1627aea5-8e0a-4371-9022-9b504344e724</IncomingMessageID>
        <MatchedMessageID>1627aea5-8e0a-4371-9022-9b504344e724</MatchedMessageID>
        <Message>String content</Message>
        <ResponseReceiveDate>1999-05-31T11:20:00</ResponseReceiveDate>
        <ToPhoneNumber>String content</ToPhoneNumber>
      </SMSIncomingMessage>
      <SMSIncomingMessage>
        <FromPhoneNumber>String content</FromPhoneNumber>
        <IncomingMessageID>1627aea5-8e0a-4371-9022-9b504344e724</IncomingMessageID>
        <MatchedMessageID>1627aea5-8e0a-4371-9022-9b504344e724</MatchedMessageID>
        <Message>String content</Message>
        <ResponseReceiveDate>1999-05-31T11:20:00</ResponseReceiveDate>
        <ToPhoneNumber>String content</ToPhoneNumber>
      </SMSIncomingMessage>
    </SMSIncomingMessages>
    <Sent>true</Sent>
    <SentDateTime>1999-05-31T11:20:00</SentDateTime>
  </SMSResponse>
  

Json Response

The following is an example response Json body:


[{
	"Cancelled":true,
	"MessageID":"1627aea5-8e0a-4371-9022-9b504344e724",
	"Queued":true,
	"ReferenceID":"String content",
	"SMSError":0,
	"SMSIncomingMessages":[{
		"FromPhoneNumber":"String content",
		"IncomingMessageID":"1627aea5-8e0a-4371-9022-9b504344e724",
		"MatchedMessageID":"1627aea5-8e0a-4371-9022-9b504344e724",
		"Message":"String content",
		"ResponseReceiveDate":"\/Date(928164000000-0400)\/",
		"ToPhoneNumber":"String content"
	}],
	"Sent":true,
	"SentDateTime":"\/Date(928164000000-0400)\/"
}]

GetMessageStatusByReferenceID Code Examples

C#

1 GetMessageStatusByReferenceID.WSDL.IsmsClient client = new GetMessageStatusByReferenceID.WSDL.IsmsClient("sms2wsHttpBinding");
2 GetMessageStatusByReferenceID.WSDL.SMSResponse[] resp = client.GetMessageStatusByReferenceID("123456", new Guid("YOUR LICENSE KEY"));
3 foreach (var item in resp)
4 {
5 Console.WriteLine(item.MessageID+" " + item.SentDateTime + " " + item.SMSError);
6 }
7 Console.ReadLine(); 
8 Client.Close();

VB.NET

 1 Imports GetMessageStatusByReferenceID.WSDL
 2 Module Module1
 3  Sub Main()
 4  Dim client As New GetMessageStatusByReferenceID.WSDL.IsmsClient("sms2wsHttpBinding")
 5  Dim resp As GetMessageStatusByReferenceID.WSDL.SMSResponse() = client.GetMessageStatusByReferenceID("123456", New Guid("YOUR LICENSE KEY"))
 6  For Each item In resp
 7  Console.WriteLine(Convert.ToString(item.MessageID) & " " & Convert.ToString(item.SentDateTime) & " " & Convert.ToString(item.SMSError))
 8  Next
 9  client.Close()
10  End Sub
11 End Module

PHP

 1 $client = new SoapClient('http://sms2.cdyne.com/sms.svc?wsdl');
 2 
 3 $param = array(
 4 		'ReferenceID' => '(your reference ID, set in AdvancedSMSSend)',
 5 		'LicenseKey' => '(your license key)'
 6 );
 7 
 8 $result = $client->GetMessageStatusByReferenceID($param);
 9 
10 print_r($result);
11 
12 </php>
13 
14 === PHP with cURL ===
15 
16 <php>
17 
18 
19 $url='http://sms2.cdyne.com/sms.svc/GetMessageStatusByReferenceID?ReferenceID=(Reference ID)&LicenseKey=(License Key)';
20 
21 $cURL = curl_init();
22 
23 curl_setopt($cURL,CURLOPT_URL,$url);
24 curl_setopt($cURL,CURLOPT_HTTPGET,true);
25 curl_setopt($cURL, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Accept: application/json'));
26 
27 $result = curl_exec($cURL);
28 
29 curl_close($cURL);
30 
31 print_r($result);
32 
33 </php>
34 
35 === VBScript ===
36 
37 <syntaxhighlight lang=vb line=line>
38 
39 Dim oXMLHTTP
40 Set oXMLHTTP = CreateObject("Microsoft.XMLHTTP")
41 Set oDoc = CreateObject("MSXML2.DOMDocument")
42 Call oXMLHttp.Open("GET", "http://sms2.cdyne.com/sms.svc/GetMessageStatusByReferenceID?ReferenceID=123456&LicenseKey=YOUR LICENSE KEY", False)
43 Call oXMLHttp.setRequestHeader("Content-Type", "text/xml")
44 Call oXMLHttp.send
45 MsgBox oXMLHTTP.responseText

Ruby

1 require 'net/http'
2 require 'URI' 
3 puts URI.methods 
4 url = URI.parse('http://sms2.cdyne.com/sms.svc/GetMessageStatusByReferenceID?ReferenceID=123456&LicenseKey=YOUR LICENSE KEY')
5 res = Net::HTTP.get_response(url) 
6 data = res.body 
7 puts data
8 gets data

JAVA

import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.util.Properties; import javax.xml.transform.OutputKeys; import javax.xml.transform.Source; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource;

public final class GetMessageStatusByReferenceID{

   public static void main(String[] args) { 	
   try{		
   URL url = new URL("http://sms2.cdyne.com/sms.svc/GetMessageStatus?"
                      + "ReferenceID=12346"
                      + "&LicenseKey=YOUR LICENSE KEY");		
   try{			
   InputStream in = url.openStream(); 
   StreamSource source = new StreamSource(in); 			
   printResult(source);	
   }catch(java.io.IOException e){			
       e.printStackTrace();		
   }		
   }catch (MalformedURLException e){		
       e.printStackTrace();	
               }     
           }     
           private static void printResult(Source source) {        
               try {            
               ByteArrayOutputStream bos = new ByteArrayOutputStream();
               StreamResult sr = new StreamResult(bos);
               Transformer trans = TransformerFactory.newInstance().newTransformer();
               Properties oprops = new Properties();
               oprops.put(OutputKeys.OMIT_XML_DECLARATION, "yes");
               trans.setOutputProperties(oprops);
               trans.transform(source, sr);            
               System.out.println("**** Response ******"); 
               System.out.println(bos.toString());
                               
              bos.close();
              System.out.println();        
       } catch (Exception e) {            
               }    
       }

}