22-02-24, 11:47 AM
ballance *222#CONSULTER MON SOLDE AT COMMANDE EN VB.NET
Pour consulter votre solde avec la commande *222# en VB.NET, vous pouvez utiliser AT commands pour envoyer la commande USSD à votre modem ou téléphone mobile connecté via un port série. Voici un exemple simple de code VB.NET pour accomplir cela :
Imports System
Imports System.IO.Ports
Module Module1
Sub Main()
Dim serialPort As New SerialPort()
' Paramètres du port série
serialPort.PortName = "COM1" ' Remplacez COM1 par le port série sur lequel votre modem est connecté
serialPort.BaudRate = 9600
serialPort.Parity = Parity.None
serialPort.DataBits = 8
serialPort.StopBits = StopBits.One
serialPort.Handshake = Handshake.RequestToSend
' Evénement pour la réception de données
AddHandler serialPort.DataReceived, AddressOf DataReceivedHandler
' Ouvrir le port série
serialPort.Open()
' Envoyer la commande USSD pour consulter le solde
serialPort.WriteLine("AT+CUSD=1,""*222#"",15")
' Attendre la réponse (vous pouvez implémenter une logique plus sophistiquée pour gérer la réponse)
Threading.Thread.Sleep(5000)
' Fermer le port série
serialPort.Close()
End Sub
' Méthode appelée lors de la réception de données sur le port série
Private Sub DataReceivedHandler(sender As Object, e As SerialDataReceivedEventArgs)
Dim serialPort As SerialPort = CType(sender, SerialPort)
Dim data As String = serialPort.ReadExisting()
Console.WriteLine("Réponse USSD : " & data)
End Sub
End Module
Assurez-vous de remplacer "COM1" par le bon nom du port série auquel votre modem est connecté. Vous devrez également adapter les paramètres de port série en fonction de la configuration de votre modem.
Ce code ouvre le port série, envoie la commande USSD pour consulter le solde (*222#), attend quelques secondes pour la réponse, puis ferme le port série. La réponse USSD est affichée dans la console, mais vous pouvez traiter la réponse selon vos besoins dans la méthode
DataReceivedHandler
--------------------------------------------------------------------------------------------------------------------------------------
[font=Söhne, ui-sans-serif, system-ui, -apple-system,]Pour envoyer un SMS via un modem GSM relié à un PC en utilisant VB.NET, vous pouvez également utiliser les AT commands. Voici un exemple de code pour accomplir cela :[/font]
__________________________
Imports System
Imports System.IO.Ports
Module Module1
Sub Main()
Dim portSerie As New SerialPort()
' Paramètres du port série
portSerie.PortName = "COM1" ' Remplacez COM1 par le port série sur lequel votre modem est connecté
portSerie.BaudRate = 9600
portSerie.Parity = Parity.None
portSerie.DataBits = 8
portSerie.StopBits = StopBits.One
portSerie.Handshake = Handshake.RequestToSend
' Événement pour la réception de données
AddHandler portSerie.DataReceived, AddressOf DataReceivedHandler
' Ouvrir le port série
portSerie.Open()
' Envoyer la commande pour envoyer un SMS
portSerie.WriteLine("AT+CMGF=1") ' Mode texte pour les SMS
portSerie.WriteLine("AT+CMGS=""+1234567890""") ' Remplacez +1234567890 par le numéro de téléphone du destinataire
portSerie.WriteLine("Ceci est un message de test envoyé depuis VB.NET via un modem GSM.")
portSerie.Write(Chr(26)) ' Ctrl-Z pour envoyer le SMS
' Attendre la réponse (vous pouvez implémenter une logique plus sophistiquée pour gérer la réponse)
Threading.Thread.Sleep(5000)
' Fermer le port série
portSerie.Close()
End Sub
' Méthode appelée lors de la réception de données sur le port série
Private Sub DataReceivedHandler(sender As Object, e As SerialDataReceivedEventArgs)
Dim portSerie As SerialPort = CType(sender, SerialPort)
Dim data As String = portSerie.ReadExisting()
Console.WriteLine("Réponse du modem GSM : " & data)
End Sub
End Module
----------------------------------------------------
Imports System.IO.Ports
Module Module1
Sub Main()
Dim portSerie As New SerialPort()
' Paramètres du port série
portSerie.PortName = "COM1" ' Remplacez COM1 par le port série sur lequel votre modem est connecté
portSerie.BaudRate = 9600
portSerie.Parity = Parity.None
portSerie.DataBits = 8
portSerie.StopBits = StopBits.One
portSerie.Handshake = Handshake.RequestToSend
' Événement pour la réception de données
AddHandler portSerie.DataReceived, AddressOf DataReceivedHandler
' Ouvrir le port série
portSerie.Open()
' Envoyer la commande pour envoyer un SMS
portSerie.WriteLine("AT+CMGF=1") ' Mode texte pour les SMS
portSerie.WriteLine("AT+CMGS=""+1234567890""") ' Remplacez +1234567890 par le numéro de téléphone du destinataire
portSerie.WriteLine("Ceci est un message de test envoyé depuis VB.NET via un modem GSM.")
portSerie.Write(Chr(26)) ' Ctrl-Z pour envoyer le SMS
' Attendre la réponse (vous pouvez implémenter une logique plus sophistiquée pour gérer la réponse)
Threading.Thread.Sleep(5000)
' Fermer le port série
portSerie.Close()
End Sub
' Méthode appelée lors de la réception de données sur le port série
Private Sub DataReceivedHandler(sender As Object, e As SerialDataReceivedEventArgs)
Dim portSerie As SerialPort = CType(sender, SerialPort)
Dim data As String = portSerie.ReadExisting()
Console.WriteLine("Réponse du modem GSM : " & data)
End Sub
End Module
----------------------------------------------------
[font=Söhne, ui-sans-serif, system-ui, -apple-system,]Assurez-vous de remplacer "COM1" par le bon port série auquel votre modem GSM est connecté. De plus, remplacez "+1234567890" par le numéro de téléphone du destinataire.[/font]
[font=Söhne, ui-sans-serif, system-ui, -apple-system,]Ce code envoie un SMS via le modem GSM en utilisant des commandes AT. Il configure d'abord le modem en mode texte pour les SMS, puis envoie le numéro de téléphone du destinataire et le contenu du SMS. Enfin, il envoie le caractère Ctrl-Z pour indiquer la fin du message SMS.[/font]
[font=Söhne, ui-sans-serif, system-ui, -apple-system,]Ce code envoie un SMS via le modem GSM en utilisant des commandes AT. Il configure d'abord le modem en mode texte pour les SMS, puis envoie le numéro de téléphone du destinataire et le contenu du SMS. Enfin, il envoie le caractère Ctrl-Z pour indiquer la fin du message SMS.[/font]
.