Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Demande d'évolution : ajout de paramètres pour envoi de SMS avec OVH #485

Open
cleneveu opened this issue Jan 29, 2025 · 3 comments
Open

Comments

@cleneveu
Copy link

Bonjour,

Est-ce possible de rajouter les properties suivantes dans le cas d'envoi de SMS avec OVH :

  • senderForResponse: false ==> permet de mettre un nom alpha numerique en sender au mieu d'un numéro court
  • noStopClause: true ==> désactive la possibilité de répondre au SMS

En pratique dans application.yml avec le service OVH on aurait comme paramétrage :

sms:
    enable-sms : true
    service-name: OVH
    url: UN_URL # peu importe ça ne sert pas ici
    username: ECM # le nom en alpha numérique du sender déclaré chez OVH, ECM dans notre cas 
    consumerKey: MON_CONSUMMER_KEY 
    apiKey: MON_API_KEY
    password: MON_API_SECRET # cas OVH
    senderForResponse: false
    noStopClause: true

Dans OVHSmsService.java ça donnerait pour la méthode sendSms:

    @Override
    public void sendSms(String phoneNumber, String message) throws EsupSignatureRuntimeException {
        String METHOD = "POST";
        try {
            String ServiceName = objectMapper.readValue(getSmsAccount(), String[].class)[0];
            URL    QUERY  = new URI("https://eu.api.ovh.com/1.0/sms/"+ServiceName+"/jobs").toURL();
            String BODY   = "{\"receivers\":[\"+33" + phoneNumber.substring(1, 10) + "\"],\"message\":\""+ message + "\",\"priority\":\"high\",\"senderForResponse\":"+smsProperties.getSenderForResponse()+",\"sender\":\""+smsProperties.getUsername()+"\",\"noStopClause\":"+smsProperties.getSenderForResponse()+"}";
            StringBuffer response = getStringBuffer(METHOD, QUERY, BODY,  true);
            logger.info("sms sended : " + response.toString());
        } catch (IOException | URISyntaxException e) {
            throw new EsupSignatureRuntimeException(e.getMessage(), e);
        }

    }

J'ai testé (en test unitaire) et ça fonctionne bien.

Bonne journée

Clément

Centrale Med.

@dlemaignent
Copy link
Collaborator

Bonjour,
Pas de problème pour ajouter ces paramètres. Je me pose la question du +33 qui limite l'usage du connecteur ovh à la france seule. Je me demande s'il serait possible de le supprimer pour qu'il soit saisi directement au niveau du champ numéro de mobile ?

@cleneveu
Copy link
Author

Bonjour David,
D'abord merci pour l'ajout des paramètres. C'est aussi une bonne idée de ne pas coder le +33 en dur par contre ça suppose :

  • d'avoir quand même un indicatif par défaut (aussi dans les properties)
  • de pouvoir sélectionner un pays d'envoi dans l'interface afin d'avoir l'indicatif dudit pays.

Bref c'est un peu plus de boulot, cela étant il nous arrive d'avoir, par exemple, des stages à l'étranger et donc potentiellement des conventions de stage à faire signer à des résidents étrangers. Donc l'évolution serait en effet utile.

@cleneveu
Copy link
Author

J'ajoute que je suis tombé sur ce projet : https://github.com/jackocnr/intl-tel-input?tab=readme-ov-file#demo-and-examples
Qui doit répondre pas mal à la problématique du n° de tel, si ça permet d'aller plus vite :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants