Пожалуйста, посетите страницу выпуска, чтобы получить обновленную предварительно скомпилированную версию.
Мощный и легко расширяемый бот iMessage. Это позволяет добавлять функции чат-бота к любому разговору iMessage. Он включает в себя некоторые встроенные базовые команды. Интеграцию API, игры, пользовательские эмоции и многое другое можно добавить с помощью веб-перехватчиков, REST API или путем установки плагинов.
Мы будем очень признательны за любые запросы на включение и новые проблемы с GitHub! Если вы хотите разработать плагин для Джареда, см. раздел плагинов ниже. Я всегда доступен в Твиттере, если у вас есть идеи/предложения.
Джаред должен запускать компьютер под управлением macOS с активной учетной записью сообщений. Он был протестирован только в версии 10.14 Mojave и более поздних версиях. Он может работать в старых версиях macOS, но это не гарантируется, поскольку в схему базы данных сообщений могли быть внесены изменения. Если вы не хотите, чтобы Джаред публиковал сообщения от вашего имени, рекомендуется создать новый Apple ID и учетную запись пользователя на своем Mac и запустить его в фоновом режиме под этим пользователем. Таким образом, он не использует ваш основной Apple ID.
См. раздел загрузки вверху.
Это необходимо из-за разрешений macOS, которые ограничивают доступ к базе данных сообщений.
Если вы используете macOS Catalina или более позднюю версию, вам потребуется предоставить Джареду доступ для автоматизации приложения сообщений. Это позволяет Джареду отправлять сообщения.
При желании вы можете разрешить Джареду доступ к вашим контактам, чтобы он мог предоставлять и обновлять имена контактов. Контакты используются только для установки/получения имен.
Если вы хотите использовать REST API, вам необходимо его включить. Если на вашем Mac включен брандмауэр, вы увидите диалоговое окно с предложением разрешить Джареду доступ к порту, к которому он привязан.
Для справки, вот список команд, встроенных в Джаред. Поскольку функциональность может быть добавлена с помощью плагинов, встроенная функциональность остается легкой.
/help
: список всех команд. /help,[command name]
предоставит вам информацию о конкретном маршруте./reload
: перезагрузить плагины./enable
: Включает Джареда/disable
: отключает Джареда./ping
: проверить, доступен ли чат-бот./version
: запустить версию Джареда./send
: отправить сообщение повторно./schedule
: Расписание сообщений./name
: Изменить то, как Джаред называет вас./whoami
: узнать свое имя/barf
: возвращает json-представление вашего сообщения, используемое для отладки.Thank you Jared
: Спасибо, Джаред. Файл конфигурации находится по адресу ~/Library/Application Support/Jared/config.json
и позволяет вам:
См. пример config-sample.json.
Джаред Предоставляет различные API-интерфейсы, позволяющие легко добавлять собственные команды, автоматизировать сообщения и многое другое. Всю документацию по API см. в центре документации.
Дополнительные маршруты можно добавить с помощью модульных плагинов, написанных на собственном коде Swift. Плагины загружаются динамически из папки ~/Library/Application Support/Jared/Plugins
. Чтобы установить модуль, перетащите его туда, а затем отправьте /reload
Джареду или нажмите Reload Plugins
в пользовательском интерфейсе.
Дополнительную информацию о разработке собственных плагинов см. в документации плагина. Если вы разработали какие-либо плагины, дайте мне ссылку, чтобы я мог добавить ссылку сюда! Я также буду работать над несколькими дополнительными модулями и добавлю их сюда, когда они будут завершены.
Джаред поддерживает веб-перехватчики для отправки на ваш сервер информации о входящих и исходящих сообщениях. Ваш сервер может отвечать на эти запросы на отправку сообщений или использовать REST API для отправки сообщений в любое время. Чтобы настроить вебхуки, добавьте их в упомянутый выше config.json
. Дополнительную информацию об API веб-перехватчиков см. в документации по веб-перехватчикам.
Джаред содержит веб-сервер с REST API, который можно включить. Это позволяет вам делать HTTP-запросы для отправки сообщений любому получателю. Для получения дополнительной информации ознакомьтесь с документацией REST API.
Джаред читает базу данных сообщений через заданный интервал и запрашивает новые сообщения. Он обеспечивает структуру маршрутизации для действий с сообщениями и использует AppleScript для отправки исходящих сообщений. Он также является многопоточным, поэтому может обрабатывать несколько запросов одновременно. Джаред допускает расширение с помощью файлов плагинов .bundle
, веб-перехватчиков и REST API. Это позволяет добавлять команды без изменения основной базы кода Джареда.
Я пробовал использовать частные API, такие как MessagesKit, для отправки/получения сообщений, но пока безрезультатно. Если у вас есть какие-либо зацепки на этом фронте, я бы хотел об этом услышать.