Esta mañana he estado un buen rato realizando pruebas de envío emails a través de comandos AT con ún módem Siemens TC65, por lo que aprovecho que lo tengo en mente para hacer un breve y rápido ejemplo java con ello, del estilo de los que hice hace un tiempo.

Programación java Siemens


EJEMPLO_EMAIL
(Download)

Descripción: Muestra una aplicación básica de envío de EMAIL con java para módems Siemens. Crea una conexión GPRS y envía una email a la dirección de email especificada. Tan sólo tenéis que modificar las líneas de código donde se indican el servidor SMTP, el login y password de tu cuenta de email, la dirección de email origen desde donde se envía el email y la dirección de email destino al que se envía el email.

Válido para los módems: TC65, XT65, TC65T, MTX65 y MTX65+G

Bueno, espero que os resulte de interés en alguna ocasión.  Otro día más, buenas noches ;)


Post relacionados:

  1. Ejemplo FTP Java para módems Siemens Hoy pongo un brevísimo post con un nuevo ejemplo Java...
  2. Añadir datos a ficheros con módems Siemens-Cinterion desde java En bastantes ocasiones me ha llegado la pregunta de cómo...
  3. Ejemplo de FTP Java para módems gprs Cinterion TC65 y XT65 Posiblemente en alguna ocasión tengas que hacer un programita en...
  4. Ejemplos Java para módems de Siemens A lo largo de los últimos meses he ido poniendo...
  5. Cómo obtener la hora con los terminales MTX y módems Siemens / Cinterion Llevo casi un mes sin escribir en blogElectronica. Y es...








Etiquetas: , , , , ,
39 Respuestas a “Ejemplo envío Email Java para módems Siemens / Cinterion”
  1. JoseEB dice:

    Wenas BlogElectronica!

    Estoy desarrollando sobre un TC65 y tengo un problema cuando esta funcionando mucho tiempo seguido. Simplemente se apaga, da un codigo de error y nada mas. Suele hacerlo cada 8 horas mas o menos, aunque a veces lo hace mucho antes de ese tiempo.

    ^SHUTDOWN

    ^EXIT 00010000,01344b49414d582c283830303230312c39303032422c35313329
    ^SYSSTART

    Este es el codigo del error, que pasado a ascii el hex del error es: 4KIAMX,(800201,9002B,513)�.

    Error de firmware tal vez?? Alguna idea o causa posible??

    Estas haciendo un gran trabajo con este blog, es la referencia numero 1 sobre modems Siemens, quiero decir Cinterion jeje.

    Un saludo.

  2. blogElectronica dice:

    Hola JoseEB,

    no, no es posible saber la causa de un error de este tipo sin debugar la aplicación. Normalmente este tipo de errores suceden por haber agotado toda la memoria disponible. ¿Tal vez tienes un nº de threads elevado corriendo en paralelo? ¿Llamas de tanto en tanto al GC? ¿Monitorizas la memoria libre disponible? Yo de ti sacaría trazas del programa por el puerto serie para ver el punto exacto en el que se produce el error, monitorizando también la memoria libre. No hay otra manera. También llamaría de tanto en tanto al GC.

    Salu2.

  3. JoseEB dice:

    Buenas, gracias por una respuesta tan rapida.

    Pues tengo comprobaciones de memoria libre y llamo de forma directa al gc cada vuelta del bucle principal, y siempre tengo mas de 200kb libres de ram, te pego una pequeña traza de momentos antes del problema:

    Velocidad para calculos: ——>0.0
    Posicion Actualizada
    Horario Actualizado
    Posibles alarmas generadas
    Tomando datos Gps
    Memoria libre: 227024/589824
    Actualizando posicion, segundos para mandar14907.0
    Calidad:0
    Velocidad para calculos: ——>0.0
    Posicion Actualizada
    Horario Actualizado
    Posibles alarmas generadas
    Tomando datos Gps
    Memoria libre: 227380/589824
    Actualizando posicion, segundos para mandar15332.0
    Calidad:0
    Velocidad para calculos: ——>0.0
    Posicion Actualizada
    Horario Actualizado
    Posibles alarmas generadas
    Tomando datos Gps
    Memoria libre: 227436/589824
    Actualizando posicion, segundos para mandar15614.0
    Calidad:0
    Velocidad para calculos: ——>0.0
    Posicion Actualizada
    Horario Actualizado
    Posibles alarmas generadas
    Tomando datos Gps
    Memoria libre: 227436/589824
    Actualizando posicion, segundos para mandar15900.0
    Calidad:0
    Velocidad para calculos: ——>0.0
    Posicion Actualizada
    Horario Actualizado
    Posibles alarmas generadas
    Restando al escritor…
    Tomando datos Gps
    Memoria libre: 226860/589824
    Actualizando posicion, segundos para mandar16320.0
    Calidad:0
    Velocidad para calculos: ——>0.0
    Posicion Actualizada
    Horario Actualizado
    Posibles alarmas generadas
    Tomando datos Gps
    Memoria libre: 227436/589824
    Actualizando posicion, segundos para mandar16606.0
    Calidad:0
    Velocidad para calculos: ——>0.0
    Posicion Actualizada

    ^SHUTDOWN

    ^EXIT 00010000,01344b49414d582c283830303230312c39303032422c35313329
    ^SYSSTART

    La memoria siempre se mantiene estable en al menos 200 kb libres, no hay bajadas abruptas de memoria libre. Tengo solo 4 hilos corriendo a la vez ademas de un timerTask, por lo que el error me tiene un poco perdido, porque no puedo imaginarme si quiera las causas. Alguna otra causa por la que pueda ser??

  4. blogElectronica dice:

    Hola JoseEB,

    ¿Qué versión de firmware estás utilizando con el XT65? ¿Has probado actualizar al nuevo firmware 2.0?

    Salu2.

  5. edlectrico dice:

    Hola blogElectronica,

    estoy empezando a dar mis primeros pasos con el MTX65 y ya he conseguido mi primer HelloWorld (gracias a vosotros en gran parte)

    Ahora estoy intentando que funcione este ejemplo pero tengo un par de dudas.

    La primera, es que no sé si tengo que configurar algo del MTX o simplemente con el código y una tarjeta SIM cualquiera me vale.

    Y la segunda, es que no sé qué poner en el String direccionServidorSMTP, ya que esa IP no la conozco.

    Saludos y gracias de antemano

  6. blogElectronica dice:

    Hola Edlectrico,

    pues en la direcciónServidorSMTP has de poner eso, la dirección IP del servidor smtp de correo. Si no la sabes es tan fácil como hacer un ping a la dns de tu servidor de correo. Por ejemplo, desde una consola DOS haz:
    “ping servidorSmtp.miservidor.com”
    y te devolverá la IP del mismo. Ponla en el código. Creo recordar que es necesario especificar, en el caso del servicio de email, la dirección IP.

    Del MTX no tienes que configurar nada especial, con el código java y una tarjeta SIM cualquiera (provisionada para GPRS, es decir, cualquiera que puedas conseguir salvo que tengas bloqueado el servicio) te vale. Por supuesto, en el programa java, tienes que poner el apn, user y password adecuados para el operador de tu tarjeta SIM.

    Salu2.

  7. edlectrico dice:

    Hola de nuevo y gracias por la respuesta,

    me has solucionado ambas dudas.

    Ahora tengo otro problema, he editado las líneas de código referentes a mi cuenta de correo de gmail y la de la SIM, que es de la operadora vodafone.

    El problema está en que por la salida me aparece lo siguiente:

    Iniciando secuencia conexión GPRS
    Evento: ^SYSSTART
    Evento:
    ^SISW: 1, 1

    Enviado: Hola de blogElectronica.com
    Evento:
    ^SIS: 1, 0, 400, “SMTP protocol error (530): 5.7.0 Must issue a STARTTLS command first. y7sm3908022ugc.53″

    Para mí que es un error de identificación (he buscado el error 530 por Google y he leído temas relacionados), pero no sé dónde puede estar el fallo en el código. He buscado también el APN que me comentabas (de vodafone) y parece estar bien… De todas formas voy a pegar aquí el trozo de código referente a estas 2 partes (mi cuenta de correo y la sim) a ver si veis algo “extraño” que pueda estar erróneo:

    public void enviarEmail()
    {
    String direccionServidorSMTP = “66.249.93.109″;
    String login = “xxxx@gmail.com”;
    String password = “**********”;
    String emailOrigen = “xxxx@gmail.com”;
    String emailDestino = “xxxx@hotmail.com”;

    System.out.println(“Iniciando secuencia conexión GPRS”);

    try
    {
    /*Access point name: VodafoneES
    APN address: ac.vodafone.es
    login: vodafone
    contraseña: vodafone
    **/
    ATC.send(“AT^SICS=1,conType,GPRS0\r”);
    ATC.send(“at^sics=1,apn,ac.vodafone.es\r”);
    //he probado con VodafoneES y nada…
    ATC.send(“at^sics=1,user,vodafone\r”);
    ATC.send(“at^sics=1,passwd,vodafone\r”);

    ATC.send(“AT^SISS=1,conId,1\r”);
    ATC.send(“AT^SISS=1,srvType,SMTP\r”);
    ATC.send(“AT^SISS=1,alphabet,1\r”);
    ATC.send(“AT^SISS=1,address,\”" + direccionServidorSMTP + “\”\r”);
    ATC.send(“AT^SISS=1,user,\”" + login + “\”\r”);
    ATC.send(“AT^SISS=1,passwd,\”" + password + “\”\r”);
    ATC.send(“AT^SISS=1,smAuth,1\r”);
    ATC.send(“AT^SISS=1,smSubj,\”Prueba Envío EMail desde MTX65\”\r”);
    ATC.send(“AT^SISS=1,smFrom,\”" + emailOrigen + “\”\r”);
    ATC.send(“AT^SISS=1,smRcpt,\”" + emailDestino + “\”\r”);
    ATC.send(“AT^SISS=1,smCC,\”\”\r”);

    Espero que me podais echar una mano.

    Un saludo y muchas gracias

  8. Dudoso dice:

    Hola,

    Estoy desarrollando una aplicación para enviar e-mail-s a través de un módem TC65 de Siemens. Mi problema es el siguiente:

    Primeramente realizo la configuración de una manera satisfactoria. A continuación Realizo el envío de datos, tal y como se ha mostrado en este ejemplo. El problema es que tras enviar el comando AT^SISW=1,0,1 , el módem me contesta ^SISW=1,0,0 y OK pero no recibo el ^SISW: 1, 2 que confirma que los datos han sido enviados correctamente y por tanto tampoco recibo el e-mail correspondiente.

    No sé porque motivo los datos no se envían correctamente (teniendo en cuenta que no se produce ninguna respuesta de error y todo son respuestas OK).

    Les agradecería cualquier tipo de sugerencia,

    Dudoso.

  9. Dudoso dice:

    Hola de nuevo,

    Gracias por la rápida respuesta. Muy eficiente.

    Estoy con un terminal TC65T (no sé si esto responde a tu pregunta debido a que desconocía que existían diferentes versiones de TC65).

    1) ¿El problema podría estar relacionado con la NO activación del servicio GPRS por parte de la operadora? (He supuesto que lo estaba pero, realmente no tengo la certeza de que lo esté y quizás por este motivo la configuración es correcta pero no así el envío).

    2) Por otra parte, en cuanto al password (String password = “tuPassword”;//El password de tu cuenta de email), la cuenta de e-mail de origen que quiero utilizar es la que me proporcionala la operadora, es decir, num_tel@movistar.es. Estoy usando el password que me han dado al darme de alta en el correo móvil de movistar (al enviar un sms con la palabra clave al 22770). No estoy seguro si el password que estoy utilizando es el correcto.

    Siento la simpleza de mis preguntas, soy un novato total…

    Gracias,

    Dudoso

    • blogElectronica dice:

      Hola Duduso,

      si utilizas un TC65T tiene (seguramente) un TC65 con la versión 2.0, no hay problema.

      1) Por supuesto necesitas GPRS. Asegúrate que lo tienes.
      2) Ahí no te puedo ayudar, de los emails de telefónica ni idea, tendrás que preguntarles a ellos.

      Salu2

      • Dudoso dice:

        Hola blogElectronica,

        Gracias por la respuesta. El problema principal residía en la no habilitación del servicio GPRS por parte de la operadora. Basta con ponerse en contacto con la operadora en cuestión. En segundo lugar era necesario crear una cuenta de correo móvil movistar. Una vez creada la operadora te proporciona la clave necesaria para la configuración de la sesión GPRS.

        Ahora vengo con otra cuestión, espero puedan ayudarme:

        Estoy interesado en realizar una transferencia de datos durante una llamada de voz. ¿Es posible realizarlo con el terminal TC65T?. Si lo fuera, ¿Cuáles son los comandos necesarios?.

        Gracias de antemano,

        Dudoso

      • blogElectronica dice:

        Hola Dudoso,

        eso no es posible, lo que es posible es justo al revés. Mientras estás en una transferencia de datos gprs te puede entrar una llamada de voz y puedes gestionarla. En ese momento se quedan “en suspensión” los sockets que tengas abiertos y demás, y en cuanto cuelgues la llamada de voz los datos vuelven a estar “habilitados”, es decir si hay voz y datos, la voz manda, las 2 cosas no es posible.

        Salu2.

  10. Pablo dice:

    En primer lugar, agradecer al administrador de este blog el tiempo que invierte en hacernos avanzar en nuestro manejo del los módulos cinterion.

    Mi pregunta es la siguiente: ¿Podemos hacer que un mismo correo se envíe a múltiples direcciones a la vez? Es decir, ¿¿podemos poner varias direcciones en el campo SmRcpt??

    Un saludo

  11. Pua dice:

    Hola,

    Creo recordar que no es posible,

    tendras que hacer un bucle y enviar sucesivos correos

    Salu2

    Pua

  12. Pablo dice:

    Es lo que estaba haciendo hasta ahora. Pero eso hace que el tamaño de los datos enviados (y su precio) se multiplique por el número de receptores del correo.

    Muchas gracias por tu ayuda de todas formas.

    Un saludo
    Pablo.

  13. Siko dice:

    Hola, he adquirido hace una semana un modulo MTX63, y en el intento de envío de un email, siguiendo los pasos obtengo el siguiente error:

    ^SIS: 1, 0, 400, “SMTP protocol error (550): must be authenticated”

    Los envíos que realizo por comandos AT son los siguientes:

    AT+creg?

    +CREG: 0,1

    OK
    at^sics=0,conType,gprs0

    OK
    AT^SICS=0,user,vodafone

    OK
    AT^SICS=0,passwd,vodafone

    OK
    AT^SICS=0,apn,ac.vodafone.es

    OK
    at^siss=1,srvtype,SMTP

    OK
    at^siss=1,alphabet,1

    OK
    at^siss=1,conId,0

    OK
    at^siss=1,address,smtp.1and1.es

    OK
    at^siss=1,passwd,********

    OK
    at^siss=1,smAuth,1

    OK
    at^siss=1,user,****@******.com

    OK
    at^siss=1,smfrom,****@*********.com

    OK
    at^siss=1,smRcpt,*****@*******.com

    OK
    at^siss=1,smsubj,”testing”

    OK
    at^siso=1

    OK

    ^SISW: 1, 1
    at^sisw=1,5

    ^SISW: 1, 5, 0

    OK

    ^SIS: 1, 0, 400, “SMTP protocol error (550): must be authenticated”

    Esta misma rutina de comandos (con mínimas diferencias) si he conseguido que funcione con un modulo telit, con la misma tarjeta SIM y el mismo SMTP.

    He visto en la página 269 de 545 en lo referente al comando smAuth del datasheet de comandos AT (MTX63 v3 AT commands FW 03-001.pdf) lo siguiente:

    “If TC63 and SMTP server are not able to negotiate an authentication mechanism supported by both parties, the TC63 continues action without authentication.
    TC63 supports SMTP authentication.”

    Deduzco que el protocolo de autentificación de mi servidor smtp no está soportado por el modulo de siemens, ¿Podría estar en lo cierto? ¿Como podría saber cuál es ese protocolo que si soporta telit pero no siemens?, ¿alguna solución?

    Un saludo

  14. Dudoso dice:

    Hola,

    Antes de nada, muy muy útil este blog. Una pregunta sencilla:

    Estoy utilizando un módem TC65 y realizo en envío de un e-mail mediante éste. Me gustaría adjuntar un fichero a este e-mail. ¿Cuál es el código necesario en lenguaje C para realizar esta operación?

    Gracias de antemano y un saludo,

    Dudoso

    • blogElectronica dice:

      Hola Dudoso,

      no estoy seguro al 100%, pero creo que no puedes adjuntar un archivo en un email enviado por un TC65.

      Salu2.

      • Dudoso dice:

        Hola de nuevo,

        Gracias por la respuesta. Otra pregunta a raíz de tu respuesta:

        Si con un TC65 no es posible adjuntar un archivo en un e-mail, ¿con qué dispositivo de similares características podría hacerlo?

        Muchas gracias,

        Dudoso

      • Pua dice:

        Hola,

        si es posible pero es un poco engorroso.

        En general el protocolo SMT se usa para enviar correos a través de un servidor de correo.
        Cuando usas este protocolo el cliente de correo(en este caso la pila at^SISx del módulo Cinterion) puede/debe especificar parámetros como dirección del destinatario, dirección del enviante, sujeto, etc y finalmente el cuerpo del mensaje.
        Lo curioso es que los adjuntos de un correo electrónico se pueden enviar como texto, con lo cual podrían ser tranmitidos con los módulos de Cinterion que dispongan de pila TCP/IP mediante comandos AT^SISx, aunque estos comandos no dispongan de opción de incluir ficheros adjuntos.
        Para hacer esto con tu MMI necesitarás convertir el fichero en texto plano y añadirlo/enviarlo mediante los comandos AT usando ciertas cabeceras hexadécimal.
        Necesitarás convertir el fichero a adjuntar unsando codificación base64 y las cabeceras. Mas información sobre esta codificación en sanwikipedia http://en.wikipedia.org/wiki/Base64 . Desventeja, esta codificación hará 4/3 mas grande el fichero a causa de las cabeceras y la codificación. Para un fichero de 3K necesitarás enviar cerca de 4K de información, resumiendo mas datos mas €

        Ejemplo de envio de un correo sin fichero adjunto

        AT^SISS=0,”srvType”,”SMTP”

        AT^SISS=0,”alphabet”,1

        AT^SISS=0,”address”,”AddressOfSmptserver”

        AT^SISS=0,”smFrom”,”OriginatorAddress”

        AT^SISS=0,”smRcpt”,”RecipientAddress”

        AT^SISS=0,”smSubj”,”Text of Subject”

        Después se invoca el servicio SMT con el comando at^siso y con at^sisw se envia

        Ahora bien para enviar el correo con fichero adjunto, el mensaje tiene que ser dividido en varias partes. El comienzo de cada una de esas partes se marca con “boundary-pattern”. Para hacer esto lo siguientes parámetros son requeridos:

        MIME-Version: 1.0

        Content-Type: multipart/mixed; boundary=”aaaaaAAAAAbbbbbBBBBBcccccCCCCC”

        “multipart/mixed” significa que el emnsaje consta de varias partes

        “boundary” especifica que los datos tienen que detectar nuevos datos. Esta parte puede ser lo que quieras. Después esta parte necesitas “–” para señalar el nuevo “boundary”

        En este ejemplo empírico el “boundary” se define con la cadena “aaaaaAAAAAbbbbbBBBBBcccccCCCCC”, sin embargo el mensaje de texto tendrá que contener la cadena “–aaaaaAAAAAbbbbbBBBBBcccccCCCCC” siempre en cada nueva parte.

        Ejemplo:

        AT^SISS=0,”smHdr”,”MIME-Version: 1.0DAContent-Type: multipart/mixed; boundary=\22aaaaaAAAAAbbbbbBBBBBcccccCCCCC\22″

        El mensaje de texto que será enviado usando at^siw tiene que ser modificado para corresponder alsiguiente formato:

        –boundary pattern ***

        Content-Type: text/plain; charset=US-ASCII empty line***

        message text***

        empty line***

        –boundary pattern ///

        Content-Type: application/octet-stream ///

        Content-Transfer-Encoding: base64 ///

        Content-Disposition: attachment; filename=”name of file” ///

        empty line ///

        content of attached file encoded in base64 format ///

        –boundary pattern–///

        La parte que acaba en *** es el mensaje y la parte queacabaen /// es el fichero . Por supuesto eliminar del mensaje los dos tipos de marcas

        Cada línea tiene que terminar con CRLF(0x0D y 0x0A)

        Cada empty line es un CRLF

        Cada bounday debe tener “–”

        El último boundary debe tener tambien “–”

        Para añadir varios ficheros esto se complica con boundary por separado, vamos no me voy a meter en esto.

        Ejemplo codificado con comandos AT:

        En este ejemplo se describe un correo con un fichero adjunto llamado “test06.bin”. Este fichero puede ser lo que tu quieras, pero pondré un texto para no complicarlo.

        Texto:This is a test

        Tamaño de test06.bin 14Bytes.

        Una vez convertido en texto en base64 será:

        VGhpcyBpcyBhIHRlc3Q=

        Gracias http://www.webutils.pl/index.php?idx=base64 por hacer esto por mi

        La secuencia de comandos sería

        AT^SISS=0,”srvType”,”SMTP”

        AT^SISS=0,”alphabet”,1

        AT^SISS=0,”address”,”smtp.xxx.xxx”

        AT^SISS=0,”smFrom”,”xxx@xxx.xxx”

        AT^SISS=0,”smRcpt”,”xxxreceptor@xxx.xxx”

        AT^SISS=0,”smSubj”,”Asunto”

        AT^SISS=0,”smHdr”,”MIME-Version: 1.0DAContent-Type: multipart/mixed; boundary=\22aaaaaAAAAAbbbbbBBBBBcccccCCCCC\22″

        Ahora introduce AT^SISO=0 para comenzar la conexión y el servicio y recibirás el URC ^SISW:0,1 y envia al modem los siquientes comandos
        AT^SISW=0,365,1

        ^SISW: 0, 365, 0

        –aaaaaAAAAAbbbbbBBBBBcccccCCCCC

        Content-Type: text/plain; charset=US-ASCII

        This is an example how to send an email with attachment

        –aaaaaAAAAAbbbbbBBBBBcccccCCCCC

        Content-Type: application/octet-stream

        Content-Transfer-Encoding: base64

        Content-Disposition: attachment; filename=”test06.bin”

        VGhpcyBpcyBhIHRlc3Q=

        –aaaaaAAAAAbbbbbBBBBBcccccCCCCC–

        OK

        ^SISW: 0, 2

        AT^SISC=0

        OK

        He suprimido mi servidor de correo y direcciones de correo.

        Te debería llegar un correo en Asunto: Asunto; en cuerpo del mensaje “This is an example how to send an email with attachment” y con un fichero adjunto llamado test06.bin que si lo abres con un editor de texto pone “This is a test”

        Ahora a experimentar.

        Después de semejante ladrillo y complicación también te puedes plantear hacer un append en un servidor FTP, o crear ficheros nuevos con el contenido que quieras, creo será muuuuuchooooo mas sencillo.

        Ahora un voluntario para implementarlo en Java con Comandos AT , o en Java con sockets.

        Salu2

        Pua

    • Pua dice:

      hola,

      disculpad por las faltas de ortografía.

      comentar que el símbo que sale — coresponde a 2 veces el simbolo – . en en ejemplo codificado que da claro que son 2 veces el caracter -

      Salu2

      Pua

  15. Gabriele dice:

    Hola BlogElectronica!!

    I’m developing an application with the module XT75. I have problem in measurement with ADC_IN ports.
    Have you any example to provide me?
    My problem consists in read the same value of voltage on both ports (I think that the program which I wrote is right, so maybe the problem is hardware)

    Thanks for reply!!
    Gabriele

  16. Pua dice:

    Hi Grabriele,

    check the ranged value thaht the module can measure, the module has ranges to measure and maybe your device is out of this ranges. you can find the information in the Hardware description of this module. Other possibility could be your circuit.
    I hope there is a example in the hardware manual

    Regards

    Pua

  17. blogElectronica dice:

    Hi Grabriele,

    maybe you can use something like this:

    //Método para leer un ADC.
    public int getADC(int numADC)
    {
    String respuestaAT,resultado;
    int posiIni=0,posiFin=0;
    try
    {
    //Leemos el estado de un determinado nº de pin
    respuestaAT=sendAT(“at^sradc=” + numADC);
    posiIni=respuestaAT.indexOf(“^SRADC:”);
    if (posiIni>-1)
    {
    posiFin=respuestaAT.indexOf(“\r”, posiIni);
    resultado=respuestaAT.substring(posiIni+12, posiFin);
    return Integer.valueOf(resultado).intValue();;
    }
    else
    return 0;

    }
    catch (Exception e)
    {
    if (debug) System.out.println(“Excepcion getADC”);
    if (debug) e.printStackTrace();
    }
    return 0;

    }

    The range is 0 … 2.4V

    Best regards.

  18. Alfredo dice:

    Hola!

    Retomo el hilo para preguntar si también es posible recibir emails con los Cinterion. ¿Desde un servidor POP3 quizá?

    Saludos.

  19. blogElectronica dice:

    Hola Alfredo,

    pues sí, puedes perfectamente bajarte un email con un TC65i? Tienes un ejemplo en la página 304 del manual de comandos AT del tc65i.

    Salu2

  20. Miguel dice:

    muy buenas a tod@s,
    estoy intentando mandar un email con el ejemplo arriba expuesto y no lo consigo, leyendo vuestros comentarios me surgen 3 dudas:
    - Para enviar un e-mail con un TC65 ¿qué versión necesito? yo tengo la 3.
    - En caso de que consiguiera mandar un e-mail ¿se puede adjuntar un archivo .txt?
    - esta es mi configuración: ¿es correcta?

    String direccionServidorSMTP = “xxx.xxx.xxx.xxx”; // la dirección que sea
    String login = “miguel@hotmail.com”;
    String password = “micontraseña”;
    String emailOrigen = “miguel@hotmail.com”;
    String emailDestino = “miguelito@gmail.com”;

    ATC.send(“AT^SICS=1,conType,GPRS0\r”);
    ATC.send(“at^sics=1,apn,movistar.es\r”);
    ATC.send(“at^sics=1,user,MOVISTAR\r”);
    ATC.send(“at^sics=1,passwd,MOVISTAR\r”);

    Un saludo y gracias.

  21. Miguel dice:

    muy buenas a tod@s,
    ya por fin puedo enviar email desde mi TC65 v.3 con la configuración anteriormente indicada, ahora tengo otro problema dicho email lo recibo bien si el cuerpo del mensaje es pequeño cuando tengo que mandar una ristra gorda de bytes no lo consigue enviar, da este resultado:
    java.io.IOException: Error sending data, no ongoing data connection
    – com.siemens.icm.io.ATCommand..unknown.(), bci=0
    – com.siemens.icm.io.ATCommand..unknown.(), bci=4
    – com.siemens.icm.io.ATCommand$OutputStreamDataConnection.write(), bci=59
    – com.siemens.icm.io.ATCommand$OutputStreamDataConnection.write(), bci=5
    – src.main.escribirSocket(), bci=60
    – src.main.enviarEmail(), bci=338
    – src.main.(), bci=162
    – java.lang.Class.newInstance(), bci=0
    – javax.microedition.midlet.Main.main(), bci=53

    ¿alguna solución?

    Saludos

    • blogElectronica dice:

      Hola Miguel,

      eso es porque escribes en el socket antes de recibir el URC de que puedes escribir más datos por el socket. Es decir, si usas el comando AT^SISW para escribir datos ANTES de recibir el URC ^SISW: 1,1 (indicando que está disponible el socket 1 por donde envías datos, recibirás ese error.

      Salu2.

  22. CRACKET dice:

    HOLA A TODOS

    Estoy provando el ejemplo del Envio EMAIL con comandos AT

    pero siempre me sale el mismo error:

    400, “SMTP protocol error (530): 5.7.0 Must issue a STARTTLS command first

    E buscado y sale que es error de authentificacion,

    e provado con

    at^siss=1,smAuth,1

    y con

    at^siss=1,smAuth,0

    y siempre sale el mismo error,

    Alguien sabe que pasa?

    GGRACIAS Y SALUDOS

  23.  
Deja una Respuesta

Puedes publicar un comentario aquí si quieres, pero te recomiendo que uses el nuevo foroElectronica.com para introducir comentarios. Te contestaré más rápido. Recuerda que debes registrarte si no lo estás para publicar un comentario.