mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-19 10:45:13 +01:00
I think this should work - need to test it out
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
This commit is contained in:
parent
fdfa58dcdd
commit
8b11e7ee0e
@ -131,6 +131,7 @@ import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ONE_TO_ONE
|
|||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM
|
||||||
|
import com.nextcloud.talk.utils.bundle.BundleKeys.SILENT_FOR
|
||||||
import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil
|
import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil
|
||||||
import com.nextcloud.talk.utils.power.PowerManagerUtils
|
import com.nextcloud.talk.utils.power.PowerManagerUtils
|
||||||
import com.nextcloud.talk.utils.registerPermissionHandlerBroadcastReceiver
|
import com.nextcloud.talk.utils.registerPermissionHandlerBroadcastReceiver
|
||||||
@ -236,6 +237,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
private var microphoneOn = false
|
private var microphoneOn = false
|
||||||
private var isVoiceOnlyCall = false
|
private var isVoiceOnlyCall = false
|
||||||
private var isCallWithoutNotification = false
|
private var isCallWithoutNotification = false
|
||||||
|
private var silentFor: Array<String>? = null
|
||||||
private var isIncomingCallFromNotification = false
|
private var isIncomingCallFromNotification = false
|
||||||
private val callControlHandler = Handler()
|
private val callControlHandler = Handler()
|
||||||
private val callInfosHandler = Handler()
|
private val callInfosHandler = Handler()
|
||||||
@ -383,9 +385,9 @@ class CallActivity : CallBaseActivity() {
|
|||||||
|
|
||||||
conversationUser = currentUserProvider.currentUser.blockingGet()
|
conversationUser = currentUserProvider.currentUser.blockingGet()
|
||||||
|
|
||||||
credentials = ApiUtils.getCredentials(conversationUser!!.username, conversationUser!!.token)
|
credentials = ApiUtils.getCredentials(conversationUser.username, conversationUser.token)
|
||||||
if (TextUtils.isEmpty(baseUrl)) {
|
if (TextUtils.isEmpty(baseUrl)) {
|
||||||
baseUrl = conversationUser!!.baseUrl
|
baseUrl = conversationUser.baseUrl
|
||||||
}
|
}
|
||||||
powerManagerUtils = PowerManagerUtils()
|
powerManagerUtils = PowerManagerUtils()
|
||||||
|
|
||||||
@ -492,6 +494,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
conversationName = extras.getString(KEY_CONVERSATION_NAME, "")
|
conversationName = extras.getString(KEY_CONVERSATION_NAME, "")
|
||||||
isVoiceOnlyCall = extras.getBoolean(KEY_CALL_VOICE_ONLY, false)
|
isVoiceOnlyCall = extras.getBoolean(KEY_CALL_VOICE_ONLY, false)
|
||||||
isCallWithoutNotification = extras.getBoolean(KEY_CALL_WITHOUT_NOTIFICATION, false)
|
isCallWithoutNotification = extras.getBoolean(KEY_CALL_WITHOUT_NOTIFICATION, false)
|
||||||
|
silentFor = extras.getStringArray(SILENT_FOR)
|
||||||
canPublishAudioStream = extras.getBoolean(KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO)
|
canPublishAudioStream = extras.getBoolean(KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO)
|
||||||
canPublishVideoStream = extras.getBoolean(KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO)
|
canPublishVideoStream = extras.getBoolean(KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO)
|
||||||
isModerator = extras.getBoolean(KEY_IS_MODERATOR, false)
|
isModerator = extras.getBoolean(KEY_IS_MODERATOR, false)
|
||||||
@ -530,12 +533,12 @@ class CallActivity : CallBaseActivity() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
when (CapabilitiesUtil.getRecordingConsentType(conversationUser!!.capabilities!!.spreedCapability!!)) {
|
when (CapabilitiesUtil.getRecordingConsentType(conversationUser.capabilities!!.spreedCapability!!)) {
|
||||||
CapabilitiesUtil.RECORDING_CONSENT_NOT_REQUIRED -> initiateCall()
|
CapabilitiesUtil.RECORDING_CONSENT_NOT_REQUIRED -> initiateCall()
|
||||||
CapabilitiesUtil.RECORDING_CONSENT_REQUIRED -> askForRecordingConsent()
|
CapabilitiesUtil.RECORDING_CONSENT_REQUIRED -> askForRecordingConsent()
|
||||||
CapabilitiesUtil.RECORDING_CONSENT_DEPEND_ON_CONVERSATION -> {
|
CapabilitiesUtil.RECORDING_CONSENT_DEPEND_ON_CONVERSATION -> {
|
||||||
val getRoomApiVersion = ApiUtils.getConversationApiVersion(
|
val getRoomApiVersion = ApiUtils.getConversationApiVersion(
|
||||||
conversationUser!!,
|
conversationUser,
|
||||||
intArrayOf(ApiUtils.API_V4, 1)
|
intArrayOf(ApiUtils.API_V4, 1)
|
||||||
)
|
)
|
||||||
ncApi!!.getRoom(credentials, ApiUtils.getUrlForRoom(getRoomApiVersion, baseUrl, roomToken))
|
ncApi!!.getRoom(credentials, ApiUtils.getUrlForRoom(getRoomApiVersion, baseUrl, roomToken))
|
||||||
@ -583,7 +586,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun sendReaction(emoji: String?) {
|
fun sendReaction(emoji: String?) {
|
||||||
addReactionForAnimation(emoji, conversationUser!!.displayName)
|
addReactionForAnimation(emoji, conversationUser.displayName)
|
||||||
if (isConnectionEstablished) {
|
if (isConnectionEstablished) {
|
||||||
for (peerConnectionWrapper in peerConnectionWrapperList) {
|
for (peerConnectionWrapper in peerConnectionWrapperList) {
|
||||||
peerConnectionWrapper.sendReaction(emoji)
|
peerConnectionWrapper.sendReaction(emoji)
|
||||||
@ -1497,20 +1500,20 @@ class CallActivity : CallBaseActivity() {
|
|||||||
}
|
}
|
||||||
Log.d(TAG, " hasExternalSignalingServer: $hasExternalSignalingServer")
|
Log.d(TAG, " hasExternalSignalingServer: $hasExternalSignalingServer")
|
||||||
|
|
||||||
if ("?" != conversationUser!!.userId && conversationUser!!.id != null) {
|
if ("?" != conversationUser.userId && conversationUser.id != null) {
|
||||||
Log.d(
|
Log.d(
|
||||||
TAG,
|
TAG,
|
||||||
"Update externalSignalingServer for: " + conversationUser!!.id +
|
"Update externalSignalingServer for: " + conversationUser.id +
|
||||||
" / " + conversationUser!!.userId
|
" / " + conversationUser.userId
|
||||||
)
|
)
|
||||||
userManager!!.updateExternalSignalingServer(
|
userManager!!.updateExternalSignalingServer(
|
||||||
conversationUser!!.id!!,
|
conversationUser.id!!,
|
||||||
externalSignalingServer!!
|
externalSignalingServer!!
|
||||||
)
|
)
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.subscribe()
|
.subscribe()
|
||||||
} else {
|
} else {
|
||||||
conversationUser!!.externalSignalingServer = externalSignalingServer
|
conversationUser.externalSignalingServer = externalSignalingServer
|
||||||
}
|
}
|
||||||
|
|
||||||
addIceServers(signalingSettingsOverall, apiVersion)
|
addIceServers(signalingSettingsOverall, apiVersion)
|
||||||
@ -1698,7 +1701,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
if (!TextUtils.isEmpty(roomToken)) {
|
if (!TextUtils.isEmpty(roomToken)) {
|
||||||
cancelExistingNotificationsForRoom(
|
cancelExistingNotificationsForRoom(
|
||||||
applicationContext,
|
applicationContext,
|
||||||
conversationUser!!,
|
conversationUser,
|
||||||
roomToken!!
|
roomToken!!
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@ -1743,7 +1746,8 @@ class CallActivity : CallBaseActivity() {
|
|||||||
ApiUtils.getUrlForCall(apiVersion, baseUrl, roomToken!!),
|
ApiUtils.getUrlForCall(apiVersion, baseUrl, roomToken!!),
|
||||||
inCallFlag,
|
inCallFlag,
|
||||||
isCallWithoutNotification,
|
isCallWithoutNotification,
|
||||||
recordingConsentGiven
|
recordingConsentGiven,
|
||||||
|
silentFor ?: arrayOf()
|
||||||
)
|
)
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.retry(API_RETRIES)
|
.retry(API_RETRIES)
|
||||||
@ -1780,7 +1784,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
private fun startCallTimeCounter(callStartTime: Long) {
|
private fun startCallTimeCounter(callStartTime: Long) {
|
||||||
if (callStartTime != 0L &&
|
if (callStartTime != 0L &&
|
||||||
hasSpreedFeatureCapability(
|
hasSpreedFeatureCapability(
|
||||||
conversationUser!!.capabilities!!.spreedCapability!!,
|
conversationUser.capabilities!!.spreedCapability!!,
|
||||||
SpreedFeatures.RECORDING_V1
|
SpreedFeatures.RECORDING_V1
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
@ -2603,8 +2607,8 @@ class CallActivity : CallBaseActivity() {
|
|||||||
val dataChannelMessage = DataChannelMessage()
|
val dataChannelMessage = DataChannelMessage()
|
||||||
dataChannelMessage.type = "nickChanged"
|
dataChannelMessage.type = "nickChanged"
|
||||||
val nickChangedPayload: MutableMap<String, String> = HashMap()
|
val nickChangedPayload: MutableMap<String, String> = HashMap()
|
||||||
nickChangedPayload["userid"] = conversationUser!!.userId!!
|
nickChangedPayload["userid"] = conversationUser.userId!!
|
||||||
nickChangedPayload["name"] = conversationUser!!.displayName!!
|
nickChangedPayload["name"] = conversationUser.displayName!!
|
||||||
dataChannelMessage.payloadMap = nickChangedPayload.toMap()
|
dataChannelMessage.payloadMap = nickChangedPayload.toMap()
|
||||||
for (peerConnectionWrapper in peerConnectionWrapperList) {
|
for (peerConnectionWrapper in peerConnectionWrapperList) {
|
||||||
if (peerConnectionWrapper.isMCUPublisher) {
|
if (peerConnectionWrapper.isMCUPublisher) {
|
||||||
@ -3100,7 +3104,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
val payload = ncSignalingMessage.payload
|
val payload = ncSignalingMessage.payload
|
||||||
?: // Broken message, this should not happen
|
?: // Broken message, this should not happen
|
||||||
return
|
return
|
||||||
payload.nick = conversationUser!!.displayName
|
payload.nick = conversationUser.displayName
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3251,7 +3255,7 @@ class CallActivity : CallBaseActivity() {
|
|||||||
|
|
||||||
val isAllowedToStartOrStopRecording: Boolean
|
val isAllowedToStartOrStopRecording: Boolean
|
||||||
get() = (
|
get() = (
|
||||||
isCallRecordingAvailable(conversationUser!!.capabilities!!.spreedCapability!!) &&
|
isCallRecordingAvailable(conversationUser.capabilities!!.spreedCapability!!) &&
|
||||||
isModerator
|
isModerator
|
||||||
)
|
)
|
||||||
val isAllowedToRaiseHand: Boolean
|
val isAllowedToRaiseHand: Boolean
|
||||||
|
@ -25,7 +25,6 @@ import com.nextcloud.talk.models.json.notifications.NotificationOverall;
|
|||||||
import com.nextcloud.talk.models.json.opengraph.OpenGraphOverall;
|
import com.nextcloud.talk.models.json.opengraph.OpenGraphOverall;
|
||||||
import com.nextcloud.talk.models.json.participants.AddParticipantOverall;
|
import com.nextcloud.talk.models.json.participants.AddParticipantOverall;
|
||||||
import com.nextcloud.talk.models.json.participants.ParticipantsOverall;
|
import com.nextcloud.talk.models.json.participants.ParticipantsOverall;
|
||||||
import com.nextcloud.talk.models.json.participants.TalkBanOverall;
|
|
||||||
import com.nextcloud.talk.models.json.push.PushRegistrationOverall;
|
import com.nextcloud.talk.models.json.push.PushRegistrationOverall;
|
||||||
import com.nextcloud.talk.models.json.reactions.ReactionsOverall;
|
import com.nextcloud.talk.models.json.reactions.ReactionsOverall;
|
||||||
import com.nextcloud.talk.models.json.reminder.ReminderOverall;
|
import com.nextcloud.talk.models.json.reminder.ReminderOverall;
|
||||||
@ -207,7 +206,8 @@ public interface NcApi {
|
|||||||
@Url String url,
|
@Url String url,
|
||||||
@Field("flags") Integer inCall,
|
@Field("flags") Integer inCall,
|
||||||
@Field("silent") Boolean callWithoutNotification,
|
@Field("silent") Boolean callWithoutNotification,
|
||||||
@Nullable @Field("recordingConsent") Boolean recordingConsent);
|
@Nullable @Field("recordingConsent") Boolean recordingConsent,
|
||||||
|
@Field("silentFor") String[] silentFor);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Server URL is: baseUrl + ocsApiVersion + spreedApiVersion + /call/callToken
|
Server URL is: baseUrl + ocsApiVersion + spreedApiVersion + /call/callToken
|
||||||
|
@ -53,6 +53,7 @@ import androidx.activity.result.ActivityResult
|
|||||||
import androidx.activity.result.ActivityResultLauncher
|
import androidx.activity.result.ActivityResultLauncher
|
||||||
import androidx.activity.result.PickVisualMediaRequest
|
import androidx.activity.result.PickVisualMediaRequest
|
||||||
import androidx.activity.result.contract.ActivityResultContracts
|
import androidx.activity.result.contract.ActivityResultContracts
|
||||||
|
import androidx.activity.result.contract.ActivityResultContracts.PickVisualMedia
|
||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
import androidx.appcompat.view.ContextThemeWrapper
|
import androidx.appcompat.view.ContextThemeWrapper
|
||||||
import androidx.cardview.widget.CardView
|
import androidx.cardview.widget.CardView
|
||||||
@ -124,6 +125,7 @@ import com.nextcloud.talk.chat.data.model.ChatMessage
|
|||||||
import com.nextcloud.talk.chat.viewmodels.ChatViewModel
|
import com.nextcloud.talk.chat.viewmodels.ChatViewModel
|
||||||
import com.nextcloud.talk.chat.viewmodels.MessageInputViewModel
|
import com.nextcloud.talk.chat.viewmodels.MessageInputViewModel
|
||||||
import com.nextcloud.talk.conversationinfo.ConversationInfoActivity
|
import com.nextcloud.talk.conversationinfo.ConversationInfoActivity
|
||||||
|
import com.nextcloud.talk.conversationinfo.viewmodel.ConversationInfoViewModel
|
||||||
import com.nextcloud.talk.conversationlist.ConversationsListActivity
|
import com.nextcloud.talk.conversationlist.ConversationsListActivity
|
||||||
import com.nextcloud.talk.data.network.NetworkMonitor
|
import com.nextcloud.talk.data.network.NetworkMonitor
|
||||||
import com.nextcloud.talk.data.user.model.User
|
import com.nextcloud.talk.data.user.model.User
|
||||||
@ -142,6 +144,7 @@ import com.nextcloud.talk.models.domain.ConversationModel
|
|||||||
import com.nextcloud.talk.models.json.capabilities.SpreedCapability
|
import com.nextcloud.talk.models.json.capabilities.SpreedCapability
|
||||||
import com.nextcloud.talk.models.json.chat.ReadStatus
|
import com.nextcloud.talk.models.json.chat.ReadStatus
|
||||||
import com.nextcloud.talk.models.json.conversations.ConversationEnums
|
import com.nextcloud.talk.models.json.conversations.ConversationEnums
|
||||||
|
import com.nextcloud.talk.models.json.participants.Participant
|
||||||
import com.nextcloud.talk.models.json.signaling.settings.SignalingSettingsOverall
|
import com.nextcloud.talk.models.json.signaling.settings.SignalingSettingsOverall
|
||||||
import com.nextcloud.talk.polls.ui.PollCreateDialogFragment
|
import com.nextcloud.talk.polls.ui.PollCreateDialogFragment
|
||||||
import com.nextcloud.talk.remotefilebrowser.activities.RemoteFileBrowserActivity
|
import com.nextcloud.talk.remotefilebrowser.activities.RemoteFileBrowserActivity
|
||||||
@ -187,6 +190,7 @@ import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_RECORDING_STATE
|
|||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH
|
||||||
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM
|
import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM
|
||||||
|
import com.nextcloud.talk.utils.bundle.BundleKeys.SILENT_FOR
|
||||||
import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil
|
import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil
|
||||||
import com.nextcloud.talk.utils.rx.DisposableSet
|
import com.nextcloud.talk.utils.rx.DisposableSet
|
||||||
import com.nextcloud.talk.utils.singletons.ApplicationWideCurrentRoomHolder
|
import com.nextcloud.talk.utils.singletons.ApplicationWideCurrentRoomHolder
|
||||||
@ -224,9 +228,6 @@ import java.util.Locale
|
|||||||
import java.util.concurrent.ExecutionException
|
import java.util.concurrent.ExecutionException
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
import kotlin.math.roundToInt
|
import kotlin.math.roundToInt
|
||||||
import androidx.activity.result.contract.ActivityResultContracts.PickVisualMedia
|
|
||||||
import com.nextcloud.talk.conversationinfo.viewmodel.ConversationInfoViewModel
|
|
||||||
import com.nextcloud.talk.models.json.participants.Participant
|
|
||||||
|
|
||||||
@AutoInjector(NextcloudTalkApplication::class)
|
@AutoInjector(NextcloudTalkApplication::class)
|
||||||
class ChatActivity :
|
class ChatActivity :
|
||||||
@ -327,6 +328,7 @@ class ChatActivity :
|
|||||||
var pullChatMessagesPending = false
|
var pullChatMessagesPending = false
|
||||||
var startCallFromNotification: Boolean = false
|
var startCallFromNotification: Boolean = false
|
||||||
var startCallFromRoomSwitch: Boolean = false
|
var startCallFromRoomSwitch: Boolean = false
|
||||||
|
var silentFor: Array<String>? = null
|
||||||
|
|
||||||
var voiceOnly: Boolean = true
|
var voiceOnly: Boolean = true
|
||||||
private lateinit var path: String
|
private lateinit var path: String
|
||||||
@ -510,7 +512,7 @@ class ChatActivity :
|
|||||||
|
|
||||||
startCallFromNotification = extras?.getBoolean(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL, false) == true
|
startCallFromNotification = extras?.getBoolean(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL, false) == true
|
||||||
startCallFromRoomSwitch = extras?.getBoolean(KEY_START_CALL_AFTER_ROOM_SWITCH, false) == true
|
startCallFromRoomSwitch = extras?.getBoolean(KEY_START_CALL_AFTER_ROOM_SWITCH, false) == true
|
||||||
|
silentFor = extras?.getStringArray(SILENT_FOR)
|
||||||
voiceOnly = extras?.getBoolean(KEY_CALL_VOICE_ONLY, false) == true
|
voiceOnly = extras?.getBoolean(KEY_CALL_VOICE_ONLY, false) == true
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -678,7 +680,7 @@ class ChatActivity :
|
|||||||
|
|
||||||
if (startCallFromRoomSwitch) {
|
if (startCallFromRoomSwitch) {
|
||||||
startCallFromRoomSwitch = false
|
startCallFromRoomSwitch = false
|
||||||
startACall(voiceOnly, true)
|
startACall(voiceOnly, true, silentFor)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1636,6 +1638,13 @@ class ChatActivity :
|
|||||||
bundle.putBoolean(KEY_CALL_VOICE_ONLY, isVoiceOnlyCall)
|
bundle.putBoolean(KEY_CALL_VOICE_ONLY, isVoiceOnlyCall)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val previousParticipants = mutableListOf<String>()
|
||||||
|
if (currentConversation?.type == ConversationEnums.ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL) {
|
||||||
|
previousParticipants.add(currentConversation!!.name)
|
||||||
|
val silentFor = previousParticipants.toTypedArray()
|
||||||
|
bundle.putStringArray(SILENT_FOR, silentFor)
|
||||||
|
}
|
||||||
|
|
||||||
leaveRoom {
|
leaveRoom {
|
||||||
val chatIntent = Intent(context, ChatActivity::class.java)
|
val chatIntent = Intent(context, ChatActivity::class.java)
|
||||||
chatIntent.putExtras(bundle)
|
chatIntent.putExtras(bundle)
|
||||||
@ -3245,7 +3254,7 @@ class ChatActivity :
|
|||||||
private fun isPollVotedMessage(currentMessage: MutableMap.MutableEntry<String, ChatMessage>): Boolean =
|
private fun isPollVotedMessage(currentMessage: MutableMap.MutableEntry<String, ChatMessage>): Boolean =
|
||||||
currentMessage.value.systemMessageType == ChatMessage.SystemMessageType.POLL_VOTED
|
currentMessage.value.systemMessageType == ChatMessage.SystemMessageType.POLL_VOTED
|
||||||
|
|
||||||
private fun startACall(isVoiceOnlyCall: Boolean, callWithoutNotification: Boolean) {
|
private fun startACall(isVoiceOnlyCall: Boolean, callWithoutNotification: Boolean, silentFor: Array<String>? = null) {
|
||||||
currentConversation?.let {
|
currentConversation?.let {
|
||||||
if (conversationUser != null) {
|
if (conversationUser != null) {
|
||||||
val pp = ParticipantPermissions(spreedCapabilities, it)
|
val pp = ParticipantPermissions(spreedCapabilities, it)
|
||||||
@ -3290,6 +3299,7 @@ class ChatActivity :
|
|||||||
|
|
||||||
if (it.objectType == ConversationEnums.ObjectType.ROOM) {
|
if (it.objectType == ConversationEnums.ObjectType.ROOM) {
|
||||||
bundle.putBoolean(KEY_IS_BREAKOUT_ROOM, true)
|
bundle.putBoolean(KEY_IS_BREAKOUT_ROOM, true)
|
||||||
|
bundle.putStringArray(SILENT_FOR, silentFor) // TODO should this go here?
|
||||||
}
|
}
|
||||||
|
|
||||||
val callIntent = Intent(this, CallActivity::class.java)
|
val callIntent = Intent(this, CallActivity::class.java)
|
||||||
|
@ -81,4 +81,5 @@ object BundleKeys {
|
|||||||
const val KEY_FIELD_MAP: String = "KEY_FIELD_MAP"
|
const val KEY_FIELD_MAP: String = "KEY_FIELD_MAP"
|
||||||
const val KEY_CHAT_URL: String = "KEY_CHAT_URL"
|
const val KEY_CHAT_URL: String = "KEY_CHAT_URL"
|
||||||
const val KEY_SCROLL_TO_NOTIFICATION_CATEGORY: String = "KEY_SCROLL_TO_NOTIFICATION_CATEGORY"
|
const val KEY_SCROLL_TO_NOTIFICATION_CATEGORY: String = "KEY_SCROLL_TO_NOTIFICATION_CATEGORY"
|
||||||
|
const val SILENT_FOR: String = "SILENT_FOR"
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user