Envoyez et recevez des messages SMS depuis une application C#
Vous construisez une application en C# et vous souhaitez envoyer des messages SMS. Grâce à notre API HTTP ou REST, réalisez dans votre environnement de développement, l’envoi de messages sur un numéro de mobile. Que ce soit un message d’alerte ou une action marketing, vous pouvez envoyer et recevoir des messages SMS directement depuis n’importe quelle application C#.
Les avantages de l’envoi de SMS en C#
Une API SMS compatible avec le langage de programmation C# est une passerelle qui vous permet de vous connecter directement à notre plateforme SMS.
Compatible avec l’ensemble des langages de programmation aux requêtes HTTP GET et POST, la documentation complète et gratuite permet une intégration simple et rapide.
Hébergées en France, dans un data-center de niveau 4, nos API SMS vous garantissent un maximum de sécurité notamment grâce au protocole HTTPS. Notre plateforme est certifiée ISO 27001 & 27701
Notre infrastructure est surveillée 24h/24, 7 jours/7 et 365 jours par an, afin d’assurer une haute disponibilité et une résistance à la panne.
L’ensemble de notre équipe de développeurs dédiée est disponible pour vous aider à intégrer nos APIs SMS ou répondre à vos questions.
GUIDE DE DÉMARRAGE
Comment envoyer des SMS en C# ?
La configuration de notre webservice dans votre développement C# est simple et rapide à mettre en place. L’exemple de code C# suivant vous donne un bref aperçu de la façon d’ajouter des fonctionnalités de SMS à votre site Web ou application.
using System;
using System.IO;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using System.Text;
using System.Web;
/**
* Function parameters:
*
* - accessToken (required)
* - message (required)
* - destinataires (required): Receivers separated by a comma
* - emetteur (optional): Allows to deal with the sms sender
* - optionStop (optional): Deal with the STOP sms when marketing send (cf. API HTTP documentation)
* - batchFilePath (required for batch mode): The path of CSV file for sms in Batch Mode
*/
namespace ExempleClientHttpApi
{
public class ExempleClientHttpApi {
private static string URL = "https://api.smsmode.com/http/1.6/";
private static string PATH_SEND_SMS = "sendSMS.do";
private static string PATH_SEND_SMS_BATCH = "sendSMSBatch.do";
private static string ERROR_API = "Error during API call\n";
private static string ERROR_FILE = "The specified file does not exist\n";
private static readonly HttpClient _httpClient= new HttpClient();
public ExempleClientHttpApi()
{
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
}
// send SMS with GET method
public string sendSmsGet(string accessToken, string message, string destinataires, string emetteur, string optionStop) {
string urlEncodedMessage = HttpUtility.UrlEncode(message, Encoding.GetEncoding("ISO-8859-15"));
string finalUrl = URL + PATH_SEND_SMS + "?accessToken=" + accessToken + "&numero=" + destinataires + "&message=" + urlEncodedMessage + "&emetteur=" + emetteur + "&stop=" + optionStop;
return Get(finalUrl).Result;
}
public static async Task Get(string url){
try {
var response = await _httpClient.GetAsync(url);
string result = await response.Content.ReadAsStringAsync();
return result;
} catch (Exception) {
return ERROR_API;
}
}
// send SMS with POST method
public string sendSmsPost(string accessToken, string message, string destinataires, string emetteur, string optionStop) {
string finalUrl = URL + PATH_SEND_SMS;
StringBuilder sb = new StringBuilder();
sb.Append("accessToken=" + accessToken);
sb.Append("&numero=" + destinataires);
sb.Append("&emetteur=" + emetteur);
sb.Append("&message=" + HttpUtility.UrlEncode(message, Encoding.GetEncoding("ISO-8859-15")));
sb.Append("&stop=" + optionStop);
return Post(finalUrl ,Encoding.Default.GetBytes(sb.ToString())).Result;
}
public static async Task Post(string url, byte[] data){
ByteArrayContent byteContent = new ByteArrayContent(data);
byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded");
try {
var response = await _httpClient.PostAsync(url, byteContent);
string result = await response.Content.ReadAsStringAsync();
return result;
} catch (Exception) {
return ERROR_API;
}
}
// send SMS with POST method (batch)
public string sendSmsBatch(string accessToken, string batchFilePath, string optionStop) {
if (!File.Exists(batchFilePath)) {
return ERROR_FILE;
}
string finalUrl = URL + PATH_SEND_SMS_BATCH + "?accessToken=" + accessToken + "&stop=" + optionStop;
return PostBatch(finalUrl , File.ReadAllBytes(batchFilePath), batchFilePath).Result;
}
public static async Task PostBatch(string url, byte[] data, string batchFilePath) {
var requestContent = new MultipartFormDataContent();
ByteArrayContent byteContent = new ByteArrayContent(data);
byteContent.Headers.ContentType = MediaTypeHeaderValue.Parse("text/csv");
requestContent.Add(byteContent, "file", batchFilePath);
try {
var response = await _httpClient.PostAsync(url, requestContent);
string result = await response.Content.ReadAsStringAsync();
return result;
} catch (Exception) {
return ERROR_API;
}
}
}
}
La documentation complète de notre API HTTPs détaille toutes les fonctionnalités et requêtes disponibles sur notre passerelle SMS
Le SDK C# vous permettra de configurer :
• La consultation du crédit restant
• L’envoi d’un SMS à de multiples destinataires
• La gestion de vos contacts
• La programmation de la date et heure d’envoi
• L’envoi de notifications par SMS
• Les statistiques de réception des campagnes envoyées (status reçu)
Il est compatible avec :
ISO-8859-15
PHP
Java
ASP
C++
Ruby
WINDEV
Pourquoi utiliser notre passerelle SMS ?
Plateforme de messagerie mobile pour les professionnels depuis 2004, smsmode© a développé de nombreuses garanties de service. L’entreprise est engagée dans l’amélioration continue de ses performances et de la qualité de son service d’envoi.
Sans abonnement ni frais fixes, l’utilisation de notre API HTTP est open source, gratuite et sans engagement. Seul le coût des SMS envoyés (coût dégressif en fonction du volume d’envoi) vous sera débité !
Nos envois SMS sont donc effectués en route directe vers les opérateurs français (pas de recours au roaming en France et Monde). Vous êtes assurés d’avoir un service fiable et un prix compétitif.
Les canaux marketing et notification sont ainsi traités indépendamment et offrent donc des performances optimisées. Le débit d’envoi est supérieur, la gestion du STOP plus sûre, etc.
Bénéficiez d’un système constant d’alerte et de surveillance. L’état du trafic passant par notre webservice est visible en temps réel. Vous pouvez à tout moment consulter l’état du système via notre StatusPage.
Des services supplémentaires sont à votre disposition pour une utilisation plus avancée du SMS marketing : réception, optimisation de base de données, SMS vocaux, marque blanche, mot de passe OTP, etc.
Nos équipes support & développement sont à votre disposition pour répondre à vos questions techniques, et vous aider à implémenter notre API en C#. Vous pouvez également consulter notre documentation complète.
Créez votre compte gratuitement
Essayez notre plateforme SMS et bénéficiez de 20 crédits de tests offerts, sans engagement.