Skip to content

Commit

Permalink
Merge pull request #345 from jphacks/release_1.1.0
Browse files Browse the repository at this point in the history
release 1.1.0
  • Loading branch information
averak authored Nov 13, 2022
2 parents ce6f775 + 0974d96 commit 89a8f64
Show file tree
Hide file tree
Showing 17 changed files with 105 additions and 98 deletions.
2 changes: 1 addition & 1 deletion Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ pipeline {
stage("deploy") {
steps {
sh "docker-compose up -d"
sh "docker run --rm -d -v $PWD/app/build/libs:/app -p ${PORT}:8080 openjdk:11-jdk java -jar -Dspring.profiles.active=${ENVIRONMENT} app/smartpointer_1.1.0_SNAPSHOT.jar"
sh "docker run --rm -d -v $PWD/app/build/libs:/app -p ${PORT}:8080 openjdk:11-jdk java -jar -Dspring.profiles.active=${ENVIRONMENT} app/smartpointer_1.1.0.jar"
}
}
}
Expand Down
49 changes: 28 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

![CI](https://github.com/jphacks/D_2208/workflows/CI/badge.svg)
![deploy](https://github.com/jphacks/D_2208/workflows/deploy/badge.svg)
![version](https://img.shields.io/badge/version-1.1.0__SNAPSHOT-blue.svg)
![version](https://img.shields.io/badge/version-1.1.0-blue.svg)

[![IMAGE ALT TEXT HERE](https://jphacks.com/wp-content/uploads/2022/08/JPHACKS2022_ogp.jpg)](https://youtu.be/6NNR210ilGI)

Expand All @@ -16,14 +16,14 @@

> **Note**
>
> 詳細は[PRD (プロダクト要求仕様書)](https://github.com/jphacks/D_2208/wiki/PRD%20(プロダクト要求仕様書))を参照してください
> 詳細は[PRD (プロダクト要求仕様書)](<https://github.com/jphacks/D_2208/wiki/PRD%20(プロダクト要求仕様書)>)を参照してください
### 背景(製品開発のきっかけ、課題等)

複数人でプレゼンテーションを行う場合、スライドの切り替え担当者とスピーカーが一致しない場合があります。
しかし、スピーカーが逐一「次のスライドお願いします」と依頼するのは面倒であり、聴衆に煩わしさを与える場合もあるでしょう。

そこで、手元のスマートフォンをリモコン化し、リモートにあるホストPCのスライドを共同で操作できるプラットフォームを開発しました
そこで、手元のスマートフォンをリモコン化し、リモートにあるホスト PC のスライドを共同で操作できるプラットフォームを開発しました

### 製品説明(具体的な製品の説明)

Expand All @@ -47,8 +47,8 @@

#### 1. リモートからでも共同でスライド操作できる

ホストPCに投影されるスライドを、共同プレゼンター全員が操作可能になります。
ホストPCはルームをホスティングする以外は操作不要で、スマートフォンからのスライド切り替えで発表を行います。
ホスト PC に投影されるスライドを、共同プレゼンター全員が操作可能になります。
ホスト PC はルームをホスティングする以外は操作不要で、スマートフォンからのスライド切り替えで発表を行います。

#### 2. 発表をもっと快適に

Expand All @@ -63,8 +63,8 @@

### 解決出来ること

類似した既存のサービスは、自分のPCを自分のスマートフォンから操作するところまでしか実現できていません
スマートポインターを使えば、 背景説明はAさん、技術説明はBさんが発表担当といったプランの場合に「次のスライドお願いします」とスライド担当者に依頼する必要がなくなります。
類似した既存のサービスは、自分の PC を自分のスマートフォンから操作するところまでしか実現できていません
スマートポインターを使えば、 背景説明は A さん、技術説明は B さんが発表担当といったプランの場合に「次のスライドお願いします」とスライド担当者に依頼する必要がなくなります。

### 今後の展望

Expand All @@ -84,19 +84,19 @@

### 用語集

* ルーム
* 共同プレゼンターが参加し、スライドをリモコン操作するためのワークスペース
* ホストPC
* [デスクトップアプリケーション](./desktop)を実行する
* スライド投影するPC
* OSのメニューバーから操作可能
* リモコンアクションを購読し、パワーポイントなどのプレゼンテーションソフトウェアを操作する
* リモコン
* [リモコン用Webアプリ](./app/src/main/pointer)を実行する
* プレゼンテーション用のレーザーポインター的な概念
* 自分のスマートフォンをリモコン化し、リモートにあるホストPCのスライドを操作できる
* ポインタ渡し
* プレゼンター権限を譲渡する行為
- ルーム
- 共同プレゼンターが参加し、スライドをリモコン操作するためのワークスペース
- ホスト PC
- [デスクトップアプリケーション](./desktop)を実行する
- スライド投影する PC
- OS のメニューバーから操作可能
- リモコンアクションを購読し、パワーポイントなどのプレゼンテーションソフトウェアを操作する
- リモコン
- [リモコン用 Web アプリ](./app/src/main/pointer)を実行する
- プレゼンテーション用のレーザーポインター的な概念
- 自分のスマートフォンをリモコン化し、リモートにあるホスト PC のスライドを操作できる
- ポインタ渡し
- プレゼンター権限を譲渡する行為

## 開発技術

Expand Down Expand Up @@ -143,4 +143,11 @@
#### ハッカソンで開発した独自機能・技術

* GraphQLによる双方向通信API
* デスクトップのスライド上にポインタ表示するOverlay window
* デスクトップのスライド上にポインタ表示するOverlay window







2 changes: 1 addition & 1 deletion app/src/main/pointer/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# リモコン用 アプリケーション

![version](https://img.shields.io/badge/version-1.1.0__SNAPSHOT-blue.svg)
![version](https://img.shields.io/badge/version-1.1.0-blue.svg)

## 概要

Expand Down
4 changes: 2 additions & 2 deletions app/src/main/pointer/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion app/src/main/pointer/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "pointer",
"version": "1.1.0-SNAPSHOT",
"version": "1.1.0",
"private": true,
"scripts": {
"dev:serve": "vite --host",
Expand Down
4 changes: 2 additions & 2 deletions app/src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ server:

project:
name: smartpointer
version: 1.1.0_SNAPSHOT
version: 1.1.0
package: dev.abelab.smartpointer
mybatis:
config:
Expand All @@ -75,4 +75,4 @@ logging:

auth:
ttl: 86400 # 24h
token-type: Bearer
token-type: Bearer
52 changes: 26 additions & 26 deletions asyncapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ asyncapi: 2.5.0

info:
title: Smart Pointer Internal API
version: 1.1.0_SNAPSHOT
version: 1.1.0

servers:
local:
Expand All @@ -28,7 +28,7 @@ channels:
publish:
description: タイマー開始トピック
message:
$ref: '#/components/messages/startTimer'
$ref: "#/components/messages/startTimer"
/app/rooms/{room_id}/timer/resume:
parameters:
room_id:
Expand All @@ -38,7 +38,7 @@ channels:
publish:
description: タイマー再開トピック
message:
$ref: '#/components/messages/resumeTimer'
$ref: "#/components/messages/resumeTimer"
/app/rooms/{room_id}/timer/stop:
parameters:
room_id:
Expand All @@ -48,7 +48,7 @@ channels:
publish:
description: タイマー停止トピック
message:
$ref: '#/components/messages/stopTimer'
$ref: "#/components/messages/stopTimer"
/app/rooms/{room_id}/timer/reset:
parameters:
room_id:
Expand All @@ -58,7 +58,7 @@ channels:
publish:
description: タイマーリセットトピック
message:
$ref: '#/components/messages/resetTimer'
$ref: "#/components/messages/resetTimer"
/app/rooms/{room_id}/slides/next:
parameters:
room_id:
Expand All @@ -68,7 +68,7 @@ channels:
publish:
description: スライドを進めるトピック
message:
$ref: '#/components/messages/goNextSlide'
$ref: "#/components/messages/goNextSlide"
/app/rooms/{room_id}/slides/previous:
parameters:
room_id:
Expand All @@ -78,7 +78,7 @@ channels:
publish:
description: スライドを戻すトピック
message:
$ref: '#/components/messages/goPreviousSlide'
$ref: "#/components/messages/goPreviousSlide"
/app/rooms/{room_id}/pointer/control:
parameters:
room_id:
Expand All @@ -88,7 +88,7 @@ channels:
publish:
description: ポインター操作トピック
message:
$ref: '#/components/messages/controlPointer'
$ref: "#/components/messages/controlPointer"
/app/rooms/{room_id}/pointer/disconnect:
parameters:
room_id:
Expand All @@ -98,7 +98,7 @@ channels:
publish:
description: ポインター切断トピック
message:
$ref: '#/components/messages/disconnectPointer'
$ref: "#/components/messages/disconnectPointer"
/topic/rooms/{room_id}/timer:
parameters:
room_id:
Expand All @@ -108,7 +108,7 @@ channels:
subscribe:
description: タイマー購読トピック
message:
$ref: '#/components/messages/broadcastTimer'
$ref: "#/components/messages/broadcastTimer"
/topic/rooms/{room_id}/users:
parameters:
room_id:
Expand All @@ -118,7 +118,7 @@ channels:
subscribe:
description: ユーザリスト購読トピック
message:
$ref: '#/components/messages/broadcastUsers'
$ref: "#/components/messages/broadcastUsers"
/topic/rooms/{room_id}/slides/control:
parameters:
room_id:
Expand All @@ -128,7 +128,7 @@ channels:
subscribe:
description: スライド操作購読トピック
message:
$ref: '#/components/messages/broadcastSlideControl'
$ref: "#/components/messages/broadcastSlideControl"
/topic/rooms/{room_id}/pointer/control:
parameters:
room_id:
Expand All @@ -138,23 +138,23 @@ channels:
subscribe:
description: ポインター操作購読トピック
message:
$ref: '#/components/messages/broadcastPointerControl'
$ref: "#/components/messages/broadcastPointerControl"
/topic/exception:
subscribe:
description: 例外購読トピック
message:
$ref: '#/components/messages/broadcastException'
$ref: "#/components/messages/broadcastException"

components:
messages:
startTimer:
description: READY状態のタイマーを開始する
payload:
$ref: '#/components/schemas/TimerStartRequest'
$ref: "#/components/schemas/TimerStartRequest"
resumeTimer:
description: READY状態のタイマーを再開する
payload:
$ref: '#/components/schemas/TimerResumeRequest'
$ref: "#/components/schemas/TimerResumeRequest"
stopTimer:
description: RUNNING状態のタイマーを停止する
resetTimer:
Expand All @@ -166,29 +166,29 @@ components:
controlPointer:
description: ポインターを操作する
payload:
$ref: '#/components/schemas/PointerControlRequest'
$ref: "#/components/schemas/PointerControlRequest"
disconnectPointer:
description: ポインターを切断する
broadcastTimer:
description: タイマーを配信する
payload:
$ref: '#/components/schemas/TimerResponse'
$ref: "#/components/schemas/TimerResponse"
broadcastUsers:
description: ユーザリストを配信する
payload:
$ref: '#/components/schemas/UsersResponse'
$ref: "#/components/schemas/UsersResponse"
broadcastSlideControl:
description: スライド操作を配信する
payload:
$ref: '#/components/schemas/SlideControlResponse'
$ref: "#/components/schemas/SlideControlResponse"
broadcastPointerControl:
description: ポインター操作を配信する
payload:
$ref: '#/components/schemas/PointerControlResponse'
$ref: "#/components/schemas/PointerControlResponse"
broadcastException:
description: 例外を配信する
payload:
$ref: '#/components/schemas/ErrorResponse'
$ref: "#/components/schemas/ErrorResponse"

schemas:
TimerStartRequest:
Expand Down Expand Up @@ -248,7 +248,7 @@ components:
users:
description: ユーザリスト
type: array
$ref: '#/components/schemas/UserResponse'
$ref: "#/components/schemas/UserResponse"
required:
- users
TimerResponse:
Expand Down Expand Up @@ -294,15 +294,15 @@ components:
user:
description: ユーザ
type: object
$ref: '#/components/schemas/UserResponse'
$ref: "#/components/schemas/UserResponse"
isActive:
description: ポインターがアクティブかどうか
type: boolean
rotation:
description: 回転数
type: object
nullable: true
$ref: '#/components/schemas/PointerRotationResponse'
$ref: "#/components/schemas/PointerRotationResponse"
required:
- user
- enabled
Expand Down Expand Up @@ -336,4 +336,4 @@ components:
type: string
required:
- code
- message
- message
2 changes: 1 addition & 1 deletion desktop/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ホスト PC 用 デスクトップアプリケーション

![version](https://img.shields.io/badge/version-1.1.0__SNAPSHOT-blue.svg)
![version](https://img.shields.io/badge/version-1.1.0-blue.svg)

## 概要

Expand Down
Loading

0 comments on commit 89a8f64

Please sign in to comment.