¿Quieres automáticamente los archivos adjuntos de correo electrónico proceso basado en nombre de usuario y sujeto
-
30-09-2019 - |
Pregunta
Estoy buscando consejo sobre cómo configurar una puerta de enlace de correo electrónico para estudiantes me pueden enviar por correo electrónico las tareas y el correo electrónico serán tratados de forma automatizada.
Por ejemplo, si un studenta@univ.edu me manda un email con el asunto "hw1 CS208", que cruzarían cheque studenta en una lista de estudiantes que toman CS208, a continuación, tomar todos los archivos adjuntos, volcado en hw1 de ese estudiante carpeta y responder con un correo electrónico indicando lo que se recibieron los archivos y cuándo. Si el correo electrónico del estudiante fue malformado de alguna manera como el mal sujeto, o archivos que faltan, el servicio sería enviar un correo electrónico adecuada.
Tengo acceso administrativo a una máquina Linux en el campus que podrían ser configurado como un servidor de correo electrónico.
A primera vista yo estaba pensando en utilizar fetchmail y una tarea programada para leer consistentemente correo electrónico de un usuario designado y llevar a cabo las respuestas apropiadas con algún tipo de secuencia de comandos. ¿Suena esto como una forma buena para ir? Yo daría la bienvenida a ideas mejores?
Solución
espero que en la práctica no habrá mucho, mucho más excepciones a cualquier regla que prescribe que habrá electrónico conforme que se maneja correctamente. Se le compra un dolor de cabeza de fixups manuales y "el ordenador se comió mi tarea" reclamaciones.
Dado que se trata de una clase de nivel CS 200, les obligan a utilizar algún sistema de control de versiones y ahorrarse las molestias de análisis de formato libre e-mail con la estructura rígida que impone un control de versiones. Sus estudiantes se beneficiarán también de la obligación. Si mi hijo de 10 años de edad, pudieron apreciar el mérito de control de revisión automática dentro de Google Docs, supongo que sus estudiantes pueden manejar Mercurial o Git o incluso (¡oh!) Subversión.
añadido en respuesta al comentario
Sí, pero con Mercurial (y, presumiblemente, GIT) "depósito" es una palabra elegante para "directorio" y no es el peso pesado DBMSy cosita que los modelos más antiguos pueden VCS se han llevado a esperar.
Esta es la forma en que un estudiante que se puede esperar a trabajar en una asignación hipotética:
studenta@dorm$ hg clone https://Rich.univ.edu/studenta/cs208
$ cd cs208 ; broswer ./hw1.html
$ mkdir hw1 ; cd hw1 ; make my work files
$ hg add * ; hg commit -m "perfect the first time!" # updates locally only
$ make lots of bug fixes
$ hg commit -m "okay really done now"
$ hg push
# sleep, party, go to class with hangover
$ hg pull
$ browse hw2.html ; mkdir hw2
...
Las asignaciones en el repositorio del estudiante colocado allí por que era sólo por el bien de demostración. Ya que "propia" la máquina Rich.unix.edu, sus empujes se convierten en auténticos. Más te
- Escriba una (pequeña) secuencia de comandos para
hg init $student/cs208
en Rich.univ.edu para cada estudiante en la lista. - Figura si HTTPS o SSH funciona mejor en su entorno
- Añadir comentario - si se desea - a los archivos de los estudiantes que habían recoger en su próximo tirón
- tienen un administrado, conveniente, registra registro de todas las interacciones.
- Los estudiantes obtienen retroalimentación positiva en el momento de empuje que se aceptó
Por último, si el servidor de repositorio de estar abajo que podían
$ hg export tip | mail -s "server down; assignment done" Rich@univ.edu
Y todavía tendría una marca de tiempo, la versión digerida de su presentación que tiene un formato rígido que se podría comprometer para ellos, o mejor aún:
"Dr. Rich, el servidor estaba abajo !!!"
"Pero que me ha enviado una exportación a través del correo electrónico, Sí? "
"Por supuesto, señor."
"Bueno, sólo empujar cuando la máquina está de vuelta, me ya tiene la prueba de que ha completado a tiempo. "
"Oh Gee, el Dr. Rich, eres hincharse! "
Otros consejos
En lo personal, me gustaría raíz de una página con un diálogo de carga y también la posibilidad a la lista de archivos actuales y tal vez un servidor FTP. El problema con el correo electrónico es, que la transmisión hasta que el servidor está fuera de su alcance, como el correo electrónico es procesado por otros servidores a la suya en el camino. Electrónicos podrían perderse o alterarse en el camino, no todos los servidores podrían aceptar archivos adjuntos de un determinado tamaño o tipo. Aunque la idea es bastante buena, creo que produciría un menor de solución óptima que otros, como la mencionada página o servidor ftp.
editar
Yo prefiero prefieren forma de RSU. Un sistema de control de versiones que ahorraría muchas complicaciones y problemas. * tips hat to msw*