Skip to content

Commit 4dcc887

Browse files
committed
事前に発行したMastodonのclient_id, client_secretの組をApplicetionSettings内に記述する
1 parent 0567034 commit 4dcc887

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

OpenTween/ApplicationSettings.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,20 @@ internal static class ApplicationSettings
112112
public const string TwitterConsumerKey = "zIoJPq3FsuViPTAs89FetDHYz";
113113
public const string TwitterConsumerSecret = "prTAs2fqLv12nHxlMoLQZT8AkpZt0yYb8A7ktGS2VYeRj0TddS";
114114

115+
//=====================================================================
116+
// Mastodon
117+
118+
/// <summary>
119+
/// Mastodon インスタンス毎に事前に発行した client_id, client_secret の組
120+
/// </summary>
121+
/// <remarks>
122+
/// ここに含まれていないインスタンスでは <see cref="Api.MastodonApi.AppsRegister"/> によって
123+
/// アプリケーションの登録を都度行います
124+
/// </remarks>
125+
public static readonly IReadOnlyDictionary<string, Tuple<string, string>> MastodonClientIds = new Dictionary<string, Tuple<string, string>>
126+
{
127+
};
128+
115129
//=====================================================================
116130
// yfrog
117131
// http://stream.imageshack.us/api/ から取得できます。

OpenTween/Mastodon.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,15 @@ public void Initialize(MastodonCredential account)
5050

5151
public static async Task<MastodonRegisteredApp> RegisterClientAsync(Uri instanceUri)
5252
{
53+
if (ApplicationSettings.MastodonClientIds.TryGetValue(instanceUri.Host, out var client))
54+
{
55+
return new MastodonRegisteredApp
56+
{
57+
ClientId = client.Item1,
58+
ClientSecret = client.Item2,
59+
};
60+
}
61+
5362
using (var api = new MastodonApi(instanceUri))
5463
{
5564
var redirectUri = new Uri("urn:ietf:wg:oauth:2.0:oob");

0 commit comments

Comments
 (0)