ノート/ノートブックの共有機能
Evernoteには、
ノートの共有方法
まずノートの共有方法です。ノートを共有するときには、noteStore.
メソッドで共有キーを生成する必要があります。次に共有キーとguidとshardIdの組み合わせによって、
shareKey = noteStore.shareNote(authToken, createdNote.guid)
url = "https://" + evernoteHost + "/shard/" + user.shardId + "/sh/" + createdNote.guid + "/" + shareKey
もし共有を終了したい場合にはstopSharingNote
メソッドを使用してください。もう一度同じノートを共有する場合には新しい共有キーが生成されますので、
ノートブックの共有方法
次にノートブックの共有についてですが、
公開ノートブックの作り方は以下の通りです。
notebook = Types.Notebook()
notebook.name = "Public notebook"
notebook.published = True
notebook.publishing = Types.Publishing("test", None, False, "Publishing test")
createdNotebook = noteStore.createNotebook(authToken, notebook)
print "notebook: ", createdNotebook
通常のノートブック作成とは異なり、notebook.
とnotebook.
が必須になります。publishing
に設定するTypes.
は、
共有ノートブックの作り方は以下の通りです。
notebook = Types.Notebook()
notebook.name = "Shared notebook"
createdNotebook = noteStore.createNotebook(authToken, notebook)
sharedNotebook = Types.SharedNotebook()
sharedNotebook.notebookGuid = createdNotebook.guid
sharedNotebook.email = "test@example.com"
sharedNotebook.requireLogin = True
sharedNotebook.notebookModifiable = False
createdSharedNotebook = noteStore.createSharedNotebook(authToken, sharedNotebook)
Types.
のインスタンスに共有したいノートブックのguidと共有したいユーザのEvernote登録メールアドレスを設定します。ログインの要求やノートブックの編集許可のオプション等もあります。ノートブックの編集許可はプレミアムユーザのみの機能です。もし2人以上のユーザに共有したい場合は、
共有相手への連絡方法
注意しなければならないのは、
共有URLによってEvernoteアカウントにひもづけられたノートブックは、LinkedNotebooks
メソッドを使います。例えば共有ノートブックの名前一覧を表示したければ以下のようにします。
linkedNotebooks = noteStore.listLinkedNotebooks(authToken)
for linkedNotebook in linkedNotebooks:
print " * ", linkedNotebook.shareName
今回は共有機能の使い方を説明しました。他者とノートやノートブックの共有を行うというのはこれからのEvernote連携を考えていく上で重要な機能の1つだと思いますのでぜひ使ってみてください。