From 0b5e6a277b8740d5be6ae4b77502b113fc70445c Mon Sep 17 00:00:00 2001
From: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>
Date: Wed, 1 Nov 2017 17:31:30 -0400
Subject: [PATCH] contacts: subscribe to contact presence when accepting an
 invite

Change-Id: If3f3550118cace5499d204fbcc920ee779dff769
Reviewed-by: Kateryna Kostiuk <kateryna.kostiuk@savoirfairelinux.com>
---
 .../Features/ContactRequests/ContactRequestsViewModel.swift | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Ring/Ring/Features/ContactRequests/ContactRequestsViewModel.swift b/Ring/Ring/Features/ContactRequests/ContactRequestsViewModel.swift
index 08afd7a54..b71b934bc 100644
--- a/Ring/Ring/Features/ContactRequests/ContactRequestsViewModel.swift
+++ b/Ring/Ring/Features/ContactRequests/ContactRequestsViewModel.swift
@@ -34,6 +34,7 @@ class ContactRequestsViewModel: Stateable, ViewModel {
     let accountsService: AccountsService
     let conversationService: ConversationsService
     let nameService: NameService
+    let presenceService: PresenceService
 
     fileprivate let disposeBag = DisposeBag()
     fileprivate let log = SwiftyBeaver.self
@@ -45,6 +46,7 @@ class ContactRequestsViewModel: Stateable, ViewModel {
         self.accountsService = injectionBag.accountService
         self.conversationService = injectionBag.conversationsService
         self.nameService = injectionBag.nameService
+        self.presenceService = injectionBag.presenceService
 
         self.injectionBag = injectionBag
 
@@ -97,6 +99,10 @@ class ContactRequestsViewModel: Stateable, ViewModel {
             })
             .disposed(by: disposeBag)
 
+        self.presenceService.subscribeBuddy(withAccountId: (self.accountsService.currentAccount?.id)!,
+                                            withUri: item.contactRequest.ringId,
+                                            withFlag: true)
+
         if let vCard = item.contactRequest.vCard {
             let saveVCardCompleted = self.contactsService.saveVCard(vCard: vCard, forContactWithRingId: item.contactRequest.ringId)
             return Observable<Void>.zip(acceptCompleted, saveVCardCompleted) { _, _ in
-- 
GitLab