IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Cadeau PDU Mode SMS


Sujet :

WinDev

  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 177
    Points : 232
    Points
    232
    Par défaut Cadeau PDU Mode SMS
    Bonjour à tous, j'ai récemment travaillé sur le mode PDU.. Pour ceux qui ne savent pas ce que c'est, c'est le mode de cryptage d'informations pour envoyer un SMS.. Le but est d'envoyer un sms à partir de son ordinateur

    Je vais essayer d'être assez clair dans mes explications

    Chaque lettre avant d'être envoyé est :
    - remplacée par sa valeur ASCII
    - Ensuite traduite en Binaire mais sur 7 bits
    - Ensuite traduire le binaire 7 bits sur une base 7 de 8 bits (et c'est la que c'est drôle ^^ )
    - Pour finalement le traduire en Hexadécimal et envoyé l'infos.

    Les sources :
    http://www.dreamfabric.com/sms/ (pour l'envoi complet d'un sms)
    http://www.dreamfabric.com/sms/hello.html (pour la base 7 sur 8 bits)

    En principe mon code est prévu pour que peu importe la taille du sms il passe.. Je n'ai pas encore su faire TOUT les tests.. Mais il semble plus que correct. Et par solidarité je vais le poster non pas pour ceux qui seront fainéant de le faire un jour, mais pour ceux qui après de longues recherches auront trouvés que très peu d'infos utiles..

    (Veuillez excuser si par endroit il n'est pas le plus optimisé des codes mais s'y retrouver n'était pas une mince affaire ^^)

    la partie conversion de l'ascii au binaire ne sera pas présentée car elle est en soi assez simple ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    sChai1, sChai2, sChai3, sChai4 sont des chaîne ANSI
    i, nDim1, k, j, m est un entier = 0
    nTest est un entier 
    nCompt,nCompt2 est un entier
    nDim1 = (Taille(LIB_Bin)/7)
    tab1 est un tableau de nDim1 chaînes ANSI
    tab2 est un tableau de nDim1 chaînes ANSI
     
    LIB_Hexa = ""
    POUR i = 0 _A_ nDim1
    	// On va lire les 7 bits
    	sChai1 = Lecture7Bit(i)
    	// On tronque les M bits à droites
    	sChai2 = TruncD(sChai1, m)
    	// On tronque les M bits à gauche
    	sChai3 = TruncG(sChai1, m)
     
    	nTest = modulo(i,8)
    	SI nTest = 0 ALORS
    		m = 0
    	FIN
    	m++
     
    	SI i <> 0 ALORS
    			j++
    			tab2[j] = sChai2	
    	FIN
    	k++
    		SI k < nDim1+1 ALORS
    				tab1[k] = sChai3 
    		FIN
    FIN
    POUR i = 1 _A_ nDim1
    	SI i+1 <= nDim1 ALORS
    		SI tab1[i+1] <> EOT  ALORS
    			sChai4 += tab2[i] + tab1[i]
    		SINON
    			sChai4 += tab2[i+1] + tab2[i]
    			tab1[i+1] = ""
    			tab2[i+1] = ""
    		FIN
    	SINON
    		sChai4 += tab2[i] + tab1[i]
    	FIN
    FIN
    //Affiche résultat
    LIB_B7 = sChai4
     
    nCompt = Taille(sChai4)
    nCompt = nCompt/ 8
    nCompt2= modulo(Taille(sChai4),8)
     
    proc_Hexa(nCompt,nCompt2)
    La procédure lecture7bits
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    sLChaine est une chaîne = LIB_Bin
    sResul est une chaîne ANSI
     
    sResul = Milieu(sLChaine, (Ind*7 + 1), 7)
     
    RENVOYER sResul
    La procédure truncD
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    sMResult est une chaîne ANSI
     
    sMResult = Droite(mChaine, Ind)
    RENVOYER sMResult
    La procédure truncG
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    sDResult est une chaîne ANSI
     
    sDResult = Gauche(dChaine, (7 - Ind))
     
    RENVOYER sDResult
    Et enfin la dernière proc_Hexa
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    nInd est un entier = 0
    nTemp est un entier
    nTemp2 est un entier
     
     
    POUR i = 1 _A_ nCompt
    	nTemp = Milieu(LIB_B7,(nInd*8 +1),8)
    	nTemp2 = Val(nTemp,2)
    	LIB_Hexa+= Droite(EntierVersHexa(nTemp2),2)
    	nInd ++
    FIN
    nTemp = Droite(LIB_B7,ncompt2)
    nTemp2 = Val(nTemp,2)
    LIB_Hexa += Droite(EntierVersHexa(nTemp2),2)

    Pour ceux qui ont des questions je suis dispo pour vous répondre, pour ceux qui ont des suggestions je suis tout ouïe..

    Je le répète il est vérifié à 98% .. L'envoi complet de sms n'est pas encore finalisé et la simbox pas encore reçue ^^


    J'espère que ce tuto vous sera très utile.


    Bonne continuation à tous, et long vie à ce forum !
    Bon Dev
    La touche F1 est proche de vous !
    Oubliez pas de voter

  2. #2
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 158
    Points : 9 107
    Points
    9 107
    Par défaut
    Merci pour ce tuto. Néanmoins, tu aurais du le mettre dans la rubrique "contribuez".
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  3. #3
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 177
    Points : 232
    Points
    232
    Par défaut
    oups j'ai cherché dans le cadre juste en dessous.. Je vais voir pour le déplacer alors. Merci bien
    Bon Dev
    La touche F1 est proche de vous !
    Oubliez pas de voter

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 158
    Points : 9 107
    Points
    9 107
    Par défaut
    Y'a pas de mal
    Demande à un modérateur, ça sera plus simple, je pense.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 133
    Points : 127
    Points
    127
    Par défaut
    remarque un peu "light", c'est quoi une simbox, et à quoi sert ta précieuse contribution?

    merci

  6. #6
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2011
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 177
    Points : 232
    Points
    232
    Par défaut
    Simbox est une plate-forme logicielle basée sur PC offrant la possibilité de créer, modifier, gérer et déployer du contenu basée sur la simulation - avions, voitures, bateaux, armes, matériel d'apprentissage électronique et plus - à travers une multitude de domaines, tels que la formation, la recherche & développement, les opérations d'analyse et de divertissement.

    En somme elle va permettre d'envoyer des SMS à partir du pc..

    L'ordinateur communique un SMS à la Simbox et lui l'envoie vers le centre de messagerie qui enverra le message au destinataire souhaité.

    Ma contribution servira à tout ceux qui auront besoin d'envoyer des SMS à partir d'un pc..

    Cela évitera de se prendre la tête à décortiquer chaque démarche à faire pour codifier le SMS.
    Bon Dev
    La touche F1 est proche de vous !
    Oubliez pas de voter

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2012
    Messages : 58
    Points : 33
    Points
    33
    Par défaut
    Salut à tous,

    Je relance ce topic car il me semble que j'ai un petit problème pour envoyer un SMS en multi partie

    En fait, selon ce topic : http://hiteshagja.com/send-long-sms/ pour envoyer un SMS en multi-partie il faudra passer par deux étapes :
    1) L'ajout de UDH
    2) Ajout d'un bit de padding pour l'encodage 7bits PDU

    Mon problème c'est comment ajouter ce bit de padding dans le code de GiGii

    Merci à tous

Discussions similaires

  1. [WD17] Décoder Mode PDU
    Par GiGii dans le forum WinDev
    Réponses: 18
    Dernier message: 21/09/2017, 15h51
  2. Cadeau PDU Mode SMS
    Par GiGii dans le forum Contribuez
    Réponses: 0
    Dernier message: 27/06/2012, 11h49
  3. programme java qui convertit un texte en mode PDU
    Par angel04 dans le forum Général Java
    Réponses: 2
    Dernier message: 22/04/2011, 12h19
  4. Décoder des SMS au format PDU
    Par alexparis dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 16/12/2005, 18h55
  5. Mode T9 pour les SMS
    Par lalystar dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 23/02/2005, 16h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo