Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/parthjadhav/immat

iMessage Mac Automation Tool
https://github.com/parthjadhav/immat

automation control imessage ios iphone macos macosapp message sms

Last synced: 7 days ago
JSON representation

iMessage Mac Automation Tool

Awesome Lists containing this project

README

        

# IMMAT (iMessage Mac Automation Tool)

![GitHub contributors](https://img.shields.io/github/contributors/ParthJadhav/IMMAT)
![GitHub stars](https://img.shields.io/github/stars/ParthJadhav/IMMAT)
![GitHub repo issues](https://img.shields.io/github/issues/ParthJadhav/IMMAT?label=issues)

IMMAT is a tool developed to control the MacOS operating system using iMessage from any iMessage supported devices.

IMMAT is created using Python and AppleScript.

## πŸ”– Prerequisites

Before you begin, ensure you have met the following requirements:

* You have installed Python3 and have it working.
* You have a MacOS machine which has used iMessage on it atleast once.
* Any iMessage supported device.
* Installed the dependencies from requirements.txt.

## πŸ“¦ Using IMMAT Through Executable (Recommended)

To Use IMMAT download the file by :-

[Clicking Here !](https://drive.google.com/uc?export=download&id=1RnxwMt9TH0rgXC9NZvk-Wg2JilLhGofb)

Open Terminal and type :-
```
chmod +x (Drag the file here and press enter)
```

Now you can run IMMAT by opening the file.

## 🐍 Using IMMAT Through Python

To install IMMAT, follow these steps:

Installing requirements :-
```
git clone https://github.com/ParthJadhav/IMMAT.git

cd IMMAT

pip3 install -r requirements.txt
```
For Bluetooth Functionality to Work
```
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

brew install blueutil
```

Running IMMAT (Foreground) :

❗️It is mandatory that you run it in foreground at first run.❗
```
python3 Immat.py
```

Running IMMAT (Background) :-
```
cd IMMAT

chmod +x Immat.py

nohup python3 /path/to/Immat.py &
```
To stop the background process:-
```
pkill -f Immat.py
```

## πŸ”¨ Troubleshooting

If you are encountering errors like :-

```
sqlite3.OperationalError: unable to open database file
```

Then try giving full disk access to the terminal by :-

https://support.avast.com/en-in/article/Mac-full-disk-access/

Instead of avast add Terminal to full-disk access.

## πŸ¦‹ Usage

IMMAT will only be running on Mac the commands would be given from iMessage on other devices.

Example -

Password - $\
Command - ts (Take Screenshot)

Message the below command through iMessage to Mac.
```
$ Ts
```

This will reply you with the screenshot of the Mac.

These are the available commands :-

Help

## πŸ’» MacOS Demo

Instead of main.py enter Immat.py

Help

## πŸ“± iPhone Demo
Help

## πŸ’  How does it work?

iMessage on MacOS saves all messages it got to **chat.db** database. and the messages are saved in messages table of that database.

Whenever a new message is received; IMMAT checks if it has the password which you have entered while running IMMAT and checks for a matching command.

If the message matches the command then the following function is executed.

All of these happens locally so there is no need to worry about the privacy and security.

## πŸ“ Contact

If you want to contact me you can reach me at [email protected]

## πŸ“„ License

This project uses MIT License.