Temp notifications
This commit is contained in:
parent
4c4cf275ac
commit
d87dedc48d
@ -2476,7 +2476,7 @@ export class AppMessagesManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public getRichReplyText(message: any, text: string = message.message, usingMids?: number[]) {
|
public getRichReplyText(message: any, text: string = message.message, usingMids?: number[], plain = false) {
|
||||||
let messageText = '';
|
let messageText = '';
|
||||||
|
|
||||||
if(message.media) {
|
if(message.media) {
|
||||||
@ -2511,13 +2511,13 @@ export class AppMessagesManager {
|
|||||||
messageText += '<i>Photo' + (message.message ? ', ' : '') + '</i>';
|
messageText += '<i>Photo' + (message.message ? ', ' : '') + '</i>';
|
||||||
break;
|
break;
|
||||||
case 'messageMediaDice':
|
case 'messageMediaDice':
|
||||||
messageText += RichTextProcessor.wrapEmojiText(media.emoticon);
|
messageText += plain ? media.emoticon : RichTextProcessor.wrapEmojiText(media.emoticon);
|
||||||
break;
|
break;
|
||||||
case 'messageMediaGeo':
|
case 'messageMediaGeo':
|
||||||
messageText += '<i>Geolocation</i>';
|
messageText += '<i>Geolocation</i>';
|
||||||
break;
|
break;
|
||||||
case 'messageMediaPoll':
|
case 'messageMediaPoll':
|
||||||
messageText += '<i>' + media.poll.rReply + '</i>';
|
messageText += '<i>' + (plain ? '📊' + ' ' + media.poll.question || 'poll' : media.poll.rReply) + '</i>';
|
||||||
break;
|
break;
|
||||||
case 'messageMediaContact':
|
case 'messageMediaContact':
|
||||||
messageText += '<i>Contact</i>';
|
messageText += '<i>Contact</i>';
|
||||||
@ -2562,7 +2562,7 @@ export class AppMessagesManager {
|
|||||||
|
|
||||||
const entities = RichTextProcessor.parseEntities(text.replace(/\n/g, ' '));
|
const entities = RichTextProcessor.parseEntities(text.replace(/\n/g, ' '));
|
||||||
|
|
||||||
messageWrapped = RichTextProcessor.wrapRichText(text, {
|
messageWrapped = plain ? text : RichTextProcessor.wrapRichText(text, {
|
||||||
noLinebreaks: true,
|
noLinebreaks: true,
|
||||||
entities,
|
entities,
|
||||||
noLinks: true,
|
noLinks: true,
|
||||||
@ -2570,6 +2570,10 @@ export class AppMessagesManager {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(plain) {
|
||||||
|
messageText = messageText.replace(/<i>/g, '').replace(/<\/i>/g, '');
|
||||||
|
}
|
||||||
|
|
||||||
return messageText + messageWrapped;
|
return messageText + messageWrapped;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4626,152 +4630,10 @@ export class AppMessagesManager {
|
|||||||
|
|
||||||
const localSettings = appNotificationsManager.getLocalSettings();
|
const localSettings = appNotificationsManager.getLocalSettings();
|
||||||
if(options.peerTypeNotifySettings.show_previews) {
|
if(options.peerTypeNotifySettings.show_previews) {
|
||||||
if(message._ === 'message') {
|
if(message._ === 'message' && message.fwd_from && options.fwdCount) {
|
||||||
if(message.fwd_from && options.fwdCount) {
|
notificationMessage = 'Forwarded ' + options.fwdCount + ' messages';//fwdMessagesPluralize(options.fwd_count);
|
||||||
notificationMessage = 'Forwarded ' + options.fwdCount + ' messages';//fwdMessagesPluralize(options.fwd_count);
|
|
||||||
} else if(message.message) {
|
|
||||||
if(localSettings.nopreview) {
|
|
||||||
notificationMessage = _('conversation_message_sent');
|
|
||||||
} else {
|
|
||||||
notificationMessage = RichTextProcessor.wrapPlainText(message.message);
|
|
||||||
}
|
|
||||||
} else if(message.media) {
|
|
||||||
var captionEmoji: string;
|
|
||||||
switch (message.media._) {
|
|
||||||
case 'messageMediaPhoto':
|
|
||||||
notificationMessage = _('conversation_media_photo_raw');
|
|
||||||
captionEmoji = '🖼';
|
|
||||||
break;
|
|
||||||
case 'messageMediaDocument':
|
|
||||||
if(message.media.document._ === 'documentEmpty') break;
|
|
||||||
switch(message.media.document.type) {
|
|
||||||
case 'gif':
|
|
||||||
notificationMessage = _('conversation_media_gif_raw');
|
|
||||||
captionEmoji = '🎬';
|
|
||||||
break;
|
|
||||||
case 'sticker':
|
|
||||||
notificationMessage = _('conversation_media_sticker');
|
|
||||||
var stickerEmoji = message.media.document.stickerEmojiRaw;
|
|
||||||
if(stickerEmoji !== undefined) {
|
|
||||||
notificationMessage = RichTextProcessor.wrapPlainText(stickerEmoji) + ' ' + notificationMessage;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'video':
|
|
||||||
notificationMessage = _('conversation_media_video_raw');
|
|
||||||
captionEmoji = '📹';
|
|
||||||
break;
|
|
||||||
case 'round':
|
|
||||||
notificationMessage = _('conversation_media_round_raw');
|
|
||||||
captionEmoji = '📹';
|
|
||||||
break;
|
|
||||||
case 'voice':
|
|
||||||
case 'audio':
|
|
||||||
notificationMessage = _('conversation_media_audio_raw');
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
if(message.media.document.file_name) {
|
|
||||||
notificationMessage = RichTextProcessor.wrapPlainText('📎 ' + message.media.document.file_name);
|
|
||||||
} else {
|
|
||||||
notificationMessage = _('conversation_media_document_raw');
|
|
||||||
captionEmoji = '📎';
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'messageMediaGeo':
|
|
||||||
case 'messageMediaVenue':
|
|
||||||
notificationMessage = _('conversation_media_location_raw');
|
|
||||||
captionEmoji = '📍';
|
|
||||||
break;
|
|
||||||
case 'messageMediaContact':
|
|
||||||
notificationMessage = _('conversation_media_contact_raw');
|
|
||||||
break;
|
|
||||||
case 'messageMediaGame':
|
|
||||||
notificationMessage = RichTextProcessor.wrapPlainText('🎮 ' + message.media.game.title);
|
|
||||||
break;
|
|
||||||
case 'messageMediaUnsupported':
|
|
||||||
notificationMessage = _('conversation_media_unsupported_raw');
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
notificationMessage = _('conversation_media_attachment_raw');
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(captionEmoji !== undefined && (message.media as any).caption) {
|
|
||||||
notificationMessage = RichTextProcessor.wrapPlainText(captionEmoji + ' ' + (message.media as any).caption);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
switch(message.action._) {
|
notificationMessage = this.getRichReplyText(message, undefined, undefined, true);
|
||||||
case 'messageActionChatCreate':
|
|
||||||
notificationMessage = _('conversation_group_created_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChatEditTitle':
|
|
||||||
notificationMessage = _('conversation_group_renamed_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChatEditPhoto':
|
|
||||||
notificationMessage = _('conversation_group_photo_updated_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChatDeletePhoto':
|
|
||||||
notificationMessage = _('conversation_group_photo_removed_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChatAddUser':
|
|
||||||
// @ts-ignore
|
|
||||||
case 'messageActionChatAddUsers':
|
|
||||||
notificationMessage = _('conversation_invited_user_message_raw')
|
|
||||||
break
|
|
||||||
/* case 'messageActionChatReturn':
|
|
||||||
notificationMessage = _('conversation_returned_to_group_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChatJoined':
|
|
||||||
notificationMessage = _('conversation_joined_group_raw')
|
|
||||||
break */
|
|
||||||
case 'messageActionChatDeleteUser':
|
|
||||||
notificationMessage = _('conversation_kicked_user_message_raw')
|
|
||||||
break
|
|
||||||
/* case 'messageActionChatLeave':
|
|
||||||
notificationMessage = _('conversation_left_group_raw')
|
|
||||||
break */
|
|
||||||
case 'messageActionChatJoinedByLink':
|
|
||||||
notificationMessage = _('conversation_joined_by_link_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChannelCreate':
|
|
||||||
notificationMessage = _('conversation_created_channel_raw')
|
|
||||||
break
|
|
||||||
/* case 'messageActionChannelEditTitle':
|
|
||||||
notificationMessage = _('conversation_changed_channel_name_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChannelEditPhoto':
|
|
||||||
notificationMessage = _('conversation_changed_channel_photo_raw')
|
|
||||||
break
|
|
||||||
case 'messageActionChannelDeletePhoto':
|
|
||||||
notificationMessage = _('conversation_removed_channel_photo_raw')
|
|
||||||
break */
|
|
||||||
case 'messageActionPinMessage':
|
|
||||||
notificationMessage = _('conversation_pinned_message_raw')
|
|
||||||
break
|
|
||||||
/* case 'messageActionGameScore':
|
|
||||||
notificationMessage = gameScorePluralize(message.action.score)
|
|
||||||
break */
|
|
||||||
|
|
||||||
case 'messageActionPhoneCall':
|
|
||||||
switch((message.action as any).type) {
|
|
||||||
case 'out_missed':
|
|
||||||
notificationMessage = _('message_service_phonecall_canceled_raw')
|
|
||||||
break
|
|
||||||
case 'in_missed':
|
|
||||||
notificationMessage = _('message_service_phonecall_missed_raw')
|
|
||||||
break
|
|
||||||
case 'out_ok':
|
|
||||||
notificationMessage = _('message_service_phonecall_outgoing_raw')
|
|
||||||
break
|
|
||||||
case 'in_ok':
|
|
||||||
notificationMessage = _('message_service_phonecall_incoming_raw')
|
|
||||||
break
|
|
||||||
}
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
notificationMessage = 'New notification';
|
notificationMessage = 'New notification';
|
||||||
|
@ -538,7 +538,7 @@ export class AppNotificationsManager {
|
|||||||
const notification = this.notificationsShown[i];
|
const notification = this.notificationsShown[i];
|
||||||
if(notification &&
|
if(notification &&
|
||||||
notification.tag === data.tag) {
|
notification.tag === data.tag) {
|
||||||
notification.hidden = true
|
notification.hidden = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -549,10 +549,11 @@ export class AppNotificationsManager {
|
|||||||
tag: data.tag || '',
|
tag: data.tag || '',
|
||||||
silent: data.silent || false
|
silent: data.silent || false
|
||||||
});
|
});
|
||||||
|
console.log('notify constructed notification');
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
this.notificationsUiSupport = false;
|
this.notificationsUiSupport = false;
|
||||||
//WebPushApiManager.setLocalNotificationsDisabled();
|
//WebPushApiManager.setLocalNotificationsDisabled();
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
} /* else if('mozNotification' in navigator) {
|
} /* else if('mozNotification' in navigator) {
|
||||||
notification = navigator.mozNotification.createNotification(data.title, data.message || '', data.image || '')
|
notification = navigator.mozNotification.createNotification(data.title, data.message || '', data.image || '')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user