Archivio mensile:Marzo 2015

NCID e OpenWRT

Ho deciso di eliminare tutti i servizi poco pesanti dal server per spostarli sulla mia spettacolare Vodafone Station con OpenWRT.

Ho trovato un sito dove era già fatto il lavoro al 80%:

https://lists.openwrt.org/pipermail/openwrt-devel/2012-September/016640.html

In effetti trovare un buon esempio per la compilazione di programmi non previsti dal trunk, non è semplice.
La versione utilizzata è la 0.84, ma l’ultima versione disponibile è la 1.0: non usate la versine 1.0 in quanto non funziona. Con qualche aggiustamento e riflessioni post installazione il soft funziona alla perfezione.

Il problema l’ho avuto quando ho collegato il modem al router… Mi aspettavo qualche cosa, ma quello che mi diceva il log era veramente troppo poco ..

Mar 99 99:99:99 192.168.Y.X kernel: [177297.336000] usb 3-2: new full-speed USB device number 3 using uhci_hcd

Installato il pacchetto kmod-usb-serial ed anche il pacchetto usbutil (il comando lsusb serve …) inserito nel file modules.d/usb-serial la riga

usbserial vendor=0x0572 product=0x1329

dove i valori sono gli stessi che ha fornito il comando lsusb ed identificano il modem

root@ARV7510PW22:~# opkg install usbutils
Installing usbutils (007-1) to root...
Downloading http://192.168.1.20/barrier_breaker/14.07/lantiq/packages/base/usbutils_007-1_lantiq.ipk.
Installing libusb-1.0 (1.0.9-1) to root...
Downloading http://192.168.1.20/barrier_breaker/14.07/lantiq/packages/base/libusb-1.0_1.0.9-1_lantiq.ipk.
Configuring libusb-1.0.
Configuring usbutils.
root@ARV7510PW22:~# lsusb 
Bus 003 Device 002: ID 0572:1329 Conexant Systems (Rockwell), Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

a questo punto dopo un reboot appare per magia il /dev/ttyUSB0.

Ho installato il pacchetto ncid alla versione 0.84, ma mentre il server ncidd funziona alla perfezione, il paccheto ncid presenta alcune difficoltà.

Per iniziare devo installare il pacchetto tcl in quanto ncid ha bisogno di tale comando. all’interno di ncid ho modificato il comando tclsh da utilizzare impostando tclsh8.5… Ma le difficoltà non sono finite !!
Fissata l’anomalia con tclsh, ne incontro una più grande: un errore legato all’istruzione clock del tcl.
Ho eliminato il problema alla radice, in quanto ho preso il precedente ncid (quello della versione 0.84) ed eseguita la stessa modifica il programma funziona… (ncid non fa altro che il polling del log di ncidd e verificare l’arrivo di una nuova chiamata).

alla fine ho inserito nell’interno del rc.local la riga

ncid --no-gui --program ncid-page &

L’ultima modifica è all’interno del file ncid per l’invio della mail da parte dello stesso ncid:
all’interno di ncid.con ho indicato sendmail come mail program ed ho eliminato la verifica dell’utente …

#if [ -n "$rootID" ]
#then 
#    # send mail as user $PageFrom  
#   echo $use_e $MailMsg |
#       su -s /bin/sh -c "$PageMail $PageOpt $PageTo" $PageFrom 
#else  
#   # send mail as user running script
#   #echo $use_e $MailMsg | $PageMail $PageOpt $PageTo
#    echo -e "Subject:Telefonata da ${NMBR}\nReply-to:emailaddress@gmail.com\n\n${MailMsg}"| $PageMail $PageTo
    echo -e "Subject:Telefonata da ${NMBR}\n\n${MailMsg}"| $PageMail $PageTo

ed il gioco è fatto !!