windows - Biblioteca de comunicaciones de módem/serie gratuitas o aplicación de secuencias de comandos con ZMODEM/KERMIT
serial-port (4)
Mi tarea parece simple al principio: marque en un terminal sobre un módem, inicie sesión, posiblemente envíe otros caracteres, y luego reciba el archivo (s) a través de ZMODEM o KERMIT .. o envíe un archivo a través de ZMODEM o KERMIT.
Me he estado arrancando los pelos tratando de hacer que esto funcione correctamente. Sobre todo estoy atrapado en el protocolo ZMODEM. Tengo una implementación en funcionamiento de XMODEM y YMODEM, que son bastante simples. Pero ZMODEM es obviamente un poco más complejo.
Estoy cansado de lidiar con todo esto. Especialmente con módems en general. Actualmente solo envío un comando ATDT y espero lo mejor.
Un programa de terminal que sea fácilmente programable también puede ser suficiente. Actualmente estoy investigando Tera Term. Pero una lógica necesaria mientras está conectada podría hacer que esta sea una solución menos deseable, o temporal.
Tengo curiosidad si alguien sabe de una biblioteca gratuita para comunicación serial para Windows, que admite los protocolos ZMODEM o KERMIT.
Idealmente, algo que pueda examinar las propiedades del módem y obtener cadenas de inicialización y conexión sería increíble. Traté de usar TAPI para marcar y obtener un control para el puerto, pero nunca funcionó de manera confiable.
¡No tengo miedo de integrar varios enfoques en mi propio código!
Mi plataforma actual y preferida es C ++, pero estoy abierto a todo.
Gracias por cualquier ayuda, consejo, sugerencias, etc.
Como está usando Windows, puede pagar en un símbolo del sistema y usar rasdial para conectarse. Una vez conectado, puede usar una secuencia de comandos kermit o el ftp de Windows para mover sus archivos. Es un kludge pero funciona para nosotros en esos casos. El fabricante de su módem debería poder decirle los comandos AT adecuados que puede agregar para la inicialización y las conexiones, no es lo mismo en todos los módems.
lrzsz está disponible para Unix. Es posible que pueda usarlo como referencia o portarlo a Windows.
sexyz fue una gran referencia, y probablemente sea útil en el futuro.
Sin embargo, para una solución temporal, y una rápida y económica, terminé escribiendo con Tara Term. ( http://hp.vector.co.jp/authors/VA002416/teraterm.html ) Esto fue bastante simple y fácil, y finalmente puedo volver a trabajar con tecnología moderna;)
sexyz está disponible como una implementación de protocolo de módem multiplataforma *. IIRC puede conectarse, luego llamar a sexyz pasando el descriptor de socket y algo de información adicional. Está disponible como parte del sincronizador, pero debería poder usarlo por separado.
Para obtener asistencia adicional, consulte la programación de sincronismo en vertrauen o en irc: //vert.synchro.net/#synchronet
Como una adición, sería realmente fácil implementar un shim de un cliente de terminal en node.js, luego usar el método child_process.spawn para usar stdio con sexyz.