[Linuxtrent] Re: mmcli e parsing dei parametri per la trasmissione di SMS

  • From: Daniele Pizzolli <ors@xxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Mon, 13 Aug 2018 17:06:44 +0200


Guido Brugnara writes:

----- Il 13-ago-18, alle 11:39, Guido Brugnara gdo@xxxxxxxxx ha scritto:

Sto utilizzando mmcli per l'invio di messaggi SMS.
Ad esempio (vedi
http://manpages.ubuntu.com/manpages/trusty/man8/mmcli.8.html#sms%20options ;)

  mmcli -m 0 --messaging-create-sms="text='Hello world',number='+1234567890'"

La sintassi viene descritta così:

  --messaging-create-sms=['KEY1=VALUE1,...']

Ma non è chiarito come formare l'elenco dei parametri quando è necessario 
usare
caratteri come "=" e ","

Se nel test da trasmettere c'è un carattere "," come rappresentarlo nella
stringa da passare al comando mmcli?

Ciao Guido,

Sembra proprio che il passaggio di messaggi come argomento sia piuttosto
limitato e prono agli errori.  Scarterei questa via.

[]

Il repos. indicato non era aggiornato, ma il problema c'è anche nel codice 
più recente alla riga 1280:

   
https://github.com/linux-mobile-broadband/ModemManager/blob/master/libmm-glib/mm-common-helpers.c

Così non è possibile indicare nel valore il carattere usato come 
delimitatore di
stringa (apice o doppio apice).

Con "mmcli" esisterebbe anche la possibilità di fornire l'SMS da un file
(parametro --messaging-create-sms-with-data) ma come generare quel file da 
riga
di comando?

Come noti sembra esserci anche il modo di farlo con
--messaging-create-sms-with-data, prendendo spunto da:

https://github.com/linux-mobile-broadband/ModemManager/blob/master/test/mmcli-test-sms#L30

farei un wrapper con dentro qualcosa del genere:

printf "%s" "${MESSAGE}" > "${TMPDIR}/message"
mmcli -m 0 --messaging-create-sms="number='${NUMBER}'" \
    --messaging-create-sms-with-data="${TMPDIR}/message"

Da completare e testare!

[]

Quali alternative all'uso di "mmcli" mi potreste suggerire per 
l'invio/ricezione
di messaggi SMS che siano compatibili con Modem Manager?

Nessuna idea specifica, ma sembra dagli esempi che abbiano qualche
binding python che magari è più flessibile per gestire errori.

Buon divertimento in attesa del temporale!
Daniele
-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con OGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: