Voulez-vous apprendre à envoyer des messages SMS à partir de la ligne de commande Ubuntu Linux? Dans ce tutoriel, nous allons vous montrer toutes les étapes nécessaires pour envoyer des messages SMS en utilisant uniquement la ligne de commande d'un ordinateur exécutant Ubuntu Linux et un modem GSM USB.

• Version Ubuntu: 18.04
• Modem USB GSM: DWM-221

Ce tutoriel ne fonctionnera que si vous utilisez un modem GSM USB.

Attention, certains appareils ressemblent à un modem USB, mais ce sont des routeurs USB comme le DWR-910.

Liste de Matériel:

La section suivante présente la liste des équipements utilisés pour créer ce tutoriel Ubuntu.

Tous les composants matériels répertoriés ci-dessus peuvent être trouvés sur le site Web d'Amazon.

Ubuntu Playlist:

Sur cette page, nous offrons un accès rapide à une liste de vidéos liées à l'installation d'Ubuntu.

N'oubliez pas de vous abonner à notre chaîne youtube nommée FKIT.

Tutoriel Ubuntu:

Sur cette page, nous proposons un accès rapide à une liste de tutoriels liés à l'installation d'Ubuntu.

Tutoriel - Envoyer un SMS Depuis la Ligne de Commande Ubuntu Linux

Tout d'abord, nous devons connecter le modem GSM USB à l'ordinateur sous Ubuntu Linux.

Après avoir connecté le modem GSM USB, vous devez vérifier si le système a détecté le périphérique.

Utilisez la commande suivante pour vérifier si le système a détecté le modem GSM USB.

# lsusb

Bus 002 Device 002: ID 8087:8001 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 005: ID 2001:a406 D-Link Corp. ***HERE***

Le système a détecté qu'un périphérique USB de Dlink était connecté à l'ordinateur.

Maintenant, nous devons vérifier le type de périphérique que le noyau Linux a assigné au périphérique.

Utilisez la commande suivante pour vérifier le type de périphérique affecté par le système.

# dmesg

[ 615.241221] usb 3-1: USB disconnect, device number 4

[ 643.023683] usb 3-1: new high-speed USB device number 5 using xhci_hcd

[ 643.173168] usb 3-1: New USB device found, idVendor=2001, idProduct=a406

[ 643.173169] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3

[ 643.173170] usb 3-1: Product: Mobile Connect

[ 643.173171] usb 3-1: Manufacturer: Mobile Connect

[ 643.173172] usb 3-1: SerialNumber: 0123456789ABCDEF

[ 643.173939] usb-storage 3-1:1.0: USB Mass Storage device detected

[ 643.174216] scsi host6: usb-storage 3-1:1.0

[ 644.188294] scsi 6:0:0:0: Direct-Access SD Storage 0000 PQ: 0 ANSI: 2

[ 644.188982] scsi 6:0:0:1: CD-ROM Mass Storage 0000 PQ: 0 ANSI: 2

[ 644.189313] sd 6:0:0:0: Attached scsi generic sg1 type 0

[ 644.190462] sd 6:0:0:0: [sdb] Unit Not Ready

[ 644.190465] sd 6:0:0:0: [sdb] Sense Key : Illegal Request [current] [ 644.190467] sd 6:0:0:0: [sdb] Add. Sense: Invalid command operation code

[ 644.190785] sr 6:0:0:1: [sr0] scsi-1 drive

[ 644.190915] sr 6:0:0:1: Attached scsi CD-ROM sr0 ***

Le système a détecté le modem USB USB comme une unité CDRom nommée sr0.

Utilisez la commande suivante pour éjecter l'unité CDRom sr0.

# eject sr0

Après avoir éjecté le lecteur CDRom faux, attendez 10 secondes et utilisez à nouveau la commande dmesg.

# dmesg

[ 1270.366092] usb 3-1: New USB device found, idVendor=2001, idProduct=7e19

[ 1270.366094] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3

[ 1270.366096] usb 3-1: Product: Mobile Connect

[ 1270.366098] usb 3-1: Manufacturer: Mobile Connect

[ 1270.366099] usb 3-1: SerialNumber: 0123456789ABCDEF

[ 1270.367882] option 3-1:1.0: GSM modem (1-port) converter detected

[ 1270.368033] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB0 ***HERE***

[ 1270.368183] option 3-1:1.1: GSM modem (1-port) converter detected

[ 1270.368299] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB1 ***HERE***

[ 1270.368437] option 3-1:1.2: GSM modem (1-port) converter detected

[ 1270.368541] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB2 ***HERE***

[ 1270.368681] option 3-1:1.3: GSM modem (1-port) converter detected

[ 1270.368787] usb 3-1: GSM modem (1-port) converter now attached to ttyUSB3 ***HERE***

Utilisez les commandes suivantes pour installer le logiciel requis.

# apt-get update
# apt install wvdial

Utilisez la commande wvdialconf pour détecter la communication GSM.

# wvdialconf

Scanning your serial ports for a modem.

ttyS0<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS0<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS0<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
Modem Port Scan<*1>: S1 S2 S3 S4 S5 S6 S7 S8
Modem Port Scan<*1>: S9 S10 S11 S12 S13 S14 S15 S16
Modem Port Scan<*1>: S17 S18 S19 S20 S21 S22 S23 S24
Modem Port Scan<*1>: S25 S26 S27 S28 S29 S30 S31
ttyUSB0<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyUSB0<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 9600 baud
ttyUSB0<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
ttyUSB1<*1>: ATQ0 V1 E1 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 Z -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB1<*1>: Modem Identifier: ATI -- Manufacturer:
ttyUSB1<*1>: Speed 9600: AT -- OK
ttyUSB1<*1>: Max speed is 9600; that should be safe.
ttyUSB1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 Z -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB2<*1>: Modem Identifier: ATI -- Manufacturer:
ttyUSB2<*1>: Speed 9600: AT -- OK
ttyUSB2<*1>: Max speed is 9600; that should be safe.
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB3<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyUSB3<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 9600 baud
ttyUSB3<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.

Found a modem on /dev/ttyUSB1.
Modem configuration written to /etc/wvdial.conf.
ttyUSB1: Speed 9600; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0" ***HERE***
ttyUSB2: Speed 9600; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0" ***HERE***

Voici un résumé rapide de la détection de la commande wvdialconf:

• Port ttyUSB1 en utilisant la vitesse 9600 et la communication AT est OK
• Port ttyUSB2 utilisant la vitesse 9600 et la communication AT est correcte

Maintenant, nous savons que l'une des interfaces suivantes peut fonctionner pour envoyer des SMS:

• port ttyUSB1
• Port ttyUSB2

Utilisez la commande suivante pour installer le logiciel Gammu.

# apt-get install gammu

Utilisez la commande gammu-config pour configurer la communication avec le modem GSM.

# gammu-config

Voici la configuration originale de Gammu.

Gammu default configuration

Voici la nouvelle configuration de Gammu.

Gammu configuration

Cliquez sur l'option de sauvegarde pour terminer votre configuration.

Dans notre exemple, nous utilisons la configuration suivante:

• Port - / dev / ttyUSB2
• Connexion - at
• Synchroniser l'heure - Non

Utilisez la commande suivante pour envoyer un message SMS:

# echo "Dragon Ball super is Awsome!" | gammu --sendsms TEXT 5521999998877

If you want break, press Ctrl+C...
Sending SMS 1/1....waiting for network answer..OK, message reference=233

Si le test a réussi, vous êtes prêt à partir.

Si le test a échoué, vous devez utiliser la commande gammu-config et remplacer le ttyUSB2 par une autre interface ttyUSB.

Utilisez la commande suivante pour lire les messages SMS:

# gammu getallsms

Location 100009, folder "Inbox", phone memory, Inbox folder
SMS message
SMSC number : "+552183139914"
Sent : Wed 29 Aug 2018 10:04:46 AM -0300
Coding : Default GSM alphabet (no compression)
Remote number : "021999999999"
Status : UnRead

Yeah! Vegeto is the best

Toutes nos félicitations! Vous pouvez maintenant envoyer des SMS en utilisant la ligne de commande.