summaryrefslogtreecommitdiff
path: root/src/web/app/desktop/scripts/stream.js
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-02-18 13:23:23 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-02-18 13:23:23 +0900
commit2db313986aa494da3d6ba3ac2773002ee1b2b8fe (patch)
treef6df258d24d64f65546f7b8a5ce33107348359a5 /src/web/app/desktop/scripts/stream.js
parent:v: (diff)
downloadmisskey-2db313986aa494da3d6ba3ac2773002ee1b2b8fe.tar.gz
misskey-2db313986aa494da3d6ba3ac2773002ee1b2b8fe.tar.bz2
misskey-2db313986aa494da3d6ba3ac2773002ee1b2b8fe.zip
:v:
Diffstat (limited to 'src/web/app/desktop/scripts/stream.js')
-rw-r--r--src/web/app/desktop/scripts/stream.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/web/app/desktop/scripts/stream.js b/src/web/app/desktop/scripts/stream.js
new file mode 100644
index 0000000000..ea1548ecfd
--- /dev/null
+++ b/src/web/app/desktop/scripts/stream.js
@@ -0,0 +1,45 @@
+const stream = require('../../common/scripts/stream');
+const getPostSummary = require('../../common/scripts/get-post-summary');
+const riot = require('riot');
+
+module.exports = me => {
+ const s = stream(me);
+
+ s.event.on('drive_file_created', file => {
+ const n = new Notification('ファイルがアップロードされました', {
+ body: file.name,
+ icon: file.url + '?thumbnail&size=64'
+ });
+ setTimeout(n.close.bind(n), 5000);
+ });
+
+ s.event.on('mention', post => {
+ const n = new Notification(post.user.name + "さんから:", {
+ body: getPostSummary(post),
+ icon: post.user.avatar_url + '?thumbnail&size=64'
+ });
+ setTimeout(n.close.bind(n), 6000);
+ });
+
+ s.event.on('reply', post => {
+ const n = new Notification(post.user.name + "さんから返信:", {
+ body: getPostSummary(post),
+ icon: post.user.avatar_url + '?thumbnail&size=64'
+ });
+ setTimeout(n.close.bind(n), 6000);
+ });
+
+ s.event.on('quote', post => {
+ const n = new Notification(post.user.name + "さんが引用:", {
+ body: getPostSummary(post),
+ icon: post.user.avatar_url + '?thumbnail&size=64'
+ });
+ setTimeout(n.close.bind(n), 6000);
+ });
+
+ riot.mixin('stream', {
+ stream: s.event,
+ getStreamState: s.getState,
+ streamStateEv: s.stateEv
+ });
+};