# 目次
- 本アプリでできること
- 開発環境
- 使用ライブラリ
- 推奨環境
- 注意事項(必ず一読ください。)
- 事前準備
- 使用方法 / 説明
- その他

=======================================================================================
# 本アプリでできること
- Spotify で再生している曲の詳細情報を見る
- Spotify で再生している曲情報を自身が所属している misskey インスタンス上に対して投稿する
- Spotify で再生している曲が切り替わる度にトースト通知としてお知らせする

=======================================================================================
# 開発環境
- Microsoft Visual Studio 2022 Community
- C# for .NET 7.0

=======================================================================================
# 使用ライブラリ
- SpotifyAPI-NET (MIT-License)
- Json.NET (MIT-License)
- Sagiri (MIT-License) ★本アプリのメインライブラリ(自作) https://github.com/Sagiri-Dev/Sagiri/

=======================================================================================
# 推奨環境
- Windows 10 以上

=======================================================================================
# 注意事項
- 本アプリによって起きた損害・不具合などについては開発者は一切の責任を負いません。
  自己責任で使用してください。

- 各種アカウント情報に紐づくトークン情報を使用するため、管理については十分に注意してください。

- 同梱されている各種ファイルについては、リネーム および 配置構成を変更しないでください。
  正常に動作しない原因となります。

- Spotify から曲情報を取得するには、Spotify のストアアプリを使用することが必須です。

- Misskey へのアクセスは以下 APIエンドポイント を用いて実現しています。
  過剰な投稿をすると、Rate Limit にかかる可能性があるため、注意してください。(1日程度で解除されるようです)

    drive/files/create - 画像アップロードの APIエンドポイントアクセス
        (将来的には画像投稿する/しない について対応する予定です。)
    
    notes/create - note(投稿)のAPIエンドポイントアクセス 

- 不具合事象などあれば、以下記載の gitリポジトリへ issue を建てていただくか、各種どれかのアカウントへご連絡をお願いします。
    https://github.com/Sagiri-Dev/Sagiri/issues
    
    使用したアプリバージョン、PC環境、Log情報(同梱しているLogフォルダに出力されている内容など) があると
    解析に役にたちますので、ご協力の程よろしくお願いします。

    ・たっけん
        misskey.io : asterisk
        Twitter : Astrisk_

=======================================================================================
# 事前準備
※spotify アカウントの作成 / misskey アカウントの登録は済ませておくこと
spotify.json および misskey.json を編集します。

- spotify.json の編集
    1. spotify developer へアクセスし、アプリ作成を行ってください。
    https://developer.spotify.com/dashboard/create

    ◆入力する箇所
     App name        : アプリ名(各自でわかりやすい名前をつけてください)
     App description : アプリの概要(各自でわかりやすい概要を記入してください)
     Redirect URIs   : http://localhost:5050/callback (固定。Spotifyからのアクセストークン取得のために内部サーバを建てています。)

    2. 作成したアプリページ上でAPIアクセスキーを取得します。
        上部の Setting をクリック
        Basic Information 上に記載されている client_id 
        および
        View Client secret を押下して client_secret を取得します。

    3. 本アプリに同梱している spotify.json を編集し、保存します。
    
    以下、オブジェクト構成
    {
        (必須)"client_id":"取得した client-id を記載",
        (必須)"client_secret":"取得した client-secret を記載",
        (未使用)"access_token":"",
        (編集不要:認証後、自動設定)"created_at":"",
        (編集不要:認証後、自動設定)"is_expired":
    }

以上で spotify.json 側の準備は終わりです。

- misskey.json の編集

    1. 設定 > その他の設定 - API をクリックします。
    2. アクセストークンの発行をクリックします。
    3. API名 および 権限を設定します。
       権限については、「ドライブの操作」および「ノートの作成・削除」のみでOKです。
    4. 取得したアクセストークンと自身が所属しているMisskeyインスタンスのURLを jsonファイルに記載し保存します。

    以下、オブジェクト構成
    {
        "token":"取得したアクセストークン",
        "host":"所属しているMisskeyインスタンスのURL (例: https://misskey.io)"
    }

以上で、misskey.json 側の準備は終わりです。

=======================================================================================
# 使用方法 / 説明

※※※本アプリを使用する前に必ず Spotify を起動しておいてください。※※※
1. Sagiri-NowPlaying > SagiriApp.exe を実行します。
2. Spotifyアイコンをクリックします。
   Spotify の認証画面に遷移するので認証を許可します。
3. 認証が終わった旨のページに遷移すると、認証完了です。(ページは閉じてOKです。)
4. Sagiri のメイン画面に再生中のジャケット画像が表示されると正常に動作している状態となります。

各種アイコンの説明
1. Spotify アイコン
    クリックすることで、Spotify と連携するために認証を実施します。

2. ♪アイコン(なうぷれ)
    クリックすることで、Spotify で再生中の曲情報を Misskey インスタンスへ投稿します。

3. info アイコン
    クリックすることで、Spotify で再生中の曲についての詳細情報を確認することができます。

4. 歯車アイコン
    クリックすることで、なうぷれ投稿する際のフォーマットを変更することができます。

=======================================================================================
# その他
Log フォルダ内に実行時のログが生成されるので、不要であれば随時削除してください。

----- 以下リリースログ -----

=======================================================================================
# Sagiri-NowPlaying v1.2.0
=======================================================================================
@release-date : 2023-07-17 (Mon)
@author - たっけん
=======================================================================================

- UI 全面刷新 - 高DPI な環境で使用すると、UI が無残なことになる (issue : #18)
 WinForms を取りやめ、WPF(.NET 7.0, Prism + ReactiveProperty) に完全移行。
  この変更によるアプリ使用方法は前アプリとほとんど変わりはありません。

- 不具合改修実施
・Spotify 側が再生中でないと曲情報が降ってこない問題 (issue : #16)
・Misskey へ投稿しようとしたときに、稀にタイムアウトで例外発生する (issue : #17)

- その他
・Spotify のユーザアイコン機能を一時的に取りやめました。

=======================================================================================
# Sagiri-NowPlaying v1.1.1
=======================================================================================
@release-date : 2023-07-09 (Sun)
@author - たっけん
=======================================================================================

- 不具合改修実施
・MisskeyのホストURL末尾にスラッシュがあると投稿されないの修正 (issue : #14)

- その他
・軽微な修正

=======================================================================================
# Sagiri-NowPlaying v1.1.0
=======================================================================================
@release-date : 2023-07-09 (Sun)
@author - たっけん
=======================================================================================

- 不具合改修実施
・spotify.json および misskey.json ファイルがない場合はアプリ起動しないよう修正
・spotify.json および misskey.json ファイル内の情報が不正な場合もアプリ起動しないよう修正
・一部 null ケアを見直し

- 一部動作追加
・アルバムアートをクリックした際、フォトビューワで画像表示できるように修正

- その他
・使用していない NuGet パッケージの削除を実施
・注意事項 / 事前準備 を更新

=======================================================================================
# Sagiri-NowPlaying v1.0.2
=======================================================================================
@release-date : 2023-07-08 (Sat)
@author - たっけん
=======================================================================================

- UI画面の軽微な修正

アルバムアートの表示領域サイズが中途半端なサイズとなっていたため、
リサイズを行いました。

=======================================================================================
# Sagiri-NowPlaying v1.0.1
=======================================================================================
@release-date : 2023-07-08 (Sat)
@author - たっけん
=======================================================================================

- 不具合改修実施
https://github.com/Sagiri-Dev/Sagiri/issues/10

Spotify の起動チェックをしていたところでの不具合
起動前提で動いてもらうアプリのため、一旦削除しました。

=======================================================================================
# Sagiri-NowPlaying v1.0.0 
=======================================================================================
@release-date : 2023-07-08 (Sat)
@author - たっけん
=======================================================================================
初回リリース