From 62d8819b9ea06fc1ab0aba9b82654dc9be69ec4e Mon Sep 17 00:00:00 2001 From: Kimura Youichi Date: Mon, 10 Jun 2024 22:51:56 +0900 Subject: [PATCH] =?utf8?q?Misskey=E3=82=A2=E3=82=AB=E3=82=A6=E3=83=B3?= =?utf8?q?=E3=83=88=E8=BF=BD=E5=8A=A0=E6=99=82=E3=81=AB=E6=8C=87=E5=AE=9A?= =?utf8?q?=E3=81=97=E3=81=9Fpermission=E3=82=92=E8=A8=AD=E5=AE=9A=E3=83=95?= =?utf8?q?=E3=82=A1=E3=82=A4=E3=83=AB=E3=81=AB=E4=BF=9D=E6=8C=81=E3=81=99?= =?utf8?q?=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- OpenTween/Setting/SettingCommon.cs | 3 +++ OpenTween/SocialProtocol/Misskey/MisskeySetup.cs | 15 +++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/OpenTween/Setting/SettingCommon.cs b/OpenTween/Setting/SettingCommon.cs index 58505ff8..660a6d9e 100644 --- a/OpenTween/Setting/SettingCommon.cs +++ b/OpenTween/Setting/SettingCommon.cs @@ -406,6 +406,9 @@ namespace OpenTween set => this.TokenSecret = this.Decrypt(value); } + [XmlArrayItem(ElementName = "Scope")] + public string[] Scopes { get; set; } = Array.Empty(); + public TwitterAppToken GetTwitterAppToken() { return new() diff --git a/OpenTween/SocialProtocol/Misskey/MisskeySetup.cs b/OpenTween/SocialProtocol/Misskey/MisskeySetup.cs index 9568838b..1d0659fa 100644 --- a/OpenTween/SocialProtocol/Misskey/MisskeySetup.cs +++ b/OpenTween/SocialProtocol/Misskey/MisskeySetup.cs @@ -32,6 +32,13 @@ namespace OpenTween.SocialProtocol.Misskey { public class MisskeySetup : NotifyPropertyChangedBase { + public static readonly string[] AuthorizeScopes = new[] + { + "read:account", + "write:notes", + "write:reactions", + }; + public string ServerHostname { get => this.serverHostname; @@ -67,12 +74,7 @@ namespace OpenTween.SocialProtocol.Misskey var query = MyCommon.BuildQueryString(new KeyValuePair[] { new("name", ApplicationSettings.ApplicationName), - new("permission", string.Join(",", new[] - { - "read:account", - "write:notes", - "write:reactions", - })), + new("permission", string.Join(",", AuthorizeScopes)), }); var authorizeUri = new Uri(this.serverBaseUri, $"{path}?{query}"); @@ -124,6 +126,7 @@ namespace OpenTween.SocialProtocol.Misskey UserId = tokenResponse.User.Id, Username = tokenResponse.User.Username, TokenSecret = tokenResponse.Token, + Scopes = AuthorizeScopes, }; } } -- 2.11.0