Dec. 21, 2006
Finalmente siamo arrivati alla prima RC. Di che cosa? Ma di Sylpheed, il mio client di posta preferito!
Il progetto sta procedendo ad un ritmo forsennato, giusto per farvi capire:
E la 2.3.0 stabile e’ prevista per il 24 dicembre, una vera corsa!
Il changelog attuale e’ piuttosto scarno, e le modifiche riguardano in particolare la gestione dei certificati SSL.
Non posso che ribadire l’assoluta validita’ di questo programma, una vera bomba.
Dal punto di vista della programmazione e’ interessante anche la presenza della LibSylph, che sta alla base del programma,e che puo’ essere utilizzata per la realizzazione di un nuovo client di posta. Chissà che non riesca a trovare il tempo per crearne uno ad-hoc per Enlightenment, usando LibSylph in accoppiata con le EWL…
Alla prox
Posted by mcalamelli in Opensource, Windows | No Comments
Dec. 18, 2006
In a truly full period of engagements I have decided to find a little time for a job that I had set aside in order too much… the translation of the post in English! I will have therefore way to put to the test my English from self-taught, and the service of translations of Google… Good reading!
Alla prox
Posted by mcalamelli in Uncategorized | No Comments
Nov. 13, 2006
Ebbene si, in questo caso la risposta e’ affermativa!
Mi riferisco a Sylpheed, IMHO uno dei migliori client di posta attualmente disponibili, e che sto utilizzando da diverso tempo. L’ho introdotto tempo addietro, e ora ci torno sopra perche’ il progetto sta evolvendo ad un ritmo impressionante, la 2.3.0.beta1 e’ stata rilasciata il 29/09/2006, mentre la beta5 e’ uscita il 10/11/2006, ed e’ una signora beta!
Il programma e’ molto stabile, ha acquistato parecchia velocita’ di esecuzione, il consumo di memoria e’ praticamente irrisorio, e finalmente sono state introdotte alcune features mancanti che lo rendono ancora piu’ appetibile anche ad una utenza non esperta.
Il programma e’ ora riducibile ad icona con scomparsa nella traybar, e l’icona che compare cambia alla ricezione di nuovi messaggi, in modo da avere sott’occhio la situazione senza ulteriori click del mouse. Un altro punto a favore e’ la semplicita’ di installazione, che controlla la presenza di una versione precedente, provvede a rimuoverla mantenendo le impostazioni e le email (ma va!), e prosegue con il setup vero e proprio della nuova release.
Per quanto riguarda gli sviluppatori, e’ molto interessante la presenza di una LibSylph, attualmente in versione alpha: praticamente e’ una libreria di funzioni che permette la creazione di un proprio client di posta, sfruttando questo layer sottostante e gia’ testato (Sylpheed si basa proprio su questo…).
Non mi resta che consigliarvi di installarlo, magari per prova, e vi accorgerete del valore di questo ottimo programma.
Alla prox
Posted by mcalamelli in Opensource, Windows | No Comments
Nov. 10, 2006
… ovvero la mia esperienza con il modulo GSM/GPRS EZ10 Terminal QUAD-PY della Telit.
Il modulo e’ un bell’oggetto da un centinaio di Euro, con una porta RS232, 4 linee GPIO configurabili via software e, in questa versione, l’interprete Python (versione 1.5.2+) all’interno.
Il contesto di utilizzo e’ il seguente: una scheda elettronica, preposta all’attivazione o meno di uscite in base all’iterazione con l’utente, ha due ingressi di allarme, ai quali e’ possibile collegare degli attuatori che si attivano in caso di situazioni ritenute di emergenza. Il firmware di gestione della scheda controlla lo stato degli ingressi (ovviamente optoisolati) di allarme, e lo riporta su due delle quattro linee GPIO del modulo Telit.
All’interno del modulo gira il mio script Python, script che viene eseguito ad ogni avvio del modulo stesso. Lo scopo dello script e’ il controllo delle linee GPIO di allarme, in modo da notificare via SMS a due numeri di cellulare gli eventi su queste linee con i messaggi di testo relativi.
La comunicazione tra l’interprete Python e parser dei comandi AT avviene internamente tramite una linea seriale virtuale utilizzabile all’interno dello script tramite le funzioni del modulo MDM, quindi ,tempistiche a parte, e’ come se si parlasse direttamente sulla linea seriale fisica del modulo inviando direttamente i comandi AT. L’interprete mette a disponizione altri due moduli, oltre al builtin, e cioe’ SER per la gestione della seriale fisica e MOD con un paio di funzioni per la gestione dei tempi.
La procedura di inserimento dello script e’ piuttosto macchinosa: bisogna collegarsi via seriale al modulo (ho utilizzato Hyperterminal, e fa veramente pieta’…) impostando il baudrate a 115200, N81 per parita’ e stopbit, e controllo di flusso hardware, poi digitare AT#WSCRIPT=”[nomefile.py]“,[dimensioni in byte del file] , attendere il prompt “>>>”, selezionare il menu “Invia file di testo”, selezionare il file da inviare e attendere la risposta di “OK”, poi abilitare il file .py “uploadato” con il comando AT#ESCRIPT=”[nomefile.py]“, e attendere “OK” per la conferma. Per eseguire lo script sul modulo basta chiudere la comunicazione da Hyperterminal e spegnere e riaccendere il modulo.
E ora cominciano i problemi, almeno nel mio caso…
Ho provato il classico “Hello world!”, e cioe’ in questo caso la stampa della stringa sulla seriale fisica del modulo (ovviamente connessa al pc), ma non ho visto arrivare niente, e mi sono chiesto “Ma lo script e’ partito? Ma ho forse fatto qualche errore di digitazione? COME FACCIO IL DEBUG?”. E il punto e’ proprio questo, il debug dello script. Certo, errori di sintassi li posso escludere facendo leggere lo script da un qualche tool di controllo, ma se per caso (come mi e’ successo…) scrivo MDM.sleep(10), che non esiste, al posto di MOD.sleep(10), come me la sbrigo??
La soluzione che ho utilizzato e’ stata quella di collegare esternamente due led alle porte GPIO rimaste libere per avere un piccolo feedback dallo script, ma vi assicuro che e’ stata veramente dura arrivare alla fine, un minimo di informazioni le potevano mettere, almeno per i traceback generati dal Python!
Comunque alla fine ci sono arrivato, lo script si comporta bene, e i messaggi arrivano che e’ una meraviglia.
Nonostante cio’ pero’ non posso esprimere un parere positivo al 100%, ritengo che questo oggetto possa andare bene per un eventuale sistema di dimostrazione, ma la macchinosita’ di programmazione (del modulo, non del Python) non lo rende l’ideale in produzione: una scheda di gestione con una seriale libera e un microcontrollore adeguato avrebbe compiuto meglio il lavoro.
Alla prox




