Pregunta

Estoy tratando de escribir un bot de chat simple para Adium, que publicará "jaja" y "jaja" y responderá preguntas básicas en molestos chats grupales a los que algunas personas siguen agregándome.

He cubierto la parte "lol" con algunos comandos simples de envío y retardo en una repetición, pero también necesito interactuar un poco.
Responda "sí" a cualquier cosa que tenga un signo de interrogación, por ejemplo...

Créanme o no, un bot tan simple pasaría una prueba de Turing para esas conversaciones.

Abrir el diccionario Adium no revela ninguna forma obvia de recibir mensajes, ni tampoco el diccionario Growl.

Descubrí que puedo ejecutar un script cada vez que recibo un mensaje. ¿Hay alguna manera de obtener acceso al mensaje enviado?

Preferencia de Adium http://media.ruk.ca/images/adiumpreferences.png

Mi código:

tell application "Adium"
    activate
    set theChat to the active chat
    send theChat message "Hi"
    delay 5
    send theChat message "How's life?"
    delay 10
    repeat 10 times
        send theChat message "Realy?"
        delay 5
        send theChat message "Lol :P"
        delay 15
        send theChat message "Haha XD"
        delay 15
        send theChat message "Yes1!!1"
        delay 20
        send theChat message "I like it! :D"
        delay 10
    end repeat
    send theChat message "Bye!"
    tell theChat to close
end tell
¿Fue útil?

Solución

Puede canalizar a un script utilizando Pipe Evento así ahora .

Otros consejos

Según la revisión del código fuente actual de Adium y una búsqueda de elementos actuales y pasados ​​en el rastreador de errores y wiki de Adium que contienen "applescript" y "message" como subcadenas, esto no parece ser posible cuando se usa solo AppleScript en Adium 1.0. hasta el 1.3.10 (más tarde al momento de escribir este artículo).Parece haber sido posible con AppleScript simple en Adium 0.89.1, pero los desarrolladores voluntarios aún no están convencidos de que valga la pena el esfuerzo de volver a agregar esta característica.

Para acceder al contenido del mensaje en AppleScript en este momento probablemente sea necesario escribir un Adium Xtra para reenviar la información.Ejemplos de complementos Xtra que acceden al texto del último mensaje incluyen Desafío/Respuesta o Filtro de spam.El código fuente de SpamFilter es disponible en BitBucket, por lo que posiblemente podría modificarlo para enviar el contenido del mensaje a un AppleScript.

EDITAR:Desde que publiqué mi respuesta, el usuario 'zostay' ha detectado un nuevo Adium Xtra llamado "Evento de tubería".Permite enviar el texto de un evento a un guión exactamente de la manera que imaginé cuando escribí mi segundo párrafo, por lo que votaré a favor de la respuesta de zostay. Código fuente también está disponible.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top