組織内のO365のすべてのユーザーのタスクフォルダにアクセスする必要があります。そのために、私はExchanged Web Service(EWS)を使用しています。自分のタスクフォルダと私と共有していたフォルダにアクセスできましたが、すべてにアクセスする必要があります。Exchange Webサービス(EWS):組織内のすべてのユーザータスクフォルダにアクセスする方法
すべてのアカウントに自分のタスクフォルダを共有して、自分がしたいことを達成するようにする必要があります(組織内の全員に自分自身で行うよう求めることはできません。約400人のユーザー)。
共有フォルダのものや、このタスクを実行するスクリプトを避けるための管理者として自分自身に許可する権限がありますか?ここで
は、これまでの私のコードです:
from exchangelib import DELEGATE, IMPERSONATION, Account, Credentials, ServiceAccount, \
EWSDateTime, EWSTimeZone, Configuration, NTLM, CalendarItem, Message, \
Mailbox, Attendee, Q, ExtendedProperty, FileAttachment, ItemAttachment, \
HTMLBody, Build, Version
import json
credentials = Credentials(username='[email protected]', password='password')
config = Configuration(server='outlook.office365.com' , credentials=credentials)
account = Account(primary_smtp_address='[email protected]', credentials=credentials, config=config,
autodiscover=False, access_type=DELEGATE)
all_tasks = []
json_tasks = []
for t in account.tasks.all():
all_tasks.append(t)
for t in all_tasks:
data = {"Action" : t.subject, "actualWork": t.actual_work, "Project": t.billing_information, "Status": t.status, "Owner": t.owner, "isComplete": t.is_complete}
json_data = json.dumps(data)
print(json_data)
print(account.tasks.total_count)