๐ฌ iMessage Quickstart (macOS Only)
Connect InfiniBot to iMessage on your Mac in 5 minutes.
โ ๏ธ Requirements
- macOS only (iMessage requires macOS)
- Signed into iMessage on your Mac
- Full Disk Access for InfiniBot (to read Messages database)
โก Quick Setup (5 minutes)
Step 1: Grant Full Disk Access
InfiniBot needs to read the Messages database.
- Open System Preferences โ Privacy & Security โ Full Disk Access
- Click the + button
- Add Terminal (or your terminal app)
- If running as a service, also add the Node.js binary
Step 2: Configure InfiniBot
Edit ~/.infinibot/infinibot.json:
{
"channels": {
"imessage": {
"enabled": true
}
}
}
Step 3: Restart Gateway
infinibot gateway restart
Step 4: Send an iMessage! โ
Messages sent to your Mac's iMessage will now be processed.
๐ Security: Who Can Message?
Allowlist mode (recommended):
{
"channels": {
"imessage": {
"dmPolicy": "allowlist",
"allowFrom": ["+15551234567", "friend@icloud.com"]
}
}
}
Pairing mode:
infinibot pairing list imessage
infinibot pairing approve imessage <code>
๐ฑ Alternative: BlueBubbles Server
For more features and reliability, use BlueBubbles:
What is BlueBubbles?
A server that runs on your Mac and provides a proper API for iMessage.
Setup BlueBubbles
- Download from bluebubbles.app
- Install and run on your Mac
- Follow BlueBubbles setup wizard
- Note the server URL and password
Configure InfiniBot for BlueBubbles
{
"channels": {
"bluebubbles": {
"enabled": true,
"serverUrl": "http://localhost:1234",
"password": "your-password"
}
}
}
๐ Full BlueBubbles Guide โ
๐ฅ Group Chats
iMessage group chats work automatically:
{
"channels": {
"imessage": {
"groups": {
"*": {
"requireMention": true
}
}
}
}
}
โ Verify Connection
# Check status
infinibot status
# Send a test message
infinibot message send --channel imessage --target "+15551234567" --message "Hello!"
๐ ๏ธ Troubleshooting
"Permission denied" reading messages
Grant Full Disk Access:
- System Preferences โ Privacy & Security โ Full Disk Access
- Add Terminal and/or Node.js
Messages not sending
Check that:
- iMessage is signed in and working on your Mac
- You can send iMessages normally from Messages.app
- Gateway has Full Disk Access
Only seeing some messages
The direct iMessage integration reads from the local database. For real-time reliability, consider using BlueBubbles.
"Database locked" errors
Close Messages.app and try again, or restart the gateway.
๐ Full Documentation
For reactions, attachments, and advanced features: