OVH Community, votre nouvel espace communautaire.

Bonne nouvelle pour les abonnés Free Mobile


SimonBHB
11/09/2014, 09h27
Pour le moment, je m'en sers surtout pour savoir si quelqu'un se connecte en root sur mon serveur^^.
Sinon toujours pas trouvé de solution simple.

gaboul49
10/09/2014, 09h40
Non car mon script fonctionne actuellement et que les messages que j'envoi son tous très court.

SimonBHB
09/09/2014, 13h21
tu as essayer pour voir si j'ai raison ?

gaboul49
09/09/2014, 07h14
Dans ce cas tu peux envoyer ton message en GET sans encodage. Le seul problème c'est le caractère & qui devra forcement être encodé.

SimonBHB
08/09/2014, 20h31
C'est peut être con, mais sans encodage et les données dans l'url en POST, j'ai recus le message en entier:


Par contre un accès directe à l'url(donc get) avec le message encodé:: message coupé

gaboul49
08/09/2014, 16h35
Essaye de passer en POST le contenu du msg et le reste des paramètres en GET.

SimonBHB
08/09/2014, 13h03
Le problème c'est que je reçois pas tout le message surtout si il y a un " même si c'est encodé et je sais pas pourquoi d'ou l'envie de tester en POST.

J'ai essayer de faire un formulaire avec les données dans l'url comme d'habitude(GET) et en même temps dans les input(POST) et j'ai tout reçus. Il doit donc peut être y avoir certain paramètres qui passent que par l'url.

gaboul49
08/09/2014, 10h29
J'ai également galéré en POST puis abandonné pour GET. J'ai l'impression que certains paramètres doit tout de même être présent dans l'adresse. Je n'ai pas poussé plus loin les investigations.

SimonBHB
07/09/2014, 12h49
personne ?

SimonBHB
06/09/2014, 13h06
LOL, mais tu sais bien que ça ne change rien au formulaire, tu caches juste l'input^^.

Je ne vois pas où est le problème, car si on passe en post on doit faire comme je l'ai fait. Moi j'aimerais surtout passer en POST pour des messages longs genre 300caractères et ne pas avoir d'encodage.

Certains messages arrivent pas entier, on dirait que si il y à un ", le message est pas en entier même si il est encodé, ça m'énerve.

Daniel60
06/09/2014, 08h04
As-tu essayé input type="hidden" ?

Gaston_Phone
05/09/2014, 22h21
Non, mais je suis preneur de la solution par POST.

SimonBHB
05/09/2014, 21h42
Bonjours, ils disent qu'on peut le faire en POST et qu'on à pas besoin d'encoder, mais pourtant j'ai un retour 400 ce qui veut dire qu'il manque un paramètre.

Pour tester j'ai essayé:





Savez vous pourquoi ?

Daniel60
04/09/2014, 08h20
Citation Envoyé par gaboul49
I don't have any problem. I'm just sharing my code.

Il arrive parfois que les serveurs de Free retourne un message d'erreur, peut-être sont-ils surcharger. Pour un système parfaitement fiable il faudra prévoir un "callback" pour procéder à un nouvel envoi quelques secondes/minutes plus tard.
Mathew L. Carro est un robot !

gaboul49
04/09/2014, 07h33
I don't have any problem. I'm just sharing my code.

Il arrive parfois que les serveurs de Free retourne un message d'erreur, peut-être sont-ils surcharger. Pour un système parfaitement fiable il faudra prévoir un "callback" pour procéder à un nouvel envoi quelques secondes/minutes plus tard.

- - - Mise à jour - - -

I don't have any problem. I'm just sharing my code.

Il arrive parfois que les serveurs de Free retourne un message d'erreur, peut-être sont-ils surcharger. Pour un système parfaitement fiable il faudra prévoir un "callback" pour procéder à un nouvel envoi quelques secondes/minutes plus tard.

Gaston_Phone
13/06/2014, 11h51
Merci Gaboul pour ces infos.

gaboul49
13/06/2014, 11h23
En fait c'est curl qui ne parvenait pas à vérifier le certificat SSL de free car je n'ai pas installé les bases PEM. J'ai essayé de récupérer le PEM du site de free avec la commande

openssl s_client -connect smsapi.free-mobile.fr:443 -prexit 2>/dev/null
et de l'injecter comme ça :

curl_setopt($ch, CURLOPT_CAINFO, '../smsapi.free.pem');
mais ça ne marche pas. Il faut installer toutes les bases mais je n'ai pas envie de faire ça.

Voici ce qui marche pour moi (ATTENTION : La vérification du certificat est désactivée dans le code ci-dessous. Avec un DNS menteur un hackeur peut lire vos SMS).
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://smsapi.free-mobile.fr/sendmsg?user='.$id.'&pass='.$password.'&msg='.urle ncode($msg));
curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
print_r($info);
En POST ça devrait fonctionner avec le code si dessous mais free ne reçoit pas les paramètres... Je quelqu'un à une astuce ça m'intéresse
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
curl_setopt($ch, CURLOPT_POSTFIELDS, array (
'user' => $id,
'pass' => $password,
'msg' => $msg
));
Et enfin pour éviter que votre script plante si jamais le serveur de free est en rade, vous pouvez ajouter les timeout qui font bien

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 1); // Max waiting time for server response (second)
curl_setopt($ch, CURLOPT_TIMEOUT, 1); // Max execution time (second)

Gaston_Phone
13/06/2014, 10h49
Citation Envoyé par gaboul49
C'est merveilleux cette option. En plus ça fonctionne aussi pour les forfaits 2€.
Merci pour le test avec les Forfaits à 2 €.

Citation Envoyé par gaboul49
Vous utilisez quoi pour envoyer le SMS depuis PHP ? J'essaye avec CURL avec les variables en GET mais ça ne donne rien.
Pour le moment un simple lien :
Envoyer le SMS

gaboul49
13/06/2014, 10h27
Vous utilisez quoi pour envoyer le SMS depuis PHP ? J'essaye avec CURL avec les variables en GET mais ça ne donne rien.

gaboul49
13/06/2014, 10h20
C'est merveilleux cette option. En plus ça fonctionne aussi pour les forfaits 2€.

gaboul49
13/06/2014, 10h16
C'est merveilleux cette option. En plus ça fonctionne aussi pour les forfaits 2€.

Gaston_Phone
12/06/2014, 22h55
Le plouc, c'est moi.

Noxiweb
12/06/2014, 22h28
Bon c'est cool alors car de mon côté ça fonctionnait directement sans soucis particulier donc je ne comprenais pas trop.

Gaston_Phone
12/06/2014, 22h07
Autant pour moi, cela fonctionne depuis un script PHP dans mon hébergement mutualisé PERSO OVH.

Ayant par mégarde activé DEUX fois ce processus, je n'avais utilisé que la 1ère clé. Avec le 2ème et dernière clé, le service est ok et immédiat.

Gaston_Phone
12/06/2014, 21h43
Citation Envoyé par Noxiweb
Ou même si tu appelles l'URL dans ton navigateur ça donne une 404 ?
Bien évidemment, j'avais déjà fait ce contrôle avec aussi l'erreur 404.
Même "https://smsapi.free-mobile.fr" dans Firefox me donne un 404.

Noxiweb
12/06/2014, 18h59
Et ça ne fonctionne pas uniquement une fois intégré dans ton script ?
Ou même si tu appelles l'URL dans ton navigateur ça donne une 404 ?

Gaston_Phone
12/06/2014, 17h42
Citation Envoyé par Noxiweb
Dans l'URL, avant le "msg=", il te manque un "&"
Merci Noxiweb, il y a bien &msg. Mais en masquant mon code, j'ai supprimé aussi par mégarde le "&".

Mais cela ne change rien avec l'erreur 404 obtenue avec une URL correcte.

Noxiweb
12/06/2014, 16h27
Dans l'URL, avant le "msg=", il te manque un "&"

Gaston_Phone
12/06/2014, 13h47
Je viens de tester depuis mon hébergement mutualisé PERSO OVH.
--> https://smsapi.free-mobile.fr/sendms...zzz&msg=azerty

Et ... j'obtiens un magnifique 404.

Gaston_Phone
12/06/2014, 11h01
Merci Noxiweb pour cette information.

Noxiweb
12/06/2014, 00h58
Bonjour,

Je sais que nous sommes nombreux ici à faire du monitoring de sites/serveurs avec alertes SMS.

Bonne nouvelle pour les abonnés Free Mobile, vous n'aurez plus besoin de passer par un prestataire externe payant, Free propose désormais une passerelle pour envoyer des SMS gratuitement vers votre numéro à partir d'un script :

http://www.universfreebox.com/articl...eils-connectes

Très pratique