Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

invio comando automatico

131 views
Skip to first unread message

Marco

unread,
Aug 18, 2010, 6:27:27 PM8/18/10
to
scusate,qualcuno saprebbe dirmi da hyperterminal o altro programma,come
posso fare per inviare un comando via modem sulla mia linea telefonica? A me
servirebbe che alle 00 il PC aprisse la linea telefonica e inviasse il
comando #21# e richiudesse la linea,non credo che sia così difficile,ma con
hyperterminal riesco a farglielo fare manualmente ma non in automatico.
Grazie.

SB

unread,
Aug 20, 2010, 4:56:06 AM8/20/10
to

Quello che vuoi fare non è semplice perchè richiede due funzioni normalmente non
disponibili ai comandi come la porta seriale e il timer.

Inoltre devi lanciare il programmacome servizio o lasciarlo in background fino
al momento di lanciare la stringa.

Per fare ciò ti occorre un programma scritto appositamente, e se non lo trovi
già fatto, devi crearlo con un linguaggio.

Non so le tue conoscenze in proposito, ma ad esempio in Python o Visual Basic si
potrebbe fare in poco tempo, ma occorre installare programmi, compilare
eseguibili.

In alternativa puoi anche provare con uno script VBS, ma se non hai mai usato
questi strumenti può essere complicato.

--
ciao
Stefano

Marco

unread,
Aug 20, 2010, 7:35:59 AM8/20/10
to
conoscenza pari a zero di programmazione :-(

Se dovesse venirti in mente qualcosa o qualche programma che possa inviare
in automatico una stringa via linea telefonica,fammelo sapere per favore.
Grazie.

JohnnyNewbie

unread,
Aug 20, 2010, 8:21:54 AM8/20/10
to

Premetto che non conosco hyperterminal... utilizzo
linux da un po' e lì sarebbe probabilmente più
semplice fare cose del genere.
Comunque anche su windows puoi farti un file "BATCH"
ovvero un scriptino che utilizzi i comandi giusti per
fare quello che hai in mente.
Anni fa ne avevo fatto uno per tenermi in piedi la
connessione e sbloccarla (avevo un modem che si
bloccava con frequenza random).

In pratica avevo fatto questo script e poi lo avevo
messo nelle operazioni pianificate e lo facevo girare
ogni tot minuti.

Sostanzialmente per scriverlo ti asta il blocco note.
In rete avevo trovato diverse guide sulla stesura di
script BATCH. MA a te non è che serva chissà quale
struttura logica, voglio dire si tratta quasi di
un'operazione singola.

Per cui la prima cosa che ti consiglio è di capire come
fare ad inviare il comando usando un terminale cioè
apri il prompt del dos e dai il comanddi cui hai
bisongo.
Quando avrai capito che comando devi scrivere sul
terminale è fatta.

Infatti a quel punto scrivi il comando in un file di
testo e lo salvi come comandmodem.bat e via.
Poi aggiungi comandomodem.bat nelle operazioni
pianificate e lo imposti in modo che venga fatto girare
con la frequenza di cui hai bisogno.

Per esempio a me serviva il comando di connessione ad
internet ed avevo trovato in rete che era possibile
usare:
RASDIAL

Ecco direi che è tutto per il momento.

1- capire che comando da terminale usare --> google
2- leggersi una piccola guida agli script batch
(dos/win)
3- scrvere lo script .bat e metterlo nelle operazioni
pianificate.

Ciao.

SB

unread,
Aug 20, 2010, 10:42:28 AM8/20/10
to
Il giorno Fri, 20 Aug 2010 14:21:54 +0200, JohnnyNewbie <joh...@nomail.invalid>
ha scritto:

>Marco <ma...@lan.it> wrote:
>> conoscenza pari a zero di programmazione :-(
>>
>> Se dovesse venirti in mente qualcosa o qualche programma che possa inviare
>> in automatico una stringa via linea telefonica,fammelo sapere per favore.

>In pratica avevo fatto questo script e poi lo avevo
>messo nelle operazioni pianificate e lo facevo girare
>ogni tot minuti.

Questo poteva funzionare in MSDOS o fino a W98, da W2000 in poi l'accesso
all'I/O diretto non è più possibile e per andare su una porta seriale occorre
usare un driver o qualcosa come mscomm.

http://www.tomshardware.com/forum/102277-45-serial-port-rs232

--
ciao
Stefano

SB

unread,
Aug 20, 2010, 1:12:29 PM8/20/10
to

Ho fatto una cosa veloce in Visual Basic, l'ho provata e qui da me funziona e
compone col modem il numero del cellulare:

Qui scarichi il file Setup_Serial_File.zip

http://www.datafilehost.com/download-45f81ac8.html

Poi esegui l'installer Setup_Serial_File, in pratica registra solo MsComm e
aggiunge il Runtime di VB se non ce l'hai.

Poi apri una finestra DOS e vai in nella directory scelta nell'installazione, di
default dovrebbe essere:
C:\Programmi\Serial_File>

ed esegui il comando
serial_file.exe com1,9600,n,8,1,pippo.txt

ovviamente pippo.txt o come lo chiamerai deve stare nella stessa cartella
altrimenti devi inserire il path:

serial_file.exe com1,9600,n,8,1,C:\Test\pippo.txt

Poi apri Notepad, copi la stinga
"serial_file.exe com1,9600,n,8,1,C:\Test\pippo.txt"

salvi in un file con estensione .bat e lo lanci con le operazioni pianificate,
come ti era stato suggerito, non è troppo difficile.

Fammi sapere

--
ciao
Stefano

JohnnyNewbie

unread,
Aug 20, 2010, 3:27:54 PM8/20/10
to
SB <stNOOOb...@tin.it> wrote:
>JohnnyNewbie <joh...@nomail.invalid> ha scritto:
>
>>Marco <ma...@lan.it> wrote:
>
>>In pratica avevo fatto questo script e poi lo avevo
>>messo nelle operazioni pianificate e lo facevo girare
>>ogni tot minuti.
>
> Questo poteva funzionare in MSDOS o fino a W98, da
> W2000 in poi l'accesso all'I/O diretto non č piů

> possibile e per andare su una porta seriale occorre
> usare un driver o qualcosa come mscomm.

Io inviavo comandi AT al modem (il mio cellulare
collegato via usb al PC). E tutto ciň avveniva su XP.
Tutto stava nel configurare in modo opportuno una
connessione di rete che poi veniva richiamata con
rasdial.
In effetti comunque non č che abbia capito bene
cosaintenda fare l'OP, quindi probabilmente hai
ragione.

Marco

unread,
Aug 20, 2010, 6:52:39 PM8/20/10
to
Ciao SB,per prima cosa GRAZIE,allora ho fatto il tutto e non funziona,nel
senso che provandolo sento che mi apre la linea ma poi la richiude senza
comporre nulla,ho tolto la spunta su attendi segnale di libero dalle
proprietą del modem,ma non č cambiato nulla,mi sa che bisogna aggiungere
qualcosa alla stringa che mi fai lanciare prima di comporre il numero per
fargli ignorare il tono di telefono libero e far comporre il numero
ugualmente. Secondo te č questo il problema o altro? Tieni cmq presente
ripeto che la linea la apre e dopo 2 secondi appena la richiude.

Marco

unread,
Aug 20, 2010, 7:15:31 PM8/20/10
to
aggiungo un particolare ho provato da Hyperterminal a dare gli stessi
comandi e funziona,ed esattamente ho provato a dare

ATZ con risposta OK
ATDTnumero con risposta NO DIALTONE

poi ho dato
ATZ con risposta OK
ATx3 con risposta ok
ed infine
ATDTnumero e ha composto il numero


ho impostato la stessa sequenza sul file di testo che mi hai inviato ma
continua ad aprire la linea e a richiuderla,qualche idea?

Grazie.

Marco

unread,
Aug 20, 2010, 10:33:08 PM8/20/10
to
ho appena provato il comando rasdial come indicato da johnny e devo
ammettere che funziona,lancia la composizione e poi si disconnette dopo 1
minuto circa perchè non riesce ad autenticarsi,ma il suo lavoro lo ha già
fatto impostando il codice telefonico,stesso discorso per riportare il tutto
alla normalità :-)

SB

unread,
Aug 21, 2010, 4:49:44 AM8/21/10
to

Probabilmente dipende dall' handshaking sulla porta, comunque se hai risolto con
rasdial va bene lo stesso.

--
ciao
Stefano

Marco

unread,
Aug 21, 2010, 7:51:43 AM8/21/10
to

> Probabilmente dipende dall' handshaking sulla porta, comunque se hai
> risolto con
> rasdial va bene lo stesso.
>

si diciamo che ho risolto,un po' più grossolano come metodo ma funziona,nel
senso che lui apre la linea compone il numero (che poi + il codice) e
attende che dall'altra parte ci fosse una risposta (stile come ci si
connetteva ad internet una volta tramite modem analogico),poi ovviamente non
ricevendo nessuna risposta dopo 1 circa stacca e ed esce dalla procedura
rasdial,nel frattempo il comando cmq è stato inviato e il funzionamento
attivato del trasferimento di chiamata,il tuo mi è sembrato di capire invece
che fosse più lineare,apre la linea manda il comando e poi chiude
subito,giusto?

SB

unread,
Aug 21, 2010, 9:04:37 AM8/21/10
to

Il fatto è che la fine del programma chide la porta e il tuo modem chiude la
linea, ma se non sai cosa e se si deve ricevere devi necessariamente mettere un
timer.

Ho aggiunto un parametro in secondi da aggiungere prima del file

Esempio con:

> serial_file com1,9600,n,8,1,20,pippo.txt

Ora dopo la trasmissione del file aspetterà per 20 secondi prima di finire, puoi
mettere il valore che preferisci:

http://www.datafilehost.com/download-6865c658.html


--
ciao
Stefano

Marco

unread,
Aug 21, 2010, 12:10:10 PM8/21/10
to

perfetto,ma hai apportato anche qualche modifica per far comporre il numero
anche senza rilevare la portante?O cmq per risolvere il problema che apre la
linea e la richiude?

SB

unread,
Aug 22, 2010, 4:40:21 AM8/22/10
to

No, perchč non č un programma di comunicazione ma solo un programma che manda
delle stringhe in sequenza e poi mantiene la porta aperta per un numero definito
di secondi.
Ho usato un Long, quindi puoi arrivare a 2^31 secondi, piů di mezzo secolo.


--
ciao
Stefano

0 new messages