Giter Site home page Giter Site logo

uncord's Introduction

Uncord

Uncord Icon

チャットサービスのDiscordをWindows10を始めとしたUWP環境で利用するためのアプリです。

Uncord上では、まだサーバーの追加や招待などが出来ません。そのため読み取り専用のような使い方に限定されています。

今後、サーバー管理やチャンネル追加など機能追加していきます。

インストール

価格:無料

(マネタイズの方法はまだ検討中。方針としては本体無料、広告表示はDiscordっぽくないよね、って感じです)

対応プラットフォーム

  • Windows 10
  • Windows 10 Mobile

XboxOneは今後対応を予定しています。

機能

  • ユーザーアカウントログイン
  • サーバーの一覧表示
  • テキストチャンネルでのメッセージの送受信
    • 絵文字・ファイルアップロードは未対応
  • ボイスチャンネルでの音声のやり取り

今後の予定

  • v0.1 ボイスチャンネルとテキストチャンネル
  • v0.2 フレンドとプライベートメッセージ
  • v0.3 サーバーやチャンネルの管理
  • v0.x (未定だけど、アプリ上で動作するBotを組めたりしたら…どうだろ?)

連絡先

メール([email protected]) またはツイッター(@tor4kichi)にリプライorDMで直接ご連絡いただけると返信対応します。

またはツイッターで #Uncord とハッシュタグを付けてツイートして頂くと、意見を伝えるだけということもできます。

uncord's People

Contributors

tor4kichi avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

uncord's Issues

マイクの接続状況表示

マイクが接続されていない、またはアクセス許可が必要な状態をアプリ上に表示したいです。

特にボイスチャンネル接続時に混乱しないようにしたいです。

ボイスチャンネル上にマイクの接続確認を手動で行うボタンを追加します。

更新情報をアップデート後の起動時に表示する

更新情報をMarkdownファイルで管理し、アプリをユーザーがアップデートした後の起動時に更新情報を伝えるようにします。

ファイル名は以下のような形で管理します。

0.0.0.md
10.11.12.md
0.1.129.md

それぞれ2桁以上になるため、バージョンの比較時に問題が起きないよう、常に数値にパースして比較をするように気をつけます。

マイナーチェンジ(0.xの桁が上がる)ごとに更新情報をまとめて表示します。

0.0.1、0.1.0、0.1.1、0.1.2 とある場合は、0.0.1は表示せず、0.1.2 + 0.1.1 + 0.1.0 の順で更新情報を表示します。


ダイアログUIのイメージ

image

ボイスチャットの対応

接続中のサーバーに存在するボイスチャンネルをユーザー選択する、という流れは既に完了しているため、以下の音声データのやり取りやハンドリングについて実装していきたいです。

メイン

  • ボイスチャンネルに接続
  • 受信音声データをオーディオ出力
  • マイク音声のデータを取得して接続中のボイスチャンネルに送信

オプション

  • 受信音声のミュート
  • 送信音声のミュート
  • 送信品質の調整

送信品質について設定は、他のオプションと共にダイアログ表示が必要であり、作業単位が大きくになりそうなので別Issueを立てて対応していきます。

参考

https://discord.foxbot.me/docs/guides/voice/sending-voice.html

ユーザー情報のフライアウト表示

ユーザーをタップしたときにユーザー情報を手軽に確認できるようにしたいです。

  • テキストチャンネルの発言者
  • チャンネル一覧ページでの参加者
  • プライベートメッセージでの発言者

といった部分でユーザー情報の確認、個別アクション

音声受信ミュートの切り替え

音声受信ミュートを切り替えられるようにします。
受信ミュート中は送信ミュートも同時に行われるよう送信ミュート設定を上書きするような動作が必要です。

プライベートメッセージの表示

個人間メッセージのやりとりをフレンドページ上で表示できるようにしたいです。

PMはチャンネル上で表示される個人宛の返信とは別ものです。(メッセージがサーバーのチャンネルに紐付いているか、個人間のプレイベートチャンネルに紐付いているかの違い、のはず)

なお、フレンドの取得は Discord.Net で未対応です。フレンド表示機能は先送りしています。

ですので、このPM表示の作業としてはプライベートチャンネルとして取得できる項目のみをアプリで表現することに集中していきます。

メッセージの表示

DiscordのIMessage型の情報をUIで表現できるようにしたいです。

メッセージ表示には、以下の情報が表現されている必要があります。

  • 発言者
  • リプライ相手の名前
  • 画像
  • emotes
  • テキストの太字等のフォント装飾表現
  • 動画

このリストの上側にある項目をより優先して実装したいです。

なお、サーバーごとに設定される絵文字?特定の画像は対応を先送りします。

english

Will you add any English options

v0.1リリースに向けたUIのスタイリング

最初にやる

  • ボイスチャット関連のUIを一旦削除
  • DMやフレンドの表示など今後追加される機能のレイアウトを大雑把にイメージしておく
  • 選択中のサーバーのハイライト表示

ブラッシュアップ的な

  • テキスト表示を中心にボタンUI等のスタイルをチャットアプリとして方向づけ

音声受信ミュートの切り替え

音声受信ミュートを切り替えられるようにします。
受信ミュート中は送信ミュートも同時に行われるよう送信ミュート設定を上書きするような動作が必要です。

音声送信ミュートの切り替え

ボイスチャンネルへの音声送信を行わない送信ミュートの設定が必要です。
マイクによるサンプリング自体を停止させてバッテリー利用を抑えられるようにします。

ユーザーごとの受信音量調整

どうやってやるのかは未調査ですが、公式クライアント上で扱えているため何かしらサーバーへパラメータを渡すことで可能であると思います。

DiscordSocketClient越しに設定可能かの調査も含めて、可能ならば対応したいです。

ログイン処理中の画面

ログイン成功後の情報取得画面、及びスプラッシュスクリーンの表示を整えたいです。

depends to #16

Push to Talkに対応

画面上のボタンを押している間だけ音声の送信が行われる機能に対応します。

バッテリークリティカルなモバイルでは、常にマイクの音声処理を走らせることを避けたいので、モバイル向けに早めに対応したいです。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.