Otrzymasz Błąd -1708 po wybraniu AppleScript, który nie obsługuje określonego zdarzenia.
Na przykład, jeśli skrypt został wdrożony tylko on message sent
, ale można ustawić, aby uruchomić ten skrypt za każdym razem otrzymałeś wiadomość, dostaniesz błąd -1708. Dzieje się tak dlatego, że twój skrypt wie tylko jak obsługiwać wiadomości wychodzące, a nie przychodzące, stąd błąd -1708.
Teraz jest tu coś ciekawego ...
Jeśli spróbujesz użyć domyślnego skryptu Mix Message Case.applescript
dla zdarzeń Message Received
, Message Received in Active Chat
i Message Sent
. Pierwsza i ostatnia praca w porządku, ale otrzymasz błąd -1708 dla aktywnego wydarzenia na czacie. Możemy wywnioskować, że oznacza to, że skrypt nie obsługuje zdarzenia Message Received in Active Chat
. Wygląda więc na to, że nawet Apple nie poradzi sobie z tym wydarzeniem już teraz.
OS X Mavericks Aktualizacja:
Ta aktualizacja rozwiązuje wcześniej wspomniany błąd. Jeśli wybierzesz przykładowy skrypt Apple Mów Events.applescript, zauważysz, że bezbłędnie obsługuje wiadomości odebrane do aktywnego pokoju rozmów. Jeśli przeanalizujesz kod, zauważysz, że używa on metody on active chat message received
. Możemy teraz użyć tego w naszych skryptach. Ponieważ nie mam już starej wersji zainstalowanej, nie mogę przetestować, czy ta sama metoda działa w poprzedniej wersji.
Oto kod od słów mów.applescript:
on active chat message received with eventDescription
say eventDescription
end active chat message received
Zauważ, że nie określasz już poszczególnych skryptów uruchamianych dla określonych zdarzeń. Zamiast tego należy określić jedną procedurę obsługi skryptów dla zdarzeń komunikatów. Oznacza to, że musisz wdrożyć wszystkie zdarzenia, aby uniknąć uzyskania -1708 metod. Zauważ, jak w przykładowych skryptach Apple ma nawet komentarz # The following are unused but need to be defined to avoid an error
. Oto szablon, który może być używany jako punkt wyjścia dla skryptów:
using terms from application "Messages"
# The following are unused but need to be defined to avoid an error
on message sent theMessage with eventDescription
end message sent
on message received theMessage with eventDescription
end message received
on chat room message received with eventDescription
end chat room message received
on active chat message received with eventDescription
end active chat message received
on addressed message received theMessage from theBuddy for theChat with eventDescription
end addressed message received
on received text invitation with eventDescription
end received text invitation
on received audio invitation theText from theBuddy for theChat with eventDescription
end received audio invitation
on received video invitation theText from theBuddy for theChat with eventDescription
end received video invitation
on received local screen sharing invitation from theBuddy for theChat with eventDescription
end received local screen sharing invitation
on buddy authorization requested with eventDescription
end buddy authorization requested
on addressed chat room message received with eventDescription
end addressed chat room message received
on received remote screen sharing invitation with eventDescription
end received remote screen sharing invitation
on login finished with eventDescription
end login finished
on logout finished with eventDescription
end logout finished
on buddy became available with eventDescription
end buddy became available
on buddy became unavailable with eventDescription
end buddy became unavailable
on received file transfer invitation theFileTransfer with eventDescription
end received file transfer invitation
on av chat started with eventDescription
end av chat started
on av chat ended with eventDescription
end av chat ended
on completed file transfer with eventDescription
end completed file transfer
end using terms from
Jeśli zaczynasz z tym skryptem i wdrożyć tylko metod musisz (pozostawiając resztę w stanie nienaruszonym), a następnie należy unikać wszelkiego -1708 błędy.
Czy kiedykolwiek to rozgryzłeś? –
Haha, ten sam problem tutaj. AppleScript, język z takimi nowoczesnymi koncepcjami, ale z komunikatami o błędach, które przypominają o latach osiemdziesiątych! – Feuermurmel
Błąd mówi "Nieobsługiwane zdarzenie" [Ref] (http://developer.apple.com/legacy/library/#documentation/Carbon/Reference/Apple_Event_Manager/Reference/reference.html), ale nie mogę znaleźć zdarzenia dla wiadomości odebranej w czacie aktywnym – drinchev