QiscusCore-iOS

Qiscus Core Chat SDK

OTHER License

Stars
14
Committers
3

Bot releases are hidden (Show)

QiscusCore-iOS - Qiscus Chat SDK (core) v1.12.0 Latest Release

Published by ariefnurputranto 6 months ago

Changelog:

  • update flow expired token

for example for handle new flow

extension UIChatListPresenter : QiscusCoreDelegate {
    func onRefreshToken(event: QiscusRefreshTokenEvent) {
        if event == .isUnauthorized {
            //need to force re login or re init qiscusCore
            if let deviceToken = UserDefaults.standard.getDeviceToken(){
                QiscusCore.shared.removeDeviceToken(token: deviceToken, onSuccess: { (success) in
                    //success
                }) { (error) in
                    
                }
            }
            
            QiscusCore.clearUser { (error) in
            //re login or re initiate
                let app = UIApplication.shared.delegate as! AppDelegate
                app.auth()
            }
        }else if event == .isTokenExpired {
            //need to call api refresh token when auto refresh token from be is false, by default is true from be
            QiscusCore.shared.refreshToken { refreshToken in
            
            } onError: { error in

            }

        }
    }
 }
QiscusCore-iOS - Qiscus Chat SDK (core) v1.11.0

Published by ariefnurputranto 7 months ago

Changelog :

  • Add Privacy Info
  • Improve mechanism update comment
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.6

Published by ariefnurputranto 11 months ago

Changelog :

  • Fix issues token after calling API profile in the flow feature refresh token
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.5

Published by ariefnurputranto 11 months ago

Changelog :

  • Fix issues looping when failing to send a message
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.4

Published by ariefnurputranto about 1 year ago

Changelog :

  • Add param publishEvent in func getAllRoom() & getAllChatRooms()

for example :

 QiscusCore.shared.getAllChatRooms(showParticipant: true, showRemoved: false, showEmpty: true, page: 1, limit: 100, publishEvent: false, onSuccess: { (results, meta) in
 
       }, onError: { (error) in
       
       })
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.3

Published by ariefnurputranto about 1 year ago

Changelog :

  • add config enable refresh token
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.2

Published by ariefnurputranto about 1 year ago

Changelog :

  • Fix race condition when logout-login
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.1

Published by ariefnurputranto almost 2 years ago

Changelog :

  • Update lib Qiscus Realtime
QiscusCore-iOS - Qiscus Chat SDK (core) v1.10.0

Published by ariefnurputranto almost 2 years ago

Changelog :

  • New Flow expired token

for implementation manually calling the API refresh token, can use this code.

 func onRefreshToken(event: QiscusRefreshTokenEvent) {
        if event == .isUnauthorized {
            //need to force re login
        }else if event == .isTokenExpired {
            //implement call api refresh token if auto refresh token is false from BE (by default is true), request contact us for set auto refresh false
        }
    }

***Note :

  • Please contact us, if you want to implementation the flow expired token and manually or automatic call API refresh token
QiscusCore-iOS - Qiscus Chat SDK (core) v1.9.0

Published by ariefnurputranto about 2 years ago

Changelog :

  • Support XCode 14
QiscusCore-iOS - Qiscus Chat SDK (core) v1.8.0

Published by ariefnurputranto about 2 years ago

Changelog :

  • Support ExpiredToken

for example :

  • if you get error when call API qiscusCore with error code 403, please call api refreshToken
 QiscusCore.shared.getAllChatRooms(page: 1, limit: 50) { rooms, meta in
            print("sucess get data")
        } onError: { error in
            // if error equal 403  print("error expired token")
            //call api refreshToken
            QiscusCore.shared.refreshToken { isSuccess in
                print("check isSuccess =\(isSuccess)")
            } onError: { error in
                print("error =\(error.message)")
            }

        }
QiscusCore-iOS - Qiscus Chat SDK (core) v1.7.0

Published by ariefnurputranto about 2 years ago

Changelog:

  • Support SPM
QiscusCore-iOS - Qiscus Chat SDK (core) v1.6.1

Published by ariefnurputranto over 2 years ago

Improve appConfig Sync and SyncEvent

QiscusCore-iOS - Qiscus Chat SDK (core) v1.6.0

Published by ariefnurputranto about 3 years ago

Support XCode 13

QiscusCore-iOS - Qiscus Chat SDK (core) v1.5.15

Published by ariefnurputranto about 3 years ago

Changelog :

  • Prevent Crash on ios os 14.6++ when connecting to realtime
QiscusCore-iOS - Qiscus Chat SDK (core) v1.5.14

Published by ariefnurputranto about 3 years ago

Changelog :

  • Fix close realtime connection without affecting sync interval

****Note : On normal occurence, sync interval will be changed to 5 seconds from 30 seconds when realtime connection are closed
but if closeRealtimeConnection() are called, it will still on 30 seconds interval

QiscusCore-iOS - Qiscus Chat SDK (core) v1.5.13

Published by ariefnurputranto about 3 years ago

Changelog :

  • Fix Issue room name override from system_event (1 on 1 chat)
  • Implement feature open and close realtimeConnection (Manually)

Example :
for open realtime conncetion

QiscusCore.openRealtimeConnection();

for close realtime connection

QiscusCore.closeRealtimeConnection();

**** Please resubscribe to chatRoom/refresh activity when using manually open realtimeConnection in chatRoom after realtimeConnection is connected from delegate QiscusConnectionDelegate

extension AppDelegate : QiscusConnectionDelegate {
    func onConnected(){
        NotificationCenter.default.post(name: NSNotification.Name(rawValue: "reSubscribeRoom"), object: nil) 
    }
}

in chatRoomViewController

let center: NotificationCenter = NotificationCenter.default
center.addObserver(self,selector: #selector(reSubscribeRoom(_:)), name: Notification.Name(rawValue: "reSubscribeRoom"),object: nil)

@objc func reSubscribeRoom(_ notification: Notification)
    {
        //restart viewController or reSubscribe
        self.presenter.attachView(view: self)
    }
QiscusCore-iOS - Qiscus Chat SDK (core) v1.5.12

Published by ariefnurputranto over 3 years ago

Changelog :

  • Fix issue infinity retry send message when get error status code 400-599
QiscusCore-iOS - Qiscus Chat SDK (core) v1.5.11

Published by ariefnurputranto over 3 years ago

Changelog:

  • Add new parameters userId, includeExtensions, excludeExtensions in getFileList() api
  • Support AppExtension
  • Fix flow appConfig() and getLB()

Note : if failed to install this version

You can try this code

pod update --repo-update
QiscusCore-iOS - Qiscus Chat SDK (core) v1.5.10

Published by ariefnurputranto over 3 years ago

Changelog :

  • Implement feature update message

For example :

QiscusCore.shared.updateMessage(message: comment, onSuccess: { [weak self] (comment) in
           
        }) { (error) in
           
        }

Implement in delegate :
QiscusCoreDelegate :

func onRoomMessageUpdated(_ room: RoomModel, message: CommentModel){
     //message updated
     //reload your tableView from roomID
}

QiscusCoreRoomDelegate :

func onMessageUpdated(message: CommentModel) {
     //message updated
     //reload your tableView
}

****Note :