# Configuración del mando a distancia por infrarrojos de &kde;

Frank
Scheffold

    fscheffold@googlemail.com

Michael
Zanetti

    michael_zanetti@gmx.net

Gav
Wood

    gav@kde.org

Eloy
Cuadra

    ecuadra@eloihr.net

Traductor
2010-01-06
2.0
2004
Gav Wood
2010
Frank Scheffold
Michael Zanetti

Configuración de &kdelirc;: La infraestructura para la función del mando a distancia por infrarrojos de &kde;.

KDE
irkick
kdelirc
kcmlirc
lirc

## Introducción

### Requisitos

Para usar la infraestructura de &kdelirc; debe configurar LIRC en su equipo. Si está bien configurado, el icono de &kdelirc; en la bandeja del sistema se encenderá en rojo . En caso contrario, será de color gris y estará tachado .

Para más información sobre LIRC y sobre cómo configurarlo, visite el sitio web del proyecto en http://www.lirc.org.

Nota: Se recomienda que al configurar LIRC haga uso de los espacios de nombre de los botones.

## Uso

Existen tres pestañas que le proporcionan varias secciones de configuración e información adicional. La primera pestaña, llamada Funciones del controlador, se usa para configurar los modos y las acciones de todos los mandos a distancia disponibles. La pestaña llamada Resumen de perfiles contiene detalles sobre los perfiles disponibles. La pestaña Mandos a distancia disponibles le muestra información adicional sobre sus mandos a distancia. Si selecciona un mando a distancia verá un resumen sobre sus botones.

### Funciones del controlador

#### Mandos a distancia y modos

Cada mando a distancia puede tener un diferente número de modos. Tener varios modos permite al mismo botón realizar diferentes acciones en diferentes situaciones. Un buen ejemplo son los mandos a distancia multifunción de TV/Vídeo/Satélite/DVD. En lugar de usar diferentes mandos a distancia para distintas aplicaciones, puede cambiar el comportamiento de un mando a distancia para adaptarlo a una aplicación creando distintos modos y cambiando entre ellos cuando sea necesario.

Las acciones definidas directamente en el mando a distancia están disponibles en todo momento, sin importar en qué modo se encuentra el mando. Las acciones definidas en cada modo se ejecutan solo si el mando a distancia se encuentra en dicho modo. Cada mando a distancia sólo puede encontrarse en un único modo en un momento dado. También puede encontrarse en ninguno de ellos, lo que significa que al pulsar sus botones solo se ejecutarán las acciones disponibles en todo momento. Además, puede definir un modo por omisión, que será el modo asignado automáticamente durante el inicio.

La lista de la izquierda contiene todos los mandos a distancia detectados en su sistema. Los modos se pueden añadir y eliminar seleccionando un mando a distancia o un modo y usando los botones que hay bajo la lista. El botón «Editar» le permite modificar los modos existentes.

#### Asignación de acciones a los botones

&kdelirc; conoce dos tipos distintos de acciones: cambios de modo y acciones a ejecutar. Los cambios de modo permiten cambiar el mando a distancia actual a un modo diferente, mientras que las acciones normales permiten ejecutar órdenes mediante &DBus;. Cuando defina una nueva acción ejecutable dispondrá de dos posibilidades: usar una plantilla o especificar manualmente todas las opciones posibles. Las plantillas de acciones se denominan perfiles. Aunque usar perfiles para crear acciones es más fácil y directo, no es posible acceder a todas las funciones. Es posible configurar acciones más avanzadas seleccionando manualmente funciones y sus parámetros.

Para añadir una acción, use el botón Añadir... que hay en la parte inferior derecha. Se iniciará un asistente que le solicitará qué tipo de acción se debe crear. La primera opción creará una acción basada en un perfil. La segunda opción le deja crear manualmente la totalidad de la acción. Recuerde que la aplicación que desea controlar debe estar en ejecución mientras configura la acción, o de lo contrario no se mostrará en la lista de aplicaciones disponibles. La tercera opción le permite crear una acción de cambio de modo. Seleccione el tipo de acción deseado y siga el resto de pasos del asistente.

Las acciones también se pueden poblar automáticamente usando el botón Autoasignar.... Esto significa que &kdelirc; puede tratar de emparejar botones con acciones automáticamente. El diálogo de asignación automática muestra todos los perfiles disponibles con un indicador. Dependiendo del color de este indicador, su mando a distancia está implementado total o parcialmente, o no permitido por dicho perfil. El color verde significa que está implementado totalmente. El amarillo que lo está parcialmente, y el rojo que no lo está.

Nota: Si su mando a distancia no es compatible con ningún perfil, es posible que se deba a que no haya configurado lirc usando espacios de nombres.

### Resumen de perfiles

La pestaña Resumen de perfiles le proporciona información sobre los perfiles disponibles. Si selecciona un perfil podrá ver información detallada, como los detalles del autor y una lista de todas las acciones definidas. Cada entrada de acción contiene información sobre ajustes adicionales, un comentario y el identificador del botón a usar con la función de asignación automática.

Si desea colaborar con perfiles de aplicaciones, consulte el capítulo Información avanzada.

### Mandos a distancia disponibles

Esta pestaña le proporciona información detallada sobre sus mandos a distancia. Aquí puede comprobar si sus mandos a distancia se han reconocido correctamente por el sistema.

## Información avanzada

Este capítulo contiene información que puede resultar interesante para los usuarios más avanzados y para los desarrolladores. Aprenderá cómo crear sus propios perfiles.

### Creación de perfiles

#### Introducción

Todas las aplicaciones que usan &DBus; se pueden usar con &kdelirc; sin ninguna acción adicional. No obstante, debería crear un perfil para ella si quiere proporcionar una configuración amigable y hacer que la aplicación aparezca en el diálogo de asignación automática.

Un perfil le indica a &kdelirc; (y al usuario) lo que hacen las distintas llamadas de &DBus;. Esencialmente, se trata de cierto tipo de documentación para las llamadas de &DBus;. No tiene que incluir todas las llamadas a &DBus;, sino únicamente las que crea que será de provecho para el usuario final (normalmente serán llamadas de ajuste de la interfaz en lugar de llamadas de obtención de información).

#### Creación

1. ##### &DBus;

   Asegúrese de que la aplicación para la que quiere crear el perfil proporciona funciones sobre &DBus;. Básicamente, puede comprobar este punto tratando de añadir acciones para esta aplicación usando el método manual de &kdelirc;. La aplicación qdbusviewer, disponible en su instalación de Qt4, también es una buena herramienta para explorar las posibilidades &DBus; de las aplicaciones.

2. ##### Crear un perfil

   Una vez que haya encontrado las funciones &DBus; apropiadas, necesitará describirlas en un documento `appname.profile.xml`. A continuación encontrará una guía rápida sobre cómo crear estos archivos:

   1. En primer lugar, cree un nuevo archivo que tenga el siguiente contenido. Sustituya myapp con el nombre del ejecutable de la aplicación y Mi aplicación con un nombre que describa la aplicación.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="Mi aplicación">
            </profile>

   2. Dentro de la etiqueta «profile», añada el nombre e información sobre el autor. La etiqueta «instances» le indica a &kdelirc; si la aplicación se puede ejecutar varias veces de forma simultánea o no. Establezca «unique» a «0» si puede iniciar la aplicación varias veces (por omisión valdrá «1»). La propiedad «ifmulti» especifica qué debe hacer &kdelirc; si existen diferentes instancias en ejecución cuando se pulsa un botón. Las diferentes opciones son «dontsend» (no hacer nada si hay más de 1 instancia), «sendtoone» (enviar la llamada a una instancia al azar) y «sendtoall» (enviar a todas las instancias). La opción por omisión es «dontsend», aunque «sendtoone» puede resultar más útil en muchas circunstancias.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="Mi aplicación">
              <name>Mi aplicación</name>
              <author>Yo</author>
              <instances unique="0" ifmulti="sendtoone"/>
            </profile>

   3. Rellene el perfil con etiquetas de acciones. Cada etiqueta de acción debe contener el nombre de objeto &DBus; y el prototipo de la función.

      &kdelirc; necesita algunos atributos adicionales para saber cómo se debe manejar una acción. La etiqueta «button» se usa para la función de asignación automática. Consulte la documentación de la API de Solid para obtener una lista completa de los nombres de botones disponibles. La etiqueta «repeat» indica si la acción se debe ejecutar múltiples veces cuando el botón del mando a distancia se mantiene pulsado (0 = no, 1 = sí). La etiqueta «autostart» define si se debe arrancar la aplicación en caso de que no esté en ejecución.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="Mi aplicación">
              <name>Mi aplicación</name>
              <author>Yo</author>
              <instances unique="0" ifmulti="sendtoone"/>
              <action objid="MyApp" prototype="void showint(short int)"
                button="Menu" repeat="0" autostart="0">
              </action>
            </profile>

   4. Añada un nombre y un comentario a la acción. Esto se muestra en la interfaz de usuario de &kdelirc;.

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="Mi aplicación">
              <name>Mi aplicación</name>
              <author>Yo</author>
              <instances unique="0" ifmulti="sendtoone"/>
              <action objid="MyApp" prototype="void showints(short int)"
                  button="Menu" repeat="0" autostart="0">
                <name>Mostrar enteros</name>
                <comment>Muestra un entero configurable</comment>
              </action>
            </profile>

   5. Describa cada argumento con un comentario y un atributo del tipo. Puede encontrar una lista de los tipos válidos en el archivo de descripción de perfiles. Debe declarar un valor por omisión para cada argumento entre las etiquetas «default»:

          <?xml version="1.0" ?>
          <!DOCTYPE profile SYSTEM "profile.dtd">

            <profile id="myapp" servicename="Mi aplicación">
              <name>Mi aplicación</name>
              <author>Yo</author>
              <instances unique="0" ifmulti="sendtoone"/>
              <action objid="MyApp" prototype="void showints(short int)"
                  button="Menu" repeat="0" autostart="0">
                <name>Mostrar enteros</name>
                <comment>Muestra un entero configurable</comment>
                <argument type="int">
                  <default>5</default>
                  <comment>El entero a mostrar</comment>
                </argument>
              </action>
            </profile>

#### Instalación

Para probar y usar el perfil necesita copiarlo en `$(kde_datadir)/profiles` y reiniciar &kdelirc;.

Si desea colaborar enviando el perfil a la recopilación de software de &kde;, envíelo al equipo de kdeutils en la dirección de correo electrónico kde-utils-devel@kde.org.