Como garantir que o garoto conclua uma lição on-line antes de permitir o uso (irrestrito) do computador?


2

Gostaria que meu filho concluísse uma lição on-line neste site: http://www.typingweb.com/ antes de permitir que ele usasse o computador (especificamente: jogando Minecraft!).

Há alguma maneira de fazer isso?

Eu corro o Windows 7 Ultimate. Versões especiais do navegador, contas de usuário etc. podem ser instaladas (ou criadas), se necessário.


1
existe alguma maneira de saber se ele terminou a lição automaticamente, ou seja, um certificado de conclusão que ele imprime ou salva, ou um e-mail do site que diz que ele terminou. Caso contrário, a maneira mais fácil será criar uma conta e senha separadas, protegendo a conta normal, para que ele não possa fazer login e jogar minecraft sem a sua permissão, permitindo que você verifique sua conclusão.
sww1235

então, há uma lição diária ou algo assim? que, no final, redireciona você para uma página 'bem feita', ou similar ...?
ᔕᖺᘎᕊ

Respostas:


0

Acabei escrevendo o seguinte código que entra como professor e gera um relatório que mostra quantos segundos seu aluno passou hoje. No meu caso, acabei de criar minha conta como professor e filho como aluno e verifico se ele passou 5 minutos ou mais. O script Groovy abaixo é executado (usando um invólucro .BAT) na conta do meu filho e efetua logoff se ele não concluir os 5 minutos necessários.

@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.5.2')
import groovyx.net.http.*
import static groovyx.net.http.ContentType.URLENC

import javax.xml.ws.handler.Handler
import javax.xml.ws.http.HTTPBinding

def http = new HTTPBuilder("https://www.typingweb.com")

http.post( path: '/portal/index/login', body: [email: 'your@emailhere.com', password: 'yourpasswordhere'],
        requestContentType: URLENC ) { resp, reader ->

    println "response status: ${resp.statusLine}"
    println 'Headers: -----------'
    resp.headers.each { h ->
        println " ${h.name} : ${h.value}"
    }
    println 'Response data: -----'
    System.out << reader
    println '\n--------------------'
}

def today = new Date().format( 'yyyy-MM-dd' )

println today


http.post( path: "/portal/reports/run/export/1/date/${today}/dateRange/today/endDate//startDate//gaGroupID/all/report/exercises/format/csv"
        ) { resp, reader ->

    println "response status: ${resp.statusLine}"
    println 'Headers: -----------'
    resp.headers.each { h ->
        println " ${h.name} : ${h.value}"
    }
    println 'Response data: -----'
    def lastLine
    reader.eachLine{ line ->
        lastLine = line
    }

    println lastLine

    def seconds = lastLine.split(',')[4].replaceAll('"', '')
    println seconds

    if ( seconds.isNumber() && (seconds.toInteger() >= 300) ) {
        println "Quitting WITHOUT logging off"
        System.exit(0);
    }

    def proc = """msg * "Tienes que hacer 5 minutos de escribir a maquina" """.execute()
    proc.waitFor()
    println "Logging off..."
    """logoff""".execute()
}

0_0. Pode ajudar a dizer que idioma. Java?
Journeyman Geek

É Groovy (é mencionado na resposta)
antorsae
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.