7 messaggi dal 19 ottobre 2006
Salve a tutti,
ho questo problema :
Sto creando un server che permetta di inviare e ricevere messaggi Sms tramite un modem gsm o un telefono cellulare.
Il problema e che i servizi di invio e di ricezione devono essere consumati tramite rete, quindi ho subito pensato a un web service.
Però poi non so, come far si che il server (standalone), comunichi con il web service (su IIS) e viceversa.
Tra l'altro non posso riprogettare l'architettura del sistema perchè mi serve che il server esegua il polling dei nuovi messaggi sul modem e che allo stesso tempo processi le code di invio.

Altro fattore importante è che sono costretto a implementare il tutto su framework 2.0

Spero che mi possiate aiutare, Grazie
Daniele
Ciao, le code di invio come sono popolate?
m.
7 messaggi dal 19 ottobre 2006
Il problema non è come sono popolate le code di invio, che sono gestite interamente dal server, ma come far comunicare una applicazione server con un web service.

Il web service dovrebbe semplicemente ricevere i messaggi da inviare e mostrare quelli ricevuti.
Se non erro dovrebbe essere il modello MVC dove il web service fa da View e il server fa da Control.

Spero di essere chiaro.

Daniele
Beh, potresti creare un webservice con un servizio
StoreReceivedMessage
che viene invocato dal tuo server SMS alla ricezione di un messaggio e memorizza tale messaggio su database.

Poi un servizio
QueueNewMessage
che popola la coda dei messaggi da inviare con un nuovo SMS.

Infine un terzo servizio
CheckMessages
che ritorna tutti messaggi

Poi con questi 3 webmethod esposti puoi fare ciò che vuoi: pilotare il server SMS da una webapp, da uno smart client, ecc.ecc.ecc.

Questo risponde alla tua domanda?
m.
7 messaggi dal 19 ottobre 2006
Anche io avevo pensato ad una cosa del genere ma ho dimenticato di dire (e mi scuso  ) che l'invio di un messaggio in caso di dispositivo non occupato deve essere effettuato in modo SINCRONO in caso contrario in modo ASINCRONO, è quello che mi complica il tutto.
Beh, allora sicuramente il nocciolo della questione non sta tanto nel webservice, quanto su come gestisci l'invio messaggi dal server SMS, che utilizza la code.

Solo che IMHO non è banale impostare il tutto come chiedi, visto che a questo punto hai bisogno di stabilire una connessione tra processi (server SMS - Web Server). Il modo migliore per farlo è esporre dal tuo server SMS un servizio .NET Remoting (visto che sei vincolato alla 2.0, altrimenti avresti potuto usare WCF) e utilizzarlo per consentire l'invio sincrono di un messaggio, con un valore di risposta che ti indica se è stato effettivamente preso in carico. In questo modo il web service che esponi all'esterno, per soddisfare la richiesta di invio di un messaggio può prima tentare la carta dell'invio sincrono e, in caso di fallimento, accodare il messaggio.

.NET Remoting non è una tecnologia banalissima da apprendere, se non la conosci già è dura da spiegare in un forum.

Ti consiglierei pertanto di spulciare un po' di blog/documentazione MSDN e dare un'occhiata per verificare se fa al tuo caso.

m.
7 messaggi dal 19 ottobre 2006
Ti ringrazio, ora vedo cosa posso fare.
Daniele

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.