Consulte la página de lanzamiento para obtener una descarga precompilada actualizada.
Un bot de iMessage potente y fácilmente extensible. Permite agregar funciones de chat bot a cualquier conversación de iMessage. Incluye algunos comandos básicos integrados. Se pueden agregar integraciones de API, juegos, emoticones personalizados y mucho más mediante el uso de webhooks, la API REST o instalando complementos.
¡Cualquier solicitud de extracción y nuevos problemas de GitHub son muy apreciados! Si desea desarrollar un complemento para Jared, consulte la sección de complementos a continuación. Siempre estoy disponible en Twitter si tienes alguna idea/sugerencia.
Jared debe ejecutar una máquina que ejecute macOS con una cuenta de mensajes activa iniciada. Solo se ha probado en 10.14 Mojave y versiones posteriores. Es posible que funcione en versiones antiguas de macOS, pero no se garantiza ya que es posible que se hayan producido cambios en el esquema de la base de datos de mensajes. Si no desea que Jared publique como usted, se recomienda que cree una nueva ID de Apple y una cuenta de usuario en su Mac, y que la ejecute en segundo plano con ese usuario. De esa manera no utilizará su ID de Apple principal.
Ver sección de descargas en la parte superior.
Esto es necesario debido a los permisos de macOS que limitan el acceso a la base de datos de mensajes.
Si está ejecutando macOS Catalina o posterior, deberá permitir el acceso de Jared para automatizar la aplicación de mensajes. Esto le permite a Jared enviar mensajes.
Opcionalmente, puede permitir que Jared acceda a sus contactos para que pueda proporcionar y actualizar los nombres de los contactos. Los contactos se utilizan para configurar/recuperar nombres únicamente.
Si desea utilizar la API REST, deberá habilitarla. Si tiene un firewall habilitado en su Mac, verá un cuadro de diálogo que le pedirá que permita a Jared acceder al puerto al que está vinculando.
Como referencia, aquí hay una lista de los comandos integrados en Jared. Debido a que la funcionalidad se puede agregar con complementos, la funcionalidad integrada se mantiene liviana.
/help
: enumera todos los comandos. /help,[command name]
le dará información sobre una ruta específica./reload
: recargar complementos/enable
: habilita a Jared/disable
: Desactiva a Jared/ping
: comprueba si el chatbot está disponible/version
: obtiene la versión de Jared ejecutándose/send
: envía un mensaje repetidamente/schedule
: programar mensajes/name
: Cambia cómo te llama Jared/whoami
: Consigue tu nombre/barf
: Devuelve una representación json de su mensaje, utilizada para depurarThank you Jared
: Gracias Jared Hay un archivo de configuración ubicado en ~/Library/Application Support/Jared/config.json
que le permite:
Consulte config-sample.json para ver un ejemplo.
Jared proporciona una variedad de API que le permiten agregar fácilmente sus propios comandos, automatizar mensajes y más. Para obtener toda la documentación de la API, consulte el centro de documentación.
Se pueden agregar rutas adicionales mediante complementos modularizados, escritos en código Swift nativo. Los complementos se cargan dinámicamente desde la carpeta ~/Library/Application Support/Jared/Plugins
. Para instalar un módulo, arrástrelo allí y luego envíe /reload
a Jared, o haga clic en Reload Plugins
en la interfaz de usuario.
Para obtener más información sobre cómo desarrollar sus propios complementos, consulte la documentación del complemento. Si desarrolló algún complemento, comuníquese conmigo con un enlace para que pueda agregar un enlace aquí. También trabajaré en algunos módulos adicionales y los agregaré aquí cuando estén completos.
Jared admite webhooks para enviar información a su servidor sobre mensajes entrantes y salientes. Su servidor puede responder a estas solicitudes para enviar mensajes o utilizar la API REST para enviar mensajes en cualquier momento. Para configurar webhooks, agréguelos al config.json
mencionado anteriormente. Para obtener más información sobre la API de webhooks, consulte la documentación del webhook.
Jared contiene un servidor web con una API REST que se puede habilitar. Esto le permite realizar solicitudes HTTP para enviar mensajes a cualquier destinatario. Para obtener más información, consulte la documentación de la API REST.
Jared lee la base de datos de Mensajes en un intervalo establecido y consulta mensajes nuevos. Proporciona un marco de enrutamiento para actuar sobre mensajes y utiliza AppleScript para enviar mensajes salientes. También tiene múltiples subprocesos, por lo que puede atender múltiples solicitudes a la vez. Jared permite la expansión mediante archivos de complemento .bundle
, webhooks y una API REST. Esto permite agregar comandos sin modificar la base del código principal de Jared.
Intenté usar API privadas como MessagesKit para enviar/recibir mensajes sin éxito hasta ahora. Si tiene alguna pista en este frente, me encantaría escucharla.