iMest es un software desarrollado bajo la plataforma LAMPG - Linux Apache MySQL PHP y Gnokii.
Este software permite usar Gnokii como interfaz para envío de sms y así poder enviar multiples mensajes SMS personalizados desde una página web a múltiples categorías de contactos.
Características del software.
Envío de mensajes SMS múltiples por tipo de contacto.
Envío de mensajes SMS a múltiples categorías de contacto.
Envío de mensaje SMS personal.
Captura de categorías de contactos.
Captura de contactos.
Asignación de contactos a múltiples categorías.
Programación de fecha de envío de mensajes SMS.
Uso de múltiples teléfonos móviles para envío de SMS.
Importación de contactos.
Captura, edición, listado, búsqueda y eliminación de contactos.
Captura, edición, listado, búsqueda y eliminación de categorías.
Captura, edición, listado, búsqueda y eliminación de mensajes.
Registro de mensajes enviados y no enviados.
Reenvío de mensajes.
Personalización de mensajes múltiples enviados en base a palabras clave.
Detección automática de teléfonos conectados por usb desde configuración del sistema.
#INSTALACION DE OAXROM WEB SMS EN UBUNTU LINUX #actualizamos el repositorio de Ubuntu sudoapt-get update #instalamos las dependencias del software sudoapt-getinstall--yes apache2 sudoapt-getinstall--yes php5 php5-cli php5-mysql php-pear libapache2-mod-php5 php5-curl php5-gd php-db #al instalar el servidor de Base de Datos pedirá una contraseña, introducir "ubuntu" sin comillas o alguna otro password para acceso al servidor que se usará más adelante sudoapt-getinstall--yes mysql-client-5.0 mysql-server-5.0 libmysqlclient15-dev sudoapt-getinstall--yes libgnokii3 libgnokii3-dev gnokii gnokii-common gnokii-cli gnokii-smsd gnokii-smsd-mysql sudoapt-getinstall--yesunzip #entramos al directorio web cd/var/www #obtenemos el software desde internet
Ir al sitio del proyecto en https://sourceforge.net/projects/binnizawebsms/ y obtener la última versión disponible de OaxRom WebSMS #descomprimimos el archivo sudounzip sms.zip #accedemos al directorio cd sms #creamos la base de datos para el WebSMS
mysql -u root -p #password: es el que se introdujo cuándo se instaló mysql en este caso:ubuntu #Asignar password
create database NOMBREBASEDEDATOS;
grant all privileges on NOMBREBASEDEDATOS.* to USUARIO@localhost identified by "SUPERSECRETO";
flush privileges; exit
mysql -u USUARIO -pSUPERSECRETO NOMBREBASEDEDATOS < imest.sql #configurar en el siguiente archivo los parámetros de nombre de base de datos, usuario y password sudo editor includes/config.php #creamos el archivo dónde recibiremos los archivos csv de contacto que importemos mkdir csv #copiamos el directorio cron que contiene un script para monitorear constantemente los envíos de SMS programados sudocp-rf cron csv #buscamos el usuario del servidor web apache ps aux | grep apache #esto podría regresarnos "www-data" en la primera línea sin las comillas, ese valor lo usaríamos a continuación #www-data 8284 0.0 0.4 28404 4388 ? S 14:46 0:00 /usr/sbin/apache2 -k start #asignamos el usuario y grupo del usuario del servidor web a la carpeta creada para que tenga permisos de escritura la aplicación WebSMS sudochown-R www-data:ww-data csv #ponemos al usuario web apache dentro del grupo de usuarios que tienen permiso de usar los puertos módem, esto para enviar sms por los usb de los teléfonos sudo editor /etc/group #buscamos dónde diga dialout y agregar ",www-data" sin las comillas, en este caso dice phylevn pero el valor cambia al usuario del sistema
dialout:x:20<img src="plugins/Emoticons/images/tongue.png"border="0"alt="tongue.png "width="16"height="16"/>hylevn #por
dialout:x:20<img src="plugins/Emoticons/images/tongue.png"border="0"alt="tongue.png "width="16"height="16"/>hylevn,www-data #guardamos, para el caso del editor nano presionando CTRL+O,ENTER para aceptar y luego presionamos CTRL+X para salir. #modificamos la configuración de PHP sudo editor /etc/php5/apache2/php.ini #buscamos los siguientes valores en el archivo y le ponemos los valores aquí mencionados, para buscar en el editor presionar Ctrl +W y teclear default_charset para ir a donde estuviera la linea buscada, igual para las siguientes opciones
default_charset = "utf8"
magic_quotes_gpc = off
upload_max_filesize = 32M
max_execution_time = 900
max_input_time = 900
memory_limit = 128M #ya que se editen estos valores, presionar CTRL+O y ENTER para guardar, luego CTRL+X para salir.
#reiniciamos el servidor web sudo/etc/init.d/apache2 restart
*************
Probando el software de envío de SMS
*************
Abrimos un navegador web a la dirección IP de la máquina dónde se instaló el software de envío de SMS
#por ejemplo si el servidor está sobre la misma máquina que se está usando:
http://localhost/sms/
#Si estuviera en alguna otra máquina
http://DIRECION_IP_DEL_SERVIDOR/sms
#Pedirá un login y password, por default es :
login:admin
password:admin
Para probar el envío de SMS:
Conectar un teléfono por USB, los Nokia funcionan bien.
Cuándo se conecta el teléfono en Linux lo detecta como un puerto TTYACM0
Esto se puede verificar tecleando el comando "dmesg" y podría darnos algo como lo siguiente
[28833.199893] cdc_acm 4-1:1.1: ttyACM0: USB ACM device
Para que el sistema detecte el puerto conectado ir a configuración y seleccionar detectar puerto, si lo lista entonces todo va bien, de lo contrario reintentar
Al momento de detectar el puerto por default crea un archivo de configuración en el directorio csv
Si detectó el puerto ahora se puede enviar el mensaje sms, para esto ir a
Mensajes SMS -> Solo un Mensaje
El introducir un número de celular,
un texto,
seleccionar el archivo de configuración por dónde se desea enviar el SMS, en este caso solo está el que se creó anteriormente,
introduzca las letras para validación y presione enviar.
El sistema enviaría en automático el mensaje SMS al número introducido, verificar que haya llegado correctamente
*************
INFORMACION ADICIONAL
*************
Si por alguna razón no envía los sms, puede ser que linux no le esté permitiendo al usuario apache usar gnokii, para esto editar el archivo<br> sudo editor /etc/sudoers<br>
y agregar
www-data ALL=NOPASSWD: gnokii
esto para que al usar sudo gnokii linux se salte el password y le deje ejecutar el software
*************
GNOKII
*************
#archivo de configuración de gnokii #El sistema permite leer diversos archivos de configuración de Gnokii de tal forma que es posible usar diversos móviles para enviar SMS desde la aplicación web. #Cada teléfono es detectado como un puerto serial por Linux, por ejemplo si se detecta el siguiente puerto /dev/ttyACMO el archivo configurado csv/gnokiiNokia3500 contendría lo siguiente: [global]
port = /dev/ttyACM0
model = AT
connection = serial debug=on #Y asi sucesivamente se pueden configurar diversos teléfonos, el sistema en base al archivo de configuración detectará las configuraciones y las usará para enviar SMS.
*************
Programación para fecha de envío de mensajes.
*************
csv/cron.sh #Archivo que se pondrá en cron para que cada hora se ejecute y verifique si ya se ejecutó cron.php, si no se ha ejecutado lo ejecuta. #Aquí hay que editar el directorio dónde se instaló cron.php
csv/cron.php #Archivo que consulta la base de datos y verifica que mensajes tienen fecha anterior a la actual y que no han sido enviados para poder empezar a enviarlos usando gnokii #En este archivo hay que configurar la ruta del archivo init.php y sms.php #Es importante que el directorio de cron se encuentren fuera del directorio web. #Para que el sistema verifique los mensajes a enviar periodicamente editar el siguiente archivo : sudo editor /etc/crontab #Y agregar al final la siguiente línea
0 **** root php -q/var/www/sms/csv/cron.php #presionar CTRL+O luego ENTER para guardar #reiniciamos el servicio de programador de tareas sudo/etc/init.d/cron restart #con esto el sistema monitoreará cada hora los mensajes SMS por enviar
*************
Configuración de APACHE para enviar SMS desde página web.
*************
find/etc/apache2/-type f| xargsgrep"User " #Posiblemente nos regrese www-data. #Este usuario hay que ponerlo dentro del grupo de dialout $sudo editor /etc/group #agregar al grupo dialout el usuario www-data.
dialout:x:20:gsmsms,www-data #reiniciar apache sudo/etc/init.d/apache restart
*************
Modificando la configuracion
*************
sudo editor includes/config.php
$sqlDb="imest"; $sqlUser="imest"; $sqlPassword="imest"; $sqlServer="localhost"; $appID="jUi109-HJikL"; $appKey="7Uy-L09P;=lIkH";#permite usar el sistema para enviar SMS desde otras aplicaciones con C# mediante metodos POST como por ejemplo la librería webstream ó curl. define('CSV_PATH','/var/www/sms/csv/'); #Directorio dónde se almacenarán los registros CSV importados para importar contactos. $dir_fuentes="/var/www/sms/includes/fonts/"; # si se instaló en otra parte el servidor reeeditar la ruta correspondiente en esta parte define('CONFIG_PATH','/var/www/sms/csv/'); #Directorio dónde se encuentran los archivos de configuración de los dispositivos de gnokii. define('CONFIG_FILE','gnokii'); #archivos de configuración de gnokii que contengan en el nombre de archivo la cadena configurada. por ejemplo /csv/gnokiiNokia3500, /etc/gnokii6130, etc.
En internet existen muchas alternativas comerciales de Text to Speech(Texto a Voz) las cuáles son muy útiles para desarrollar aplicaciones dinámicas telefónicas texto a voz con Asterisk, pero a veces solo queremos un texto estático para ponerlo en alguna grabación, esto podríamos hacerlo fácilmente con festival usando el comando siguiente
echo"texto a voz" | text2wave -o audio.wav
El detalle que la voz sale muy robotizada asi que para ciertos casos no es muy conveniente. Buscando en internet encontré el sitio http://www2.research.att.com/~ttsweb/tts/demo.php
El cuál permite generar textos estáticos, de tal forma que podemos obtener nuestros audio textos y de ahí usar algún editor de audios como Audacity para poder convertirlo a un formato adecuado.
Hace unos días un amigo me contactó para preguntarme si sabía como enviar correos en formato HTML usando el protocolo SMTP, por lo que me acordé que hace unos 5 años desarrollé un sistema de cotizaciones vía web para la empresa dónde trabajaba, ahí enviaba correos mediante SMTP para informar de las cotizaciones que generaban los clientes desde la aplicación web.
Por lo que pongo aquí la clase que usé y que es muy fácil de usar, este código requiere de PHP PEAR Mail, el código está algo sucio pero es funcional
<?php require_once"Mail.php"; require_once"Mail/mime.php"; class Correo{ private$_mail_data=array(); private$to=""; private$subject=""; private$body=""; private$smtpout=null; //SMTPLOGIN, SMTPPASSWORD, SMTPSERVER, SMTPPORT, MAILFROM publicfunction __construct($vlogin,$vpassword,$vserver="smtpout.secureserver.net",$vport="80",$vfrom=""){ $this->_mail_data =array( 'host'=>$vserver, 'auth'=>true, 'username'=>$vlogin, 'password'=>$vpassword, 'port'=>$vport ); $this->crlf="\n"; $this->from=$vfrom; $this->smtpout=Mail::factory('smtp',$this->_mail_data); } //Envía un correo en Texto Plano publicfunction sendTextMail($to="",$subject="",$body="",$vfrom=""){ $_headers=array( 'From'=>(($vfrom!="")?$vfrom:$from), 'To'=>$to, 'Subject'=>$subject); //print_r ($this->_mail_data); $this->smtpout->IsHTML(true); $mail=$this->smtpout->send($to,$_headers,$body); return!(PEAR::isError($mail)); } //Envía un correo como HTML publicfunction sendmail($to="",$subject="",$body="",$vfrom=""){ $_headers=array( 'From'=>(($vfrom!="")?$vfrom:$from), 'To'=>$to, 'Subject'=>$subject); $mime=new Mail_mime($this->crlf); $mime->setHTMLBody($body); // $mime->addAttachment($file, 'text/plain'); //do not ever try to call these lines in reverse order $body=$mime->get(); $_headers=$mime->headers($_headers); $mail=$this->smtpout->send($to,$_headers,$body); return!(PEAR::isError($mail)); } }//fin de la clase //Objeto de la clase $correo=new Correo("SMTPUSER","SMTPPASSWORD","smtpout.secureserver.net","80","SMTPFROM"); //Envio de correo en formato HTML $correo->sendmail("CORREODESTINATARIO@gmail.com","SUBJECT","MENSAJE_EN_FORMATO_HTML","MAIL_FROM"); ?>
Por default pongo el servidor de correos de godaddy.
Espero pueda serle útil a alguien más.
Hace algunos días un cliente me solicitó poder visualizar en el reporte de llamadas que viene con FreePBX información adicional. De inicio el reporte muestra los siguientes datos:
Por ejemplo si queremos agregar al final información del PIN que usa el usuario para hacer llamadas entonces pondríamos despues de $FG_TABLE_COL[]=array ("Duration", "duration", "6%", "center", "SORT", "30", "", "", "", "", "", "$minute_function"); lo siguiente
Dónde AccountCode será el titúlo de la columna, el campo relacionado a la tabla CDR, 8% el tamaño de la columna, "center" alineación del texto, Enseguida iría SORT si este campo se pudiera usar para odernar la tabla, "10" número de carácteres a mostrar del campo.
Adicionalmente al ejemplo anterior hay que agregar el campo accountcode a la variable de los campos de la consulta
Hace un par de días me contactó a través de Mercado libre una persona la cuál me comentó que tiene 2 teléfonos Polycom IP 500 el cuál requería conectarlos a un proveedor de IP para hacer llamadas entre los teléfonos Polycom sin costo alguno ya que estarían en lugares remotos, así como también quería que estos teléfonos pudieran hacer llamadas a la red de telefonía Pública y también que tuvieran un número de diversas ciudades de México, no le vi mayor problema a lo que me solicitaba asi que agendamos una cita en su negocio para el día siguiente.
Al llegar a su negocio al comenzar a configurar los teléfonos vi que traían de fábrica el protocolo IP MGCP por lo que de inicio no podía conectarlo a alguno de mis proveedores ya que casi todos usan SIP o IAX, por lo que le comenté que tendría que llevármelos para cambiarle el firmware, pero ante la urgencia del cliente no le era posible dármelos y me pidió que ahí mismo realizara la actualización. Me agarró en curva pues nunca había actualizado un firmware de un teléfono VoIP de Polycom, pero bueno gracias a Google "qué todo lo sabe y lo que no lo redirige", me llevó a diversos sitios y asi obtener la información adecuada para hacer el cambio de protocolo de MGCP a SIP.
Lo primero que hice fué obtener las versiones de firmware estables para este teléfono tanto para migrar a SIP como de BootRom, las cuáles fueron las siguientes:
Ya que tenía los archivos de firmware necesarios, en el teléfono había que configurar a TFTP para que al reiniciar hiciera la actualización, para esto solo basta hacer lo siguiente:
Presionar el botón Menú
Ir a Configuraciones
Password: 456
Seleccionar Server Config
Y enseguida introducir la dirección IP dónde se instalaría el servidor TFTP. Es importante usar un servidor TFTP en vez de FTP.
Guardar los cambios de la configuración
Ya que se haya hecho el cambio, y despues de haber instalado el servidor FTP solo basta reiniciar el teléfono presionando las siguientes teclas por 5 segundos
Messages
Hold
Subir y Bajar Volúmen
En seguida reiniciará y comenzará a actualizar el firmware, pero previamente hay que hacer lo siguiente:
Para que el teléfono descargue el firmware del servidor TFTP hay que instalar un TFTP server en una máquina, en este caso el cliente me dió una máquina windows, por lo que descargué OpenTFTP de sourceforge.net .
Solo basta instalarlo y por default usa el directorio C:\Program Files\OpenTFTP.
Solo hay que iniciar el servicio desde el menú de windows menú->opentftp->run opentftp.
En seguida hay que descomprimir los archivos de firmware en el directorio de instalación C:\Program Files\OpenTFTP
Ahí veremos un archivo que dice 000000000000.cfg, solo hay que renombrarlo a la mac del teléfono a convertir a SIP, esto hay que hacerlo por cada teléfono de lo contrario el teléfono no hará actualización alguna.
Ya que tengamos descomprimidos los archivos de firmware en el directorio del servidor de TFTP, que el TFTP esté corriendo, que haya red entre el servidor y los teléfonos, y que DHCP esté activado en el teléfono Polycom, entonces ahora si podemos reiniciar el teléfono Polycom IP 500 para que tome el nuevo firmware y cambie a SIP.
Despues de uno 3~5 minutos el teléfono habrá cambiado a SIP y podremos notar los cambios en la pantalla del teléfono asi como también en la configuración web, pues ya veremos SIP en vez de MGCP.
Para la configuración a algún proveedor SIP solo basta entrar a la configuración del teléfono e ir a lines para introducir los parámetros de configuración de la conexión SIP.
Aquí muestro un screenshot de como debería configurarse.
Aunque este teléfono es bonito y luce muy ejecutivo y profesional, yo definitivamente recomendaría la nueva gama de teléfonos IP de Aastra que distribuímos en OaxRom Mobile Computing
Espero este tuto pueda servirle a alguien que se encuentre en una situación parecida..
Hace unos días estuve leyendo curioseando en internet encontré un blog dónde hablan sobre RoIP , la cuál es una forma de nombrar los enlaces entre sistemas de Radio con Tecnología de Voz sobre IP, en este caso Asterisk .
RoIP prácticamente necesita una gateway del lado de asterisk que sirve como interfaz de conexión entre los sistemas de radioaficionados con la tecnología de Voz sobre IP, tal como puede ser una tarjeta de puertos FXO, FXS, GSM, SIP, IAX, etc.,
Una de las ventajas de los sistemas de radio es su alcance, esto ya que las frecuencias en muchos casos son más bajas y más amplias que el uso de un WiFi o Microondas por ejemplo, aparte que son menos quisquillosas que las anteriores por así decirlo, por lo que el alcance puede ser mucho mayor y la cobertura puede llegar alcanzar a sitios remotos dónde las compañías telefónicas no han puestos sus servicios por cuestiones de costos.
Por lo que tengo entendido las conexiones entre los sistemas de radio y el gateway es PTT( Push To Talk), tal como funcionan los sistemas de Radio de Nextel en la actualidad.
La ventaja de meter un sistema de Radio en Asterisk, es que se puede usar el dialplan cuándo se abre un canal entre los 2 puntos, por lo que creo entender y quiero que asi pudiera funcionar es que al estar abierto el canal pudieran recibirse tonos DTMF, de tal forma que se pudieran leer esos tonos DTMF y abrir un canal adicional para poder hacer una llamada en base a los dígitos recibidos y rutearlo a traves de troncales SIP, IAX, FXO o GSM, muy similar a como funciona un DISA.
De hecho hace un par de meses desarrollé una aplicación basada en AMI y AGI que hace esto, pero mediante teléfonos públicos que envían a un número fijo los números a marcar mediante tonos DTMF y secuencias de control, de tal forma que Asterisk recibía la llamada, abría otro canal y dependiendo la respuesta la enlazaba con el canal abierto proveniente del teléfono público.
Entonces pensando en algo similar creo que sería factible poder implementar un sistema de radio que haga convergencia con VoIP a traves de Asterisk.
Para poder hacer la convergencia ya existen tarjetas de radio compatibles con Asterisk, de hecho existe un canal específico para esta tecnología ya implementado en Asterisk, por lo que solo falta encontrar algún proyecto y patrocinador para poder echar andar esta tecnología en alguna de las tantas regiones marginadas de México.
Puede verse más información sobre RoIP en el Blog Alex Casanova quién es un experto en el tema de RoIP : http://www.bicubik.net .
Desde hace años vengo usando FreePBX como configurador de las funciones básicas de PBX de Asterisk, siempre de la mano con Zaptel y Wanpipe para la instalación de drivers de tarjetas Sangoma.
Hace un par de días quise romper con mi tradicional instalación de Asterisk que la baso en Asterisk 1.4.18, Zaptel 1.4.12 y FreePBX 2.5, en este caso comencé a usar DAHDI preparándome ya para las nuevas instalaciones con Asterisk 1.6 o a futuro con 1.8, el detalle es que FreePBX no está configurado para DAHDI desde instalación, pero si ya está listo desde hace más de un año para soportarlo con un par de ligeros cambios en la configuración, los cuales comento enseguida.
Despues de haber compilado Asterisk, DAHDI, Wanpipe, oslec en su caso, e instalado y configurado FreePBX solo hay que editar el archivo /etc/amportal.conf para usar DAHDI con FreePBX.
#Editamos el archivo de configuraciòn de freePBX sudonano/etc/amportal.conf #Descomentar la siguiente linea y poner a true ZAP2DAHDICOMPAT=true #Guardar el archivo #Aplicamos los cambios, depende del directorio de instalaciòn de freepbx sudo/usr/src/freepbx*/apply_conf.sh sudonano/etc/asterisk/asterisk.conf #buscar despues de [options] la siguiente línea
dahdichanname = no ; Ponerlo a no para que use renombre a Zap en vez de nombrar los canales como DAHDI #guardar el archivo #crear una liga dinámica de chan_dahdi.conf a zapata.conf sudoln-s/etc/asterisk/chan_dahdi.conf /etc/asterisk/zapata.conf #Reiniciamos Asterisk+FreePBX sudo amportal restart
Con esto ya tendremos listo freepbx para usarlo con los canales de DAHDI, asi como también al hacer el enlace dinámico podremos ver en el Flash Operator Panel la info de los canales de DAHDI como si fueran troncales zap, la configuración de troncales de DAHDI se hacen igual que como si tuvieramos los drivers de zaptel.
Hoy instalando el último driver de Sangoma para funcionar con DAHDI en Asterisk 1.4, seguí todo el proceso normal hasta llegar a la parte de instalación del GUI, pero al intentar hacerlo me mandaba que el puerto AMI 5038 de Asterisk no estaba abierto.
Revisando los logs vi que había una línea que me indicaba lo siguiente:
Asterisk has detected a problem with your DAHDI configuration and will shutdown for your protection. You have options:
Pero revisando la configuración de /etc/dahdi/system.conf y /etc/asterisk/chan_dahdi.conf, vi que todo estaba bien configurado.
Por lo que intenté reiniciar asterisk, pero había un loop de reinicio, por lo que volví a reinstalar dahdi, asterisk y drivers de sangoma.
Despues de reinstalar los drivers de sangoma, quise inicializar wanrouter, pero veía que me mandaba un error como el siguiente en el script de inicialización /etc/wanpipe/scripts/start :
Waiting for Dahdi /dev/dahdi .../etc/wanpipe/scripts/start: 9: Syntax error: Bad for loop variable
en la línea 9 estaba el siguiente código
for((i=0;$i<=$max_delay;$i++))
Lo que hice fué cambiarlo por la siguiente sintaxis
for i in`seq1$max_delay`; do
Con eso ya quedo resuelta la inicialización de los drivers de sangoma y ya la instalación continuó exitosamente.
Hace algunos 6 años trabajé para una compañía que distribuye equipo de Symbol Motorola, recuerdo que en ese tiempo la gente de ventas hacia las cotizaciones a mano a veces en una hoja de excel otras en word, por lo que se me ocurrió desarrollarles un sistema de cotizaciones de tal forma que los clientes podían entrar al sitio web, validarse y desde ahí elegir los productos que requerían cotizar.
En ese tiempo me surgió el detalle de saber de como generar PDFs al vuelo de las cotizaciones generadas por los clientes, ya que los clientes al seleccionar sus productos y presionar el botón de cotizar, el sistema lo que hacía era enviarles una liga a su correo desde dónde podían bajar el PDF directamente.
Para esto eché mano de htmldoc el cuál es un software que permite generar PDF de archivos HTML, al igual convertir PS a PDF y viceversa.
Lo que hice básicamente fué pasarle la url a htmldoc del script php con los parámetros para generar la cotización, de tal forma que htmldoc leía el archivo html generado por PHP y lo convertía a PDF, y solo modificaba los encabezados para que el usuario obtuviera un archivo a guardar.
Lo primero fué poner en un script php el encabezado que debería mandar, que indicara que es un archivo PDF y que lo mandaría como cotización-seguido del número de cotización correspondiente, y que lo enviara como archivo adjunto para que el navegador pidiera que se guardara en un archivo o se mostrará, tal como cuándo le picas a un archivo para descargar.
Abajo del script mandaba una llamada al sistema que solicitaba ejecutar htmldoc con los parámetros adecuados, tal como se muestra en el siguiente código:
--headfootsize 8: tamaño del encabezado y pie de página
--footer '/D' : indica que pondrá la fecha en el pié de página
--jpeg '90' : comprensión de las imágenes
--links : activación de links
--logoimage '".DIR_IMAGES."pdf.png': colocará el logo en la parte superior de la página
--linkcolor '#0000FF' : color de las ligas
--size 'a4' : tamaño del documento
--fontsize 10: tamaño de letra del documento
--charset 8859-15 : conjunto de caracteres a usar
--webpage liga del documento html a convertir a formato PDF
Con esto lo que hacía es que primero el script php generaba la cotización en base a lo requerido por el cliente, htmldoc convertía el documento a pdf y el encabezado que se mandaba al navegador indicaba que ese archivo generado se descargara o se mostrara en el navegador.
Comentarios Recientes