DOMANDA Ingegneri che non sanno programmare?

Bondye

Nuovo Utente
39
5
Un'aspirante ingegnere informatico cerca suggerimenti.
All'università non viene dato molto peso alla programmazione, eppure vorrei capire se un programma che ho in mente è facilmente realizzabile oppure no. Premetto che sono parecchio asciutto per quanto riguarda la programmazione, so solo scrivere codici non troppo complessi in C e C++
Ad esempio non so nemmeno implementare una grafica, anche se mi pare di aver capito che con Visual studio non è poi così difficile.

Il programma che ho in mente dovrebbe avere la seguente funzionalità: accedere alle impostazioni del modem (192.168....) e attivare/disattivare il wifi. Quali competenze sono necessarie per un programma del genere? Quali mezzi?
 

KaT_624

Utente Attivo
126
20
di per se il concetto è di difficile realizzazione in quanto ogni modem\router\access point ha un suo pannello di configurazione con relative voci; la parte difficile sarebbe dover scrivere un codice da eseguire diverso per ogni marca e modello di apparecchio in quanto non esiste un comando universale per gestire il wireless.

VS permette la programmazione semplificata per quanto riguarda linguaggi basati sui framework .net della Micorsoft quindi saresti legato all'ambiente windows; c e c++ invece possono essere adattati per più sistemi ma non so consigliarti un IDE che possa semplificarti la vita per la creazione di interfacce utente.
 

pabloski

Utente Èlite
2,722
795
Un'aspirante ingegnere informatico cerca suggerimenti.

Dal titolo pensavo ti fossi accorto che molti ingegneri informatici non sanno programmare :asd:

Ad esempio non so nemmeno implementare una grafica, anche se mi pare di aver capito che con Visual studio non è poi così difficile.

Purtroppo l'università italiana è basata su un modello umanistico, totalmente inadeguato all'insegnamento di discipline tecnologiche. La tua frase ( per quanto non sia colpa tua ) mostra totale non conoscenza delle dinamiche relative alla programmazione. La grafica, ad esempio, non è un fatto di IDE o di linguaggio, bensì di sistema operativo e librerie per il supporto di interfacce grafiche.

Visual studio ti aiuta a disegnare la GUI usando le tecnologie presenti in windows. Tuttavia è il sistema operativo che fornisce tali tecnologie. Qtcreator ti consentirà di creare GUI usando il toolkit QT. E ce ne sono centinaia di altri, molti dei quali multipiattaforma.

Il programma che ho in mente dovrebbe avere la seguente funzionalità: accedere alle impostazioni del modem (192.168....) e attivare/disattivare il wifi. Quali competenze sono necessarie per un programma del genere? Quali mezzi?

Su questo punto KaT_624 ha già risposto. Aggiungerei che hai due possibilità:

1. Se il firmware del modem/router supporta un'API per l'interazione col sistema di configurazione, potresti usare quella. Ma avrai comunque il problema relativo alla non standardizzazione di una simile API.
2. Se il firmware non supporta manco l'API, allora devi creare un client http che interagisca con l'interfaccia di configurazione come farebbe un normale essere umano.

In sostanza ti servono le seguenti conoscenze:

1. un linguaggio/framework che ti permetta di implementare un'architettura client/server basata su socket.
2. conoscenza dei meccanismi di configurazione del modem ( questi vanno studiati sul campo ).
3. conoscenza dell'utilizzo dei socket e/o dell'http o di framework già pronti che implementano dei client http.
 

Bondye

Nuovo Utente
39
5
di per se il concetto è di difficile realizzazione in quanto ogni modem\router\access point ha un suo pannello di configurazione con relative voci; la parte difficile sarebbe dover scrivere un codice da eseguire diverso per ogni marca e modello di apparecchio in quanto non esiste un comando universale per gestire il wireless.

Immaginavo che un programma universale sarebbe stato di difficile realizzazione, infatti ciò che avevo in mente era un programma che andasse bene per il mio modem/router.

Dal titolo pensavo ti fossi accorto che molti ingegneri informatici non sanno programmare :asd:
E infatti è così. Io sono al II anno di ing. informatica e fino ad ora ho visto tante materie scientifiche interessanti, ma ben poche relative alla programmazione e, più in generale, alla gestione dei calcolatori. Quando mi sono iscritto sapevo che non sarei diventato un esperto programmatore, ma di certo mi aspettavo qualche cosina in più. Spero solo che, grazie all'aiuto di forum come questo, potrò imparare qualche cosina in più rispetto a ciò che viene insegnato all'università.

1. Se il firmware del modem/router supporta un'API per l'interazione col sistema di configurazione, potresti usare quella. Ma avrai comunque il problema relativo alla non standardizzazione di una simile API.
2. Se il firmware non supporta manco l'API, allora devi creare un client http che interagisca con l'interfaccia di configurazione come farebbe un normale essere umano.

In sostanza ti servono le seguenti conoscenze:

1. un linguaggio/framework che ti permetta di implementare un'architettura client/server basata su socket.
2. conoscenza dei meccanismi di configurazione del modem ( questi vanno studiati sul campo ).
3. conoscenza dell'utilizzo dei socket e/o dell'http o di framework già pronti che implementano dei client http.

Come posso vedere se il modem supporta API?

Quando parli di client http di riferisci ad un BOT?

Se scrivo delle castronerie non fateci caso, sono qui per imparare e la base da cui parto non è molto solida.
 

Bondye

Nuovo Utente
39
5
beh si, in questo caso si tratta di un bot http

Peccato che per la creazione di un bot http non sappia proprio da dove cominciare... Ci sono decisamente troppe lacune. Dovrei potrei trovare la documentazione necessaria, possibilmente in italiano?
 

pabloski

Utente Èlite
2,722
795
Peccato che per la creazione di un bot http non sappia proprio da dove cominciare...

Occorrono conoscenze di programmazione, sistemi operativi e programmazione di rete. Nonchè i succitati protocolli.


Dovrei potrei trovare la documentazione necessaria, possibilmente in italiano?

Parti dal sito del produttore. Comunque l'italiano e l'informatica vanno poco d'accordo, per cui è assolutamente necessario imparare l'inglese ( almeno quello tecnico ).
 

Lumario

Nuovo Utente
15
1
Macchè, non c'è bisogno di nessun bot http e di nessuna capacità da ingegnere hacker.


Buona parte dei modem/router oltre che al pannello web ha anche un interfaccia a linea di comando a cui ci si può collegare via telnet o ssh.
Se il tuo router possiede questa opzione, e riesci a trovare i comandi da dare per attivare e disattivare il wifi ti basta un MINUSCOLO script in qualsiasi linguaggio di programmazione per fare quello che vuoi.

Se vuoi uno spunto puoi guardare qui: [boiata] Tenere d'occhio i parametri dell'adsl - Python

Alla fine del primo messaggio c'è del codice sorgente in python, che si connette con i socket al router ed in quel caso fa principalmente l'azione di tirare fuori dati dal router, cosa che a te non interessa, puoi benissimo ignorare la parte in php/ajax/javascript/html

Basta che trovi il comando per abilitare/disabilitare il wifi da linea di comando e sei a posto. A scrivere un programmino che manda due richieste telnet ci si mette 5 minuti.
 

Bondye

Nuovo Utente
39
5
Macchè, non c'è bisogno di nessun bot http e di nessuna capacità da ingegnere hacker.


Buona parte dei modem/router oltre che al pannello web ha anche un interfaccia a linea di comando a cui ci si può collegare via telnet o ssh.
Se il tuo router possiede questa opzione, e riesci a trovare i comandi da dare per attivare e disattivare il wifi ti basta un MINUSCOLO script in qualsiasi linguaggio di programmazione per fare quello che vuoi.

Se vuoi uno spunto puoi guardare qui: [boiata] Tenere d'occhio i parametri dell'adsl - Python

Alla fine del primo messaggio c'è del codice sorgente in python, che si connette con i socket al router ed in quel caso fa principalmente l'azione di tirare fuori dati dal router, cosa che a te non interessa, puoi benissimo ignorare la parte in php/ajax/javascript/html

Basta che trovi il comando per abilitare/disabilitare il wifi da linea di comando e sei a posto. A scrivere un programmino che manda due richieste telnet ci si mette 5 minuti.

Grazie tante per la risposta. Purtroppo non riesco a trovare informazioni dettagliate sul mio modem/router (modem ultra internet di telecom). Sapresti indirizzarmi ad un sito appropriato?
 

signore del tempo

Utente Èlite
3,228
491
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
HDD
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
GPU
Sapphire 7850 1GB @ 1050MHz
Audio
Integrata
Monitor
Acer V193w
PSU
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
OS
ArchLinux + KDE - Windows 10
Telecom? Non mi fa neanche cambiare l'SSID, vuoi delle API del genere?
Dovresti installarci una distro tipo OpenWRT.
 

Lumario

Nuovo Utente
15
1
Grazie tante per la risposta. Purtroppo non riesco a trovare informazioni dettagliate sul mio modem/router (modem ultra internet di telecom). Sapresti indirizzarmi ad un sito appropriato?

Prova a connetterti all'ip del router (lo stesso del pannello web) via telnet, se risponde ci inserisci la password di accesso e dovresti essere dentro.
 

Lumario

Nuovo Utente
15
1
Perchè comando non valido? non ha senso.

Su sistemi *NIX basta che apri il terminale e fai "telnet 192.168.1.254" (presumendo sia quello l'ip)
Su windows scarica programmini tipo PuTTYtel e connettiti
(su windows telnet di default è disabilitato, per usarlo bisogna attivarlo da qualche parte, usando PuTTY comunque si dovrebbe raggirare il problema)

PuTTY Download Page
 

Bondye

Nuovo Utente
39
5
Perchè comando non valido? non ha senso.

Su sistemi *NIX basta che apri il terminale e fai "telnet 192.168.1.254" (presumendo sia quello l'ip)
Su windows scarica programmini tipo PuTTYtel e connettiti
(su windows telnet di default è disabilitato, per usarlo bisogna attivarlo da qualche parte, usando PuTTY comunque si dovrebbe raggirare il problema)

PuTTY Download Page

Ho abilitato telnet e sono riuscito ad accedere alla pagina delle impostazioni. Lì però non conosco i comandi disponibili. Inoltre con questo procedimento non risparmierei tempo nello spegnimento del wifi.
Ciò che avevo in mente era la realizzazione di un eseguibile che accedesse alle impostazioni del modem e accendesse/spegnesse il wifi. Da quanto ho capito ciò è fuori dalla mia portata per il momento.
Grazie a tutti per le risposte ;)
 

signore del tempo

Utente Èlite
3,228
491
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
HDD
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
GPU
Sapphire 7850 1GB @ 1050MHz
Audio
Integrata
Monitor
Acer V193w
PSU
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
OS
ArchLinux + KDE - Windows 10
Ho abilitato telnet e sono riuscito ad accedere alla pagina delle impostazioni. Lì però non conosco i comandi disponibili. Inoltre con questo procedimento non risparmierei tempo nello spegnimento del wifi.
Ciò che avevo in mente era la realizzazione di un eseguibile che accedesse alle impostazioni del modem e accendesse/spegnesse il wifi. Da quanto ho capito ciò è fuori dalla mia portata per il momento.
Grazie a tutti per le risposte ;)
Puoi fare sempre una simulazione ;)
 

Entra

oppure Accedi utilizzando

Discussioni Simili

Hot: Sei vaccinato? [sondaggio anonimo]

  • Primo ciclo vaccinale completo (1-2 dosi)

    Voti: 430 78.9%
  • Fatta 1a dose, in attesa della 2a

    Voti: 18 3.3%
  • Sono prenotato per la 1a dose

    Voti: 13 2.4%
  • Non so se vaccinarmi

    Voti: 15 2.8%
  • Non ho intenzione di vacciarmi

    Voti: 57 10.5%
  • Fatta anche la terza dose

    Voti: 12 2.2%