사전 컴파일된 최신 다운로드를 보려면 릴리스 페이지를 확인하세요.
강력하고 쉽게 확장 가능한 iMessage 봇입니다. 모든 iMessage 대화에 채팅 봇 기능을 추가할 수 있습니다. 여기에는 몇 가지 기본 명령이 내장되어 있습니다. 웹후크, REST API를 사용하거나 플러그인을 설치하여 API 통합, 게임, 사용자 정의 감정 표현 등을 추가할 수 있습니다.
끌어오기 요청과 새로운 GitHub 문제에 대해 많은 감사를 드립니다! Jared용 플러그인을 개발하려면 아래 플러그인 섹션을 참조하세요. 아이디어나 제안이 있으시면 언제든지 Twitter를 통해 연락주세요.
Jared는 로그인된 활성 메시지 계정으로 macOS를 실행하는 컴퓨터를 실행해야 합니다. 10.14 Mojave 이상에서만 테스트되었습니다. 이전 버전의 macOS에서는 작동할 수 있지만 메시지 데이터베이스의 스키마가 변경되었을 수 있으므로 이는 보장되지 않습니다. Jared가 귀하처럼 게시하는 것을 원하지 않으면 Mac에서 새로운 Apple ID와 사용자 계정을 생성하고 해당 사용자로 백그라운드에서 실행하는 것이 좋습니다. 이렇게 하면 기본 Apple ID를 사용하지 않습니다.
상단의 다운로드 섹션을 참조하세요.
이는 메시지 데이터베이스에 대한 액세스를 제한하는 macOS 권한 때문에 필요합니다.
macOS Catalina 이상을 실행하는 경우 메시지 앱을 자동화하려면 Jared 액세스를 허용해야 합니다. 이를 통해 Jared가 메시지를 보낼 수 있습니다.
선택적으로 Jared가 연락처 이름을 제공하고 업데이트할 수 있도록 연락처에 대한 액세스를 허용할 수 있습니다. 연락처는 이름을 설정/검색하는 데에만 사용됩니다.
REST API를 사용하려면 이를 활성화해야 합니다. Mac에서 방화벽을 활성화한 경우 Jared가 바인딩된 포트에 액세스하도록 허용하라는 대화 상자가 표시됩니다.
참고로 Jared에 내장된 명령 목록은 다음과 같습니다. 플러그인으로 기능을 추가할 수 있기 때문에 내장된 기능은 가볍게 유지됩니다.
/help
: 모든 명령을 나열합니다. /help,[command name]
특정 경로에 대한 정보를 제공합니다./reload
: 플러그인 다시 로드/enable
: Jared를 활성화합니다./disable
: Jared를 비활성화합니다./ping
: 채팅봇이 사용 가능한지 확인/version
: 실행 중인 Jared 버전을 가져옵니다./send
: 메시지를 반복해서 보냅니다./schedule
: 메시지 예약/name
: Jared가 부르는 이름 변경/whoami
: 이름을 알아보세요/barf
: 디버깅에 사용되는 메시지의 json 표현을 반환합니다.Thank you Jared
: 고마워요 Jared 구성 파일은 ~/Library/Application Support/Jared/config.json
에 있으며 이를 통해 다음을 수행할 수 있습니다.
예제는 config-sample.json을 참조하세요.
Jared는 자신만의 명령을 쉽게 추가하고 메시지를 자동화하는 등 다양한 API를 제공합니다. 모든 API 문서는 문서 허브를 참조하세요.
기본 Swift 코드로 작성된 모듈화된 플러그인을 통해 추가 경로를 추가할 수 있습니다. 플러그인은 ~/Library/Application Support/Jared/Plugins
폴더에서 동적으로 로드됩니다. 모듈을 설치하려면 모듈을 끌어서 Jared에게 /reload
보내거나 UI에서 Reload Plugins
클릭하세요.
자신만의 플러그인 개발에 대한 자세한 내용은 플러그인 설명서를 참조하세요. 플러그인을 개발했다면 여기에 링크를 추가할 수 있도록 링크를 보내주세요! 나는 내 자신의 몇 가지 추가 모듈도 작업할 예정이며, 완료되면 여기에 추가할 것입니다.
Jared는 들어오고 나가는 메시지에 대한 서버 정보를 보내기 위한 웹후크를 지원합니다. 서버는 이러한 요청에 응답하여 메시지를 보내거나 REST API를 사용하여 언제든지 메시지를 보낼 수 있습니다. 웹후크를 구성하려면 위에서 언급한 config.json
에 추가하세요. Webhook API에 대한 자세한 내용은 Webhook 설명서를 확인하세요.
Jared에는 활성화할 수 있는 REST API가 있는 웹 서버가 포함되어 있습니다. 이를 통해 모든 수신자에게 메시지를 보내도록 HTTP 요청을 할 수 있습니다. 자세한 내용은 REST API 설명서를 확인하세요.
Jared는 설정된 간격으로 메시지 데이터베이스에서 읽고 새 메시지를 쿼리합니다. 메시지에 대한 작업을 위한 라우팅 프레임워크를 제공하고 AppleScript를 사용하여 보내는 메시지를 보냅니다. 또한 다중 스레드이므로 한 번에 여러 요청을 처리할 수 있습니다. Jared는 .bundle
플러그인 파일, 웹훅 및 REST API를 통한 확장을 허용합니다. 이를 통해 기본 Jared 코드 베이스를 수정하지 않고도 명령을 추가할 수 있습니다.
나는 지금까지 메시지를 보내고 받기 위해 MessagesKit과 같은 비공개 API를 사용해 보았지만 아무 소용이 없었습니다. 이 분야에 대한 단서가 있다면 듣고 싶습니다.