// @DataContract(Namespace="http://schemas.datacontract.org/2004/07/PushSmsLib.Dto")
export class RestSmsMessageResp
{
/** @description Result of sending message. 0 if success. See documentation for full list of codes */
// @DataMember(Name="StatusCode")
// @ApiMember(DataType="integer", Description="Result of sending message. 0 if success. See documentation for full list of codes", IsRequired=true, Name="StatusCode", ParameterType="form")
public StatusCode: number;
/** @description Describes the result of sending Sms text message */
// @DataMember(Name="StatusDescription")
// @ApiMember(DataType="string", Description="Describes the result of sending Sms text message", IsRequired=true, Name="StatusDescription", ParameterType="form")
public StatusDescription: string;
/** @description Your unique message id from send request message item. Will be empty if you did not provide any id in the request item. */
// @DataMember(Name="MessageId")
// @ApiMember(DataType="string", Description="Your unique message id from send request message item. Will be empty if you did not provide any id in the request item.", Name="MessageId", ParameterType="form")
public MessageId?: string;
/** @description Unique transaction id from server */
// @DataMember(Name="TransactionId")
// @ApiMember(DataType="string", Description="Unique transaction id from server", IsRequired=true, Name="TransactionId", ParameterType="form")
public TransactionId: string;
/** @description Key/Value attributes returned from server. E.g. subnumref and the server name that processed the message. Eg. subnumref=19331234567891,server=smsgw1 */
// @DataMember(Name="ExtraInfo")
// @ApiMember(DataType="string", Description="Key/Value attributes returned from server. E.g. subnumref and the server name that processed the message. Eg. subnumref=19331234567891,server=smsgw1", Name="ExtraInfo", ParameterType="form")
public ExtraInfo?: { [index:string]: string; };
public constructor(init?: Partial<RestSmsMessageResp>) { (Object as any).assign(this, init); }
}
// @DataContract(Namespace="http://schemas.datacontract.org/2004/07/PushSmsLib.Dto")
export class RestSmsResponse
{
/** @description Overall status of processing the request. Each message will have it's own status. This value indicates if any other error occured or not */
// @DataMember(Name="ProcessResult")
// @ApiMember(DataType="boolean", Description="Overall status of processing the request. Each message will have it's own status. This value indicates if any other error occured or not", IsRequired=true, Name="ProcessResult", ParameterType="form")
public ProcessResult: boolean;
/** @description Description of any error occured, if ProcessResult equals false */
// @DataMember(Name="ProcessResultDescription")
// @ApiMember(DataType="string", Description="Description of any error occured, if ProcessResult equals false", Name="ProcessResultDescription", ParameterType="form")
// @StringLength(2048)
public ProcessResultDescription?: string;
/** @description Collection of messages sent or failed */
// @DataMember(Name="Messages")
// @ApiMember(Description="Collection of messages sent or failed", Name="Description", ParameterType="form")
public Messages: RestSmsMessageResp[] = [];
public constructor(init?: Partial<RestSmsResponse>) { (Object as any).assign(this, init); }
}
// @DataContract(Namespace="http://schemas.datacontract.org/2004/07/PushSmsLib.Dto")
export class RestSmsMessageReq
{
/** @description Gateway number. Default 99700999 for cross country delivery, non premium messages */
// @DataMember(Name="Gateway")
// @ApiMember(DataType="integer", Description="Gateway number. Default 99700999 for cross country delivery, non premium messages", IsRequired=true, Name="Gateway", ParameterType="form")
public Gateway: Object;
/** @description Originator address. Defaults to gateway number if not set. Maximum 11 chars if using alphanumeric value. See documentation for full details. */
// @DataMember(Name="OriginatorAddress")
// @ApiMember(DataType="string", Description="Originator address. Defaults to gateway number if not set. Maximum 11 chars if using alphanumeric value. See documentation for full details.", Name="OriginatorAddress", ParameterType="form")
public OriginatorAddress?: Object;
/** @description Destination address.The recipient of the message. Must be a valid MSISDN */
// @DataMember(Name="DestinationAddress")
// @ApiMember(DataType="integer", Description="Destination address.The recipient of the message. Must be a valid MSISDN", IsRequired=true, Name="DestinationAddress", ParameterType="form")
public DestinationAddress: Object;
/** @description Price to bill recipient. Premium messaging. Leave value to 0 if not using premium. Premium is only available on short number gateway number for each country available in documentation */
// @DataMember(Name="Price")
// @ApiMember(DataType="integer", Description="Price to bill recipient. Premium messaging. Leave value to 0 if not using premium. Premium is only available on short number gateway number for each country available in documentation", IsRequired=true, Name="Price", ParameterType="form")
public Price: Object;
/** @description Message type according to documentation. Defaults to 00 if not set. If text length is above 160 chars, it defaults to value 11 */
// @DataMember(Name="MessageType")
// @ApiMember(DataType="string", Description="Message type according to documentation. Defaults to 00 if not set. If text length is above 160 chars, it defaults to value 11", Name="MessageType", ParameterType="form")
public MessageType?: string;
/** @description Delivery expire timestamp (yyyymmddhhmmss) or relative value. See documentation and default value if not defined */
// @DataMember(Name="ValidationPeriod")
// @ApiMember(DataType="string", Description="Delivery expire timestamp (yyyymmddhhmmss) or relative value. See documentation and default value if not defined", Name="ValidationPeriod", ParameterType="form")
public ValidationPeriod?: Object;
/** @description Your unique message id to track delivery status and response from sending process */
// @DataMember(Name="MessageId")
// @ApiMember(DataType="string", Description="Your unique message id to track delivery status and response from sending process", Name="MessageId", ParameterType="form")
public MessageId?: string;
/** @description GSM User Data Header (HEX) */
// @DataMember(Name="UserDataHeader")
// @ApiMember(DataType="string", Description="GSM User Data Header (HEX)", Name="UserDataHeader", ParameterType="form")
public UserDataHeader?: string;
/** @description GSM User Data. Plain text or hex encoded. Depending on the used MessageType */
// @DataMember(Name="UserData")
// @ApiMember(DataType="string", Description="GSM User Data. Plain text or hex encoded. Depending on the used MessageType", IsRequired=true, Name="UserData", ParameterType="form")
public UserData: string;
/** @description Parameter to categorize messages on payment bill from Intele */
// @DataMember(Name="Category")
// @ApiMember(DataType="string", Description="Parameter to categorize messages on payment bill from Intele", Name="Category", ParameterType="form")
public Category?: string;
/** @description Custom key/value attributes for the Sms Text Message. See documentation for further details */
// @DataMember(Name="CustomData")
// @ApiMember(DataType="string", Description="Custom key/value attributes for the Sms Text Message. See documentation for further details", Name="CustomData", ParameterType="form")
public CustomData?: { [index:string]: Object; };
/** @description Url where Intele should send delivery report. See documentation for url formatting */
// @DataMember(Name="DeliveryReportUrl")
// @ApiMember(DataType="string", Description="Url where Intele should send delivery report. See documentation for url formatting", Name="DeliveryReportUrl", ParameterType="form")
public DeliveryReportUrl?: string;
/** @description For Premium messaging only. See documentation for further details */
// @DataMember(Name="ServiceCode")
// @ApiMember(DataType="string", Description="For Premium messaging only. See documentation for further details", Name="ServiceCode", ParameterType="form")
public ServiceCode?: string;
/** @description For Premium messaging only. See documentation for further details */
// @DataMember(Name="ServiceDescription")
// @ApiMember(DataType="string", Description="For Premium messaging only. See documentation for further details", Name="ServiceDescription", ParameterType="form")
public ServiceDescription?: string;
public constructor(init?: Partial<RestSmsMessageReq>) { (Object as any).assign(this, init); }
}
// @DataContract(Namespace="http://schemas.datacontract.org/2004/07/PushSmsLib.Dto")
export class RestSmsRequest
{
/** @description API Username. Usually your customer id */
// @DataMember(Name="Username")
// @ApiMember(DataType="string", Description="API Username. Usually your customer id", IsRequired=true, Name="Username", ParameterType="form")
// @StringLength(128)
public Username: Object;
/** @description API Password */
// @DataMember(Name="Password")
// @ApiMember(DataType="string", Description="API Password", IsRequired=true, Name="Password", ParameterType="form")
// @StringLength(128)
public Password: string;
/** @description Collection of messages to send */
// @DataMember(Name="Messages")
// @ApiMember(Description="Collection of messages to send", IsRequired=true, Name="Messages", ParameterType="form")
public Messages: RestSmsMessageReq[] = [];
public constructor(init?: Partial<RestSmsRequest>) { (Object as any).assign(this, init); }
}
TypeScript RestSmsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/RestSmsRequest HTTP/1.1
Host: smsgw.intele.no
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<RestSmsRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/PushSmsLib.Dto">
<Messages>
<RestSmsMessageReq>
<Category>String</Category>
<CustomData xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringanyType>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value />
</d4p1:KeyValueOfstringanyType>
</CustomData>
<DeliveryReportUrl>String</DeliveryReportUrl>
<DestinationAddress />
<Gateway />
<MessageId>String</MessageId>
<MessageType>String</MessageType>
<OriginatorAddress />
<Price />
<ServiceCode>String</ServiceCode>
<ServiceDescription>String</ServiceDescription>
<UserData>String</UserData>
<UserDataHeader>String</UserDataHeader>
<ValidationPeriod />
</RestSmsMessageReq>
</Messages>
<Password>String</Password>
<Username />
</RestSmsRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <RestSmsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/PushSmsLib.Dto"> <Messages> <RestSmsMessageResp> <ExtraInfo xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:KeyValueOfstringstring> <d4p1:Key>String</d4p1:Key> <d4p1:Value>String</d4p1:Value> </d4p1:KeyValueOfstringstring> </ExtraInfo> <MessageId>String</MessageId> <StatusCode>0</StatusCode> <StatusDescription>String</StatusDescription> <TransactionId>String</TransactionId> </RestSmsMessageResp> </Messages> <ProcessResult>false</ProcessResult> <ProcessResultDescription>String</ProcessResultDescription> </RestSmsResponse>