iMessage
დაუკავშირეთ PRX iMessage-ს macOS Messages მონაცემთა ბაზისა და AppleScript ხიდის გამოყენებით ნატიური iMessage ინტეგრაციისთვის.
წინაპირობები
- მხოლოდ macOS -- iMessage ინტეგრაცია მოითხოვს macOS-ს (რეკომენდებულია Monterey 12.0 ან უფრო ახალი)
- აქტიური iMessage ანგარიში, შესულია Messages აპლიკაციაში
- სრული დისკის წვდომა (Full Disk Access) მინიჭებული PRX პროცესისთვის (Messages მონაცემთა ბაზის წასაკითხად)
სწრაფი დაყენება
1. სრული დისკის წვდომის მინიჭება
- გახსენით System Settings > Privacy & Security > Full Disk Access
- დაამატეთ ტერმინალის აპლიკაცია ან PRX-ის ბინარი სიაში
- გადატვირთეთ ტერმინალი ან PRX პროცესი
2. კონფიგურაცია
3. შემოწმება
bash
prx channel doctor imessage1
კონფიგურაციის მითითება
| ველი | ტიპი | ნაგულისხმევი | აღწერა |
|---|---|---|---|
allowed_contacts | [String] | სავალდებულო | ნებადართული iMessage კონტაქტები: ტელეფონის ნომრები (E.164) ან ელფოსტის მისამართები. ცარიელი = ყველას უარყოფა |
ფუნქციები
- ნატიური macOS ინტეგრაცია -- პირდაპირ კითხულობს Messages SQLite მონაცემთა ბაზიდან
- AppleScript ხიდი -- პასუხების გაგზავნა
osascript-ის მეშვეობით საიმედო შეტყობინებების მიტანისთვის - ტელეფონისა და ელფოსტის კონტაქტები -- ფილტრაცია ტელეფონის ნომრებით ან Apple ID ელფოსტის მისამართებით
- თანამედროვე macOS მხარდაჭერა -- ამუშავებს
attributedBodytypedstream ფორმატს, რომელიც macOS Ventura-ში და შემდგომში გამოიყენება - პოლინგზე დაფუძნებული -- პერიოდულად ამოწმებს Messages მონაცემთა ბაზას ახალი შეტყობინებებისთვის
შეზღუდვები
- მხოლოდ macOS -- Linux-სა და Windows-ზე მიუწვდომელია
- საჭიროა სრული დისკის წვდომა
~/Library/Messages/chat.db-ის წასაკითხად - Messages აპლიკაცია უნდა იყოს გაშვებული (ან სულ მცირე შესული)
- ვერ წამოიწყებს საუბრებს ახალ კონტაქტებთან; კონტაქტს უნდა ჰქონდეს არსებული საუბარი
- ჯგუფური iMessage ჩატები ამჟამად მხარდაჭერილი არ არის
- პოლინგის ინტერვალი მცირე შეყოვნებას ქმნის push-ზე დაფუძნებულ არხებთან შედარებით
- AppleScript-ზე დაფუძნებული გაგზავნა შეიძლება არ იმუშაოს headless (მხოლოდ SSH) macOS გარემოებში
პრობლემების მოგვარება
"Permission denied" Messages მონაცემთა ბაზის კითხვისას
- დარწმუნდით, რომ სრული დისკის წვდომა მინიჭებულია PRX პროცესისთვის ან მისი მშობელი ტერმინალისთვის
- macOS Ventura+-ზე შეამოწმეთ System Settings > Privacy & Security > Full Disk Access
- ნებართვების მინიჭების შემდეგ გადატვირთეთ ტერმინალი
შეტყობინებები არ გამოვლინდება
- შეამოწმეთ Messages აპლიკაცია შესულია თქვენი Apple ID-ით
- შეამოწმეთ კონტაქტი
allowed_contacts-შია (ტელეფონის ნომერი E.164 ფორმატში ან ელფოსტა) - ახალ შეტყობინებებს შეიძლება ერთი პოლინგის ციკლი დასჭირდეს გამოსავლენად
პასუხები არ იგზავნება
- დარწმუნდით, რომ Messages აპლიკაცია გაშვებულია (არა მხოლოდ შესული)
- AppleScript-ით გაგზავნა მოითხოვს GUI წვდომას; მხოლოდ SSH სესიები შეიძლება ვერ იმუშაოს
- შეამოწმეთ macOS Console.app AppleScript შეცდომებისთვის