Si quieres ser colaborador en este blog colectivo dedicado a pequeñas rutinas

que nos puedan facilitar las tareas con las aplicaciones en la nube (o en
tierra) envía un email con tu dirección de correo electrónico a

enlanubetic@gmail.com



Google Apps Script (I) : Formulario de contacto

Origen

Las Google Apps Scripts, o secuencias de comandos, son pequeñas programaciones de comandos JavaScript que facilita la automatización de algunas tareas en las aplicaciones de Google.

A partir de leer el post de mi amigo Antonio Garrido , asesor TIC del CPR de Alcazár de San Juan en Ciudad Real :

Cuestionario autocalificables con Google Docs y Flubaroo


en el que explica cómo hacer mediante una secuencia de comandos llamada Flubaroo, cuestionarios autoevaluables con Google Docs, me he puesto a trastear un poco con ellas y he encontrado dos utilidades más. En este post veremos cómo hacer un formulario de contacto que se envía completo a una dirección de email.

Formulario de Contacto

Sabemos que con Google Docs se pueden hacer formularios con mucha facilidad y que los datos enviados a través de ellos quedan recogidos en un hoja de cálculo. En esta hoja de cálculo se pueden configurar las notificaciones para que, cuando alguien rellena el formulario, te envíe un aviso por correo electrónico. De esta manera, podemos entrar en la hoja y ver el nuevo registro.

Hay una forma de que, cuando alguien envíe el formulario, recibir en el correo electrónico las respuestas completas, sin necesidad de acudir a la hoja de cálculo para visualizar el registro generado. Esto puede servir para hacer formularios de contacto para páginas web, etc.

Procedimiento:

1. Crear un formulario en Google Docs



2. Definimos los campos que creamos necesarios. Uno de ellos será la dirección de email de la persona que envía dicho formulario (necesario para poder responder). En este ejemplo crearé tres preguntas: Nombre, email y mensaje :


3. Una vez creados los campos guardamos el formulario y volvemos a la hoja de cálculo asociada:


4.Una vez dentro de la hoja, elegimos dentro del menú "Insertar" : "Secuencia de comandos"




5. En la ventana que aparece con el nombre de Galería de Secuencia de Comandos, hacemos una búsqueda por el término Contact Us, y en el resultado que sale "Contact Us Form Emailer" clicamos en Instalar, tras lo cual puede que nos aparezca un mensaje de error al cual no debemos hacer ningún caso :



 6. Ahora es el momento en el que tenemos que editar nuestra secuencia de comandos y activarla para que se ejecute cuando alguien envía un formulario.


 Entraremos en una nueva ventana de edición :


Tendremos que personalizar algunas líneas con nuestros propios datos :

function contactUsMailer(e) {
  //  This script e-mails the contents of a form to a given recipient
  //  The form must have three fields in the order of: name; e-mail address; and message
  //  You must change the recipient variable below to your e-mail address
  try {
    var recipient = "guerra.jc@gmail.com" ;      ENTRE LAS COMILLAS PONEMOS LA DIRECCIÓN DONDE QUEREMOS RECIBIR EL FORMULARIO. SI PONEMOS VARIAS DIRECCIONES SEPARADAS CON COMAS , SE RECIBIRÁ EN TODAS.
    var timestamp = e.values[0];
    var name = e.values[1];
    var email = e.values[2];
    var message = e.values[3];
    var body = name+' <'+email+'> Ha enviado el siguiente mensaje a través de la web: '+message;
    var bodyHTML1 = '<p>'+name+' <a href="mailto:'+email+'">'+email+'</a> Ha enviado el siguiente mensaje a través de la web: </p>';  PERSONALIZAMOS LAS FRASES DEL CUERPO DEL MENSAJE
    var bodyHTML2 = '<blockquote>'+message+'</blockquote>';
LA LÍNEA varbodyHTML3  LA PODEMOS BORRAR PORQUE ES PUBLICIDAD DE LA SECUENCIA QUE APARECERÍA AL FINAL DEL MENSAJE
    var advancedArgs = {htmlBody:bodyHTML1+bodyHTML2 , replyTo:email};  SI ELIMINAMOS LA LÍNEA ANTERIOR, EN ESTA TENEMOS QUE BORRAR +bodyHTML3 porque no estaría definida
    MailApp.sendEmail(recipient, "Mensaje a través de la web", body, advancedArgs);
  } catch(e){
    MailApp.sendEmail(recipient, "Error - Contact Us Form", e.message);
  }
}





Una vez hechos los cambio vamos al menú "Archivo" y Guardamos.


7. Ahora activaremos la secuencia. Para ello iremos al menú "Activadores" y ahí clicamos "Activadores de la secuencia de comandos actual"





clicamos en Here to add one now


Cambiamos el tercer campo a "On form submit" . De esta forma recibiremos el formulario cuando alguien lo envía . Guardamos el activador.


Nos aparecerá el siguiente aviso y lo autorizaremos :



8. Ahora hacemos una prueba de envío de formulario :



Si hemos realizado las acciones anteriores correctamente, recibiremos un email en nuestro buzón :




¡Compártelo!

5 comentarios:

Iñaki Aldekoa

Excelente JC, va de maravilla.
En mi caso deseaba enviar el formulario a varios correos y probé con lo típico, es decir, separarlos con comas, y....¡funciona!
Gracias por la ayuda

Juan Carlos Guerra

Gracias Iñaki, me alegro de que le valga a alguien.

Ana Rodera

m parece muy útil!!! gracias Juan Carlos :D
voy a probar...

Freddy

Muchas Gracias Juan Carlos. Me parece muy útil, así no tendré que estar cada momento, comprobando si ha habido nuevas entradas en el formulario.

Waldier Rafael

quiero crear un formulario en la que incluya un campo donde escriban su correo, pero al momento de enviar las respuestas envie una copia de esas respuestas al correo que se ingrese.

Publicar un comentario en la entrada

La nube

"Google Apps" #5añosenlanube #eltpics #guappis 123D catch 360º 3D 5añosenlanube ABL about.me accesibilidad acortador acortar direccion actitud ActiveTextBook actividades activismo social aditzak agrupar direcciones web AICLE aleatorio alertas almacenamiento alumnado analisis análisis anatomía Anatronica android angry birds animación animación a la lectura animoto APA aplicaciones App app colaborativo App musical appletv apps aprender archivos_pesados ARcrowd arduino arte astronomia atlas anatómico humano aTube Catcher Audacity audio audio audacity tutorial audiolibro audiovisuales augment aula aula de ciencias Aumentaty Aurasma Autodesk AVATAR ayudas azar bachillerato backchannel backup badges barcode scanner base de datos bases de datos bContext bibliografía bilingüismo Biodigital Biografía biología bitacoras bitly Blackberry blendspace Blog blogger blogvio Bloomfits bloxp Blubbr bluetooth brainstorming brillo Buscador búsqueda búsquedas avanzadas cacoo Calaméo calendario canva capturador Cardboard celtx chatbot Chatter Pix Chibimachine chrome chrome OS chromebook chromecast chromium OS citación clase al revés clasificar class dojo classroom cloud código códigos QR coggle colaborar colaborativo colecciones color comic cómics compartir compartir archivos competencias complementos comunidad comunidades de aprendizaje concentración concurso conducta connected classrooms construir contenidos Contenidos Digitales content curator contraseña contraste controlRemoto conversor audio convertidor de música Convertidor de videos convertir documentos Convertir formatos Cooliris Express copia de seguridad correo electrónico Cortafuegos corubrics corubrics CoRubrics creative commons creatividad CSS cuaderno de notas cuaderno profesor cuentos Cuerpo humano cuestionarios Cuña curación de contenidos datos delicious derechos de autor dermandar descargar descargas desktop deuteranope dia 0.97.2 diagramas diapositivas dibujo vectorial diccionarios dickens dictados didáctica difundir Diigo dipity diplomas diseño diseño gráfico diseños dispositivos móviles divertimento dnoise docente.me docentes doctopus documentos donostia qr dotdotdot dotepub dotsub drive drivers droid dropbox ebook ebook glue economía EdAS edcanvas edición edilim editor de imágenes edmodo Edpuzzle Educación educación especial Educación Primaria educaplay eduClipper efectos en imágenes eje temporal ejercicios ejes cronológicos El País electronica elementos ELT email embeber emuladores de discos encuestas Enigma Enigma virtualbox enlaces epsarea epub escenas escribir escritorio escritura escritura manual ESO ESO; ABP esquemas esquinas estadística estante Estoig Digital estrategias de enseñanza estudio etiqueta etiquetas eTwinning euskera evaluación eventos evernote examenes examtime excel exelearning Experiencias extensiones ezcast facebook favicon feed Firefox firewall firma firma digital física flash Flickr flipbook flipped flipped classroom flippity flubaroo fondo fondos ForgetBox Formación format factory formpublisher forms formulario fotografías fotor freeware ftp fuentes fumetti gadget GAFE galería de imágenes gamificacion gamificación garabatos geacron generadores Generadores de actividades Genially geogebra geolocalización gestion de aula gestión del tiempo gestión docente gifs animados GIMP Glogster gmail gmath goggles goodrae google google + google apps google apps script google art google classroom Google Cloud Connet google docs google drive google keep Google Maps Google Play Music google sites googlemaps goteo GPS gráficos gratis gratuito Gravit GROOVESHARK grouply Haiku Deck hang out hashtag hello sign hermanamientos europeos herramienta 2.0 herramienta20 herramientas herramientas automáticas herramientas para hacer presentaciones online historia historias Historypin hoja de cálculo HTML html5 iAnnotate iconos ideas idiomas iDoceo ikaskidetza Imagen imagen panorámica imágenes imagenes 360 imágenes vectoriales images Images Actives imaginación iMotion impresión Impresión en línea in3Dgallery inclusión infantil infografía Inforgr.am informacion inglés Inkscape insertación insignias Instagram instalación Insync INTEF interactivo intercambio educativo interfaces internet intranet investigación iOS Ipad iTunes iVoox jigsawplanet Jingle joomag JotForm juego juegos jugar jumpchat junaio kahoot karaoke musica kidblog kit universal labolsavirtual Layar lector lectura leer más tarde legibilidad lego Lego lengua lenguaje visual lenguas extranjeras letras léxico LibreOffice libro libro electrónico libros libros interactivos licencias likebox lineas de tiempo linkedin Linux lista listas de reproducción literatura LiveBinders lluvía de ideas logos Lucidpress magicscroll maker Makewaves Manual mapas mapas conceptuales mapas de flujo mapas de sitio mapas mentales mapear Maps Engine Lite maquetación marcador social Marcadores Sociales marketing matematicas matemáticas Matemáticas materiales menú metaio metta mezcla de audio microblogging mind42 mindflash Mindmeister Mindomo mirroring mlearning mobiletest MOOC Moodle Moovly movil móvil mozilla MP3 multimedia Multimedia: Vídeo multisistema mural murales muro colaborativo Music Timeline música MusicAll My Maps Naptha narración digital navegación anónima navegador navidad notas notebook Notegraphy Notes Plus novedades nube nubes de palabras OCR oddcast office online open badges Open Sankoré open source operaciones oralidad orden Organización de la Información padlet padres página palillos pantalla PDF PDI pensamiento computacional perfil periódico periodismo pestaña photopeach photopin photoshop photoshop express picasa Pinterest pixenate pixlr plagios planetario plantilla plantillas plataforma PLE Plickers Pocket podcast poesía popplet popularidad portable Portables portafolios portal post-its post.as posts powerpoint PPT preguntas premios prensa present.me presentaciones prezi primaria Prisma Privacidad procesador de texto profesorado Programa programación pronunciación proprofs protanope protección prototipos proxy proyecto colaborativo proyectos proyectos europeos publicación publicaciones publicar contenido puzzles qr qrhacker questionform Quickscreenshare quimica química quizbox quizz RA radio ranking Readability reader readium Realidad Aumentada Realidad Virtual reconocimiento facial recurso colaborativo recurso didáctico recursos recursos digitales recursos online recuva Redes Educativas Redes Sociales redimensionar redondear Reeder regalos relajación repositorio respuestas retoque digital revistas digitales rifas robotica Robótica róbotica rotar roundpic rowcall RSS rúbricas scanner scratch screen screencastify screencastomatic secuencia de comandos google secundaria seguridad seo servidor sexting símbolos simo simulación simulador sincronización sistema de información científica sistema de respuesta Sketchfab Sketchup SKYPE slide slide.ly Slidemypics SlideTalk smart smartphone software Software Libre Sonic Notify sonido sorteos SoundCloud spreaker STEM stepmap stop motion Storify subtítulos SVG SWF sync tabla tablet tackk talk it talleres Talleres tamaño tamborrada teachem Teamviewer tecnología TED templates test testeando text to speech texto thatquiz the noun project TIC tickets tightvnc time lapse timeline timerime Timetable Web tipografía tipografias tiro parabólico Tolosa toondoo trabajos colaborativos traductor transferencia tritanope trivial trivial educativo trivial online truco TTS tutorial TV Twitter twitterfeed typeform umapper unfollowersme unidades Unitag URL USB usuarios vacaciones valores vcard verbos video vídeo videoconferencias videojuegos Videotutorial vimeo viper Virtualbox Virtualización visibilidad Visible Tweets visualizar visualthinking vlc VOKI voz wallwisher wav web web 2.0 webcam Weebly wetranfer widget wire frames word wordle wordlens wordpress WorldTV Youtube
 
En la nube TIC Copyright © 2011 | Tema diseñado por: compartidisimo | Con la tecnología de: Blogger