Service de gestion des campagnes SMS
Contrat WSDLhttp://api.dolist.net/V2/SmsService.svc?wsdl
Exemple disponible
  • Implémentation en PHP.

  • Définition

    Le service de gestion des campagnes SMS vous permet de piloter la création et l'envoi de vos campagnes SMS.
    De la création du message SMS à l'envoi, vous pourrez tout gérer à partir de ce service.

    Récupération d'un message SMS

    Nom de la méthode : GetMessage

    Cette méthode vous permet de récupérer les détails de votre messages SMS.
    En fonction de l'identifiant passé, vous récupérerez son nom, son contenu, le nombre de caractères présents, la date de la dernière modification et les identifiants des groupes utilisateurs qui ont accès à ce message.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    messageIdintIdentifiant du message
    Les valeurs renvoyées
    TypeDescription
    MessageRenvoie l'objet "Message" demandé

    Création d'un message SMS

    Nom de la méthode : CreateMessage

    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    messageMessageObjet "Message"
    Les valeurs renvoyées
    TypeDescription
    MessageRenvoie l'objet "Message" créé

    Mise à jour d'un message SMS

    Nom de la méthode : UpdateMessage

    Appelez cette méthode dès que vous avez besoin d'effectuer une modification sur votre message SMS.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    messageMessageObjet "Message"

    Création d'une campagne SMS

    Nom de la méthode : CreateCampaign

    Cette méthode permet de créer une campagne SMS.
    Vous définirez l'identifiant du message SMS et les identifiants des groupes utilisateurs qui pourront accéder à cette campagne.

    Si vous utilisez un expéditeur personnalisé, vous devez intégrer la phrase de désabonnement : STOP AU 36612.
    Le 36612 sera modifié directement en fonction de l'opérateur destinataire.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    messageIdintIdentifiant du message
    listUsersGroupsint[] Identifiants des groupes utilisateurs
    senderIdintIdentifiant de l'expéditeur personnalisé
    Les valeurs renvoyées
    TypeDescription
    intRenvoie l'identifiant de la campagne créée

    Statut d'une campagne SMS

    Nom de la méthode : GetCampaign

    Vous pouvez récupérer le statut de votre campagne en appelant cette méthode.
    Un retour vous sera effectué sur le statut de la campagne, la date d'envoi de la campagne, le nombre de contacts destinataires, le nombre de sms envoyés ainsi que d'autres informations que vous retrouverez à partir de l'objet "SmsCampaign".
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    campaignIdintIdentifiant de la campagne
    Les valeurs renvoyées
    TypeDescription
    SmsCampaignRenvoie l'objet "SmsCampaign"

    Simulation d'un envoi

    Nom de la méthode : SendCampaignSimulate

    Cette méthode vous permet de simuler l'envoi d’une campagne SMS afin d'évaluer le nombre de contacts et de SMS générés avant l'envoi.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    requestSendCampaignSimulateRequestInformations sur la demande de simulation

    Envoi en mode REEL

    Nom de la méthode : SendCampaign

    L'appel de cette méthode vous permet d'envoyer votre campagne en mode REEL à un segment de votre base de contacts.
    Précisez la date d'envoi ainsi que le préfixe téléphonique (par défaut : +33) et votre campagne sera envoyée dans vos conditions.

    L'envoi en mode TEST est obligatoire.
    Vous ne pourrez pas envoyer de campagnes SMS en mode REEL si un BAT n'a pas été réalisé auparavant.
    L'envoi de SMS commerciaux est formellement interdit pendant les heures comprises entre 20h30 et 8h00 les jours calendaires, le dimanche toute la journée et les jours fériés.
    Cet horaire peut plus ou moins varier selon les opérateurs.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    campaignIdintIdentifiant de la campagne
    segmentIdintIdentifiant du segment
    sendDatedateTimeDate d'envoi
    defaultPrefixstringPréfixe téléphonique international par défaut (ex: "+33" pour la France)
    memberActionintAction à mener sur les contacts multiples
    Le paramètre "MemberAction" accepte les valeurs
    • 0 : Ne rien changer aux contacts. Expédier en l'état.
    • 1 : Retirer les contacts présents plusieurs fois.
    • 2 : Ne pas envoyer la campagne.

    Envoi en mode TEST

    Nom de la méthode : SendCampaignBAT

    Cette méthode permet d'envoyer un BAT.
    Précisez l'identifiant de votre campagne, le préfixe téléphonique ainsi que l'identifiant du segment et votre campagne Test sera prise en compte dans les plus brefs délais.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    campaignIdintIdentifiant de la campagne
    segmentIdintIdentifiant du segment
    defaultPrefixstringPréfixe téléphonique international par défaut (ex: "+33" pour la France)
    memberActionintAction à mener sur les contacts multiples
    Le paramètre "MemberAction" accepte les valeurs
    • 0 : Ne rien changer aux contacts. Expédier en l'état.
    • 1 : Retirer les contacts présents plusieurs fois.
    • 2 : Ne pas envoyer la campagne.

    Récupération d'un expéditeur personnalisé

    Nom de la méthode : GetSender

    Cette méthode permet de récupérer l'identifiant et le nom d'un expéditeur personnalisé.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    senderIdintIdentifiant de l'expéditeur personnalisé
    Les valeurs renvoyées
    TypeDescription
    SmsSenderRenvoie l'objet "Expéditeur personnalisé"

    Récupération des expéditeurs personnalisés

    Nom de la méthode : GetSenders

    Cette méthode permet de récupérer l'ensemble des identifiants et des noms d'expéditeurs personnalisés.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    Les valeurs renvoyées
    TypeDescription
    SmsSender[] Renvoie la liste des objets "Expéditeur personnalisé"

    Création d'un expéditeur personnalisé

    Nom de la méthode : CreateSender

    Cette méthode permet de créer un expéditeur personnalisé.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    namestringNom de l'expéditeur personnalisé
    Les valeurs renvoyées
    TypeDescription
    intRenvoie l'identifiant de l'expéditeur personnalisé créé

    Mise à jour d'un expéditeur personnalisé

    Nom de la méthode : UpdateSender

    Cette méthode permet de mettre à jour un expéditeur personnalisé.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    senderSmsSenderObjet "Expéditeur personnalisé"
    Les valeurs renvoyées
    TypeDescription
    booleanIndique si la mise à jour a été effectuée

    Suppression d'un expéditeur personnalisé

    Nom de la méthode : DeleteSender

    Cette méthode permet de supprimer un expéditeur personnalisé.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    senderIdintIdentifiant de l'expéditeur personnalisé
    Les valeurs renvoyées
    TypeDescription
    booleanIndique si la suppression a été réussie

    Récupération des statistiques des campagnes

    Nom de la méthode : GetCampaigns

    Cette méthode permet de récupérer les statistiques de vos campagnes SMS
    Définissez vos critères de filtrage pour récupérer les statistiques souhaitées.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    filtersCampaignFilterCritères de filtrage
    Les valeurs renvoyées
    TypeDescription
    SmsCampaign[] Liste des objets "SmsCampaign"

    Récupération des identifiants des campagnes

    Nom de la méthode : GetCampaignsId

    Cette méthode permet de récupérer les identifiants de vos campagnes SMS en fonction de critères de filtrage.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    filtersCampaignFilterCritères de filtrage
    Les valeurs renvoyées
    TypeDescription
    int[] Liste des identifiants de campagnes

    Récupération des statistiques des campagnes en fonction de leurs identifiants

    Nom de la méthode : GetStatistics

    Cette méthode permet de récupérer les statistiques de vos campagnes SMS en fonction de leurs identifiants.
    Les paramètres attendus en entrée
    ChampTypeDescription
    tokenAuthenticationTokenContextAuthentification
    campaignsIdint[] Liste des identifiants de campagnes SMS
    Les valeurs renvoyées
    TypeDescription
    SmsStatistics[] Liste des objets "SmsStatistics"

    Les objets du service de gestion des campagnes SMS

    AuthenticationTokenContext

    ChampTypeDescription
    AccountIDintIdentifiant du client
    KeystringClé du jeton d'authentification
    ListIDintIdentifiant du client: obsolète. Utilisez AccountID à la place

      ServiceException

      Exception renvoyée en cas d'erreur à l'appel d'une methode.
      ChampTypeDescription
      TicketstringLe numéro de ticket
      MessagestringLe message d'erreur
      DescriptionstringLa description de l'erreur
      ErrorCodeTypeErrorCodeTypeType du code de l'erreur
      ErrorCodeintCode de l'erreur

        Message

        Objet représentant un message.
        ChampTypeDescription
        IdintIdentifiant du message
        LengthintNombre de caractères présents dans le message
        NamestringNom du message
        TextstringContenu du message
        UpdateDatedateTimeDate de la dernière modification
        UserGroupIdListint[] Identifiants des groupes utilisateurs

          SmsCampaign

          Objet représentant une campagne SMS.
          ChampTypeDescription
          ActionMembersMultipleintAction sur les contacts multiples
          DateCreatedateTimeDate de création
          DateSenddateTimeDate d'envoi
          DefaultPrefixstringPréfixe téléphonique international utilisé par défaut
          IdintIdentifiant de la campagne
          ListIdintIdentifiant de la base
          MessageMessageMessage associé
          NbMembersintNombre de contacts destinataires
          NbMembersRefusedintNombre de contacts refusés
          NbMobileDistinctintNombre distinct de contacts destinataires
          NbSMSintNombre de SMS envoyés
          NbSimulateMembersintNombre de contacts destinataires déterminés lors de la dernière simulation d'envoi
          NbSimulateMembersRefusedintNombre de contacts refusés déterminés lors de la dernière simulation d'envoi
          NbSimulateMobileDistinctintNombre distinct de mobiles déterminés lors de la dernière simulation d'envoi
          NbSimulateSMSDistinctintNombre de SMS à envoyer sur les mobiles uniques déterminés lors de la dernière simulation d'envoi
          NbSimulateSmsintNombre de SMS à envoyer déterminés lors de la dernière simulation d'envoi
          SegmentIdintIdentifiant du segment
          StatusintStatut de la campagne
          TestModebooleanIndique s'il s'agit d'un BAT

            SendCampaignSimulateRequest

            ChampTypeDescription
            CampaignIdintIdentifiant de la campagne
            DefaultPrefixstringPréfixe téléphonique international par défaut (ex: "+33" pour la France)
            SegmentIdintIdentifiant du segment

              SmsSender

              ChampTypeDescription
              IdintIdentifiant de l'expéditeur personnalisé
              NamestringNom de l'expéditeur personnalisé

                CampaignFilter

                ChampTypeDescription
                AllCampaignsbooleanToutes les campagnes
                CampaignsRecentlySentCountintLes X dernières campagnes
                DatedateTimeDate à partir de laquelle les campagnes doivent être récupérées

                  SmsStatistics

                  ChampTypeDescription
                  CampaignIdintIdentifiant de la campagne
                  SmsDeliveredCountintNombre de SMS aboutis
                  SmsPendingCountintNombre de SMS en cours d’envoi ou erreur temporaire
                  SmsRejectedCountintNombre de SMS en erreur définitive
                  SmsSentCountintNombre de SMS envoyés
                  SmsUnitInternationalSentCountintNombre de SMS unitaires envoyés à l'international
                  SmsUnitNationalSentCountintNombre de SMS unitaires envoyés en France
                  SmsUnitSentCountintNombre de SMS unitaires envoyés
                  UnsubscribedCountintNombre de contacts désabonnés

                    Liste des erreurs communes

                    CodeNomDescription
                    0UnexpectedExceptionErreur inattendue
                    1AuthenticationExceptionErreur d'authentification
                    2NullTokenExceptionLe token est null, vérifiez que l'objet est correctement passé à la méthode et que les propriétés sont renseignées
                    3NullRequestExceptionL'objet 'request' est null, vérifiez que l'objet est correctement passé à la méthode et que les propriétés sont renseignées
                    4ForbiddenActionExceptionL'action demandée n'est pas autorisée
                    5InvalidArgumentExceptionLes arguments passés à la méthode ne sont pas valides, vérifiez les types des propriétés, leurs noms et leur nullité
                    6BadRequestExceptionLa requête n'est pas correcte
                    7NothingToDoExceptionLa requête demandée n'effectue aucun traitement, car les données soient déjà à jour, il est possible que la requête ai été exécuté plusieurs fois
                    8InvalidDataTypeExceptionLe type de donnée n'est pas valide
                    9UnknownTicketExceptionLe ticket n'est pas connu, vérifiez la valeur de celui-ci
                    10UnavailableTicketResultExceptionLe résultat associé n'est pas disponible, le traitement de la demande n'est pas terminé, veuillez réessayer plus tard.
                    11InvalidDatePeriodExceptionL'intervalle de temps n'est pas valide, vérifiez les dates passées à la requête
                    999998TokenNullLe token est null, vérifiez que l'objet est correctement passé à la méthode et que les propriétés sont renseignées
                    999999TokenNotAuthorizedL'objet 'token' n'est pas autorisé, vérifiez les propriétés