Labot ©

Hasta la muerte todo es vida

2008/02/18

Jugando con Skype I. Cambiar el Mood



Lo confieso: yo también fui programador (1).

En mi empresa, el SKYPE es ahora "corporativo". Esto quiere decir que su uso es obligatorio y, además, que debes indicar en todo momento dónde te encuentras. Para ello, tienes que modificar el "Mood" o "Mensaje de estado de ánimo" (2).

Así que (1+2) cada vez que enciendo el portátil tengo que abrir la ventana de SKYPE y editar mi "estado de ánimo" (¿qué cómo estoy? jodido, ¿no ves que estoy trabajando?). Esto es una putada porque si te olvidas, tu jefe piensa que estás donde no deberías y te llama para comprobar que no has cambiado el texto del SKYPE ("¿Qué haces en Vigo? ¿no te dije que la comida era en Toledo? Hay que ser gilipollas", etc. etc.).

Ante esta situación insostenible, Labot invirtió un par de horas (laborables) el otro día y desarrolló un aplicativo software que cambia automáticamente el mensaje Mood al encender el PC (en realidad, un simple script VBS). Este maravilloso script está aquí mismo, disponible gratuitamente, al final de este mismo post. El manual también se incluye en el post.

Gratis "means" gratis. No admitiré dinero, subvenciones, regalos ni favores de ningún tipo a cambio.

Requisitos
1. Tener SKYPE. Si no usas SKYPE no sé porqué coño lees esto.
2. Tener WINDOWS (XP, VISTA, lo-que-sea) y no tener ninguna preocupación por la seguridad ("as I don't").

Instalación
1. copia y pega el código del script (lo que está dentro del cuadro gris) en tu editor de texto favorito y guárdalo, por ejemplo, en el escritorio. Llámalo "Change_Your_Mood_(by_Labot)_v1-1.vbs" (si quieres). La extensión "VBS" es necesaria.
2. si quieres que se ejecute automáticamente al inicio de sesión, copialo en la carpeta "Inicio" (ya sabes dónde).

Utilización
1. Ejecuta el script. Tiene que estar donde lo dejaste.
2. Sale una ventana para cambiar la primera línea de tu mensaje. Admite tags HTML básicos, de esos que usas en tu blog (<b>,<font color="#205510">,<a href>, etc.).


3. Sale otra ventana donde puedes añadir o cambiar la segunda línea del mensaje. Yo aquí pongo un poco de publi.



Ya está, fácil y limpio. Esto feo de aquí abajo es el script.

'~~[author]~~
'Labot (http://labot.blogspot.com/)
'~~[/author]~~

'~~[emailAddress]~~
' labot@orange.es
'~~[/emailAddress]~~

'~~[scriptType]~~
'vbscript
'~~[/scriptType]~~

'~~[version]~~
'V1.1
'~~[/subType]~~

'~~[comment]~~
'Jugando con el interfaz COM de SKYPE
' El objetivo es tener una herramienta que actualice el mensaje de estado de ánimo (mood) de SKYPE
' cada vez que se enciende el PC (o de forma muy ágil)
'
' Versión 1.0
' Muestra el estado actual y permite modificarlo.
'
' Versión 1.1
' Trata el mensaje en dos líneas (la primera con el estado estándar y
' la segunda con una frase adicional o una URL)
'
'~~[/comment]~~

'~~[script]~~
option explicit 'para evitar usar variables no definidas

' Variables
dim oSkype, mimoodrich, linea1, linea2, eol, position

' Accedo al interfaz COM de SKYPE
Set oSkype = CreateObject("Skype4COM.Skype")
oSkype.Attach
' Leo el contenido actual del Mood (rich)
mimoodrich = oSkype.CurrentUserProfile.RichMoodText

' Lo parseo en dos líneas
eol = Chr(13) & Chr(10)
position = InStr(mimoodrich, eol)

if position = 0 then 'Sólo tenía una línea
linea1 = mimoodrich
linea2 = ""
else
linea1 = left( mimoodrich, position-1)
linea2 = right( mimoodrich, len(mimoodrich) - position -1)
end if

' Ahora muestro el valor actual y permito al usuario cambiarlo
linea1 = inputbox("Actualiza tu estado", "Quick mood update by Labot", linea1)


' Si cancela la primera línea no cambio nada
if Not IsEmpty(linea1) then
linea2 = inputbox("Puedes añadir una segunda línea","Quick mood update by Labot", linea2)

oSkype.CurrentUserProfile.RichMoodText = linea1 & eol & linea2
End If

'~~[/script]~~