2010-07-02 8 views
0

J'essaie de créer du courrier avec py-appscript (interface AppleScript pour python). J'ai essayé code suivant,Py-appscript: Comment faire un message avec Mail.app

from appscript import * 

mail = app('Mail') 
msg = mail.make(new=k.outgoing_message, 
       with_properties={'visible':True, 
           'content':"hello", 
           'subject':"appscript", 
           'sender':'[email protected]' 
           }) 

mais j'ai reçu des messages d'erreur suivant, et je ne pouvais pas trouver d'informations pour que ...

CommandError: Command failed: 
    OSERROR: -1701 
    MESSAGE: Some parameter is missing for command. 
    COMMAND: app(u'/Applications/Mail.app').make('outgoing_message', with_properties={'content': 'hello', 'visible': True, 'sender': '[email protected]', 'subject': 'appscript'}) 

Suggestions, s'il vous plaît? Problème résolu par moi-même, le code suivant fonctionne correctement.

Répondre

0

En cas de définition de propriétés dans le constructeur, définissez chaque propriété séparément.

from appscript import * 

mail = app('Mail') 
msg = mail.make(new=k.outgoing_message) 
msg.subject.set("hello"), 
msg.content.set("appscript") 
msg.to_recipients.end.make(new=k.to_recipient, with_properties={'address':'[email protected]'}) 
msg.send() 

+0

La définition des propriétés via la commande 'make' devrait fonctionner. Cependant, vous devez utiliser des objets de mots-clés, et non des chaînes, comme clés: '{k.visible: True, k.content: ...}'. Les applications scriptables ne reconnaissent généralement pas les clés basées sur des chaînes dans les enregistrements. Voir ch. 6 du manuel appscript pour plus d'informations. – has

+0

Merci beaucoup! J'ai vérifié que ça marche super! C'est ce que je voulais savoir. – taichino