Channel Developers

  • ALF Quick Publish: Use ALF without a workflow—ALF can proactively engage and respond to users first.

  • Ensures only one dispatch task action is executed at a time by adding an explicit queue.

  • Resolve UI thread crashes that occur under certain conditions.

  • Internally adapted to changes in the user chat model.

  • The unmanaged UserChat lost handling when the user changed from background to foreground state in certain conditions.

  • Improved the file update experience

  • Modified video playback to overlap with audio that is already playing

  • Fixes an issue where the delete button would appear on messages that could not be deleted.

  • Fixes an issue where the popup would not close when the popup button was pressed.

  • Improved message failure experience.

  • Memory optimization

  • Fixes abnormal scroll behavior.

  • Fixes an issue where keyboard covers input bar

  • Fixes text to be displayed correctly when using Alf

  • Added a prevent duplicate inquiry feature in channel settings.

  • Fixed block response for closed chat was not applied immediately after the consultation ended, even when the answer blocking time was set to immediate.

  • Fix the dispose lifecycle during the socket disconnect and connect process.

  • Updated the minimum supported iOS version from iOS 12 to iOS 15.

  • The model name changes

    • All public models are prefixed with 'CHT'

  • CSAT emoji is changed.

  • Fixed long press on messages with attachments does not display delete action.

  • Fixed bot names showing as 'Unknown' for certain messages.

  • Added support for bulk file uploads by users.

  • Added a toast message to notify users when an unknown command parameter is delivered.

  • Standardized the format of requestId for internal messages.

  • Display loader more clearly when user press the "Translate" button on a message.

  • The Channel Talk Status button is now visible when the server is under maintenance.

  • openWorkflow will open the exact user chat if the messenger is already open and occupies the top screen.

  • We now prompt a log message when the language of the message sent by the user differs from the language specified in the user's information.

  • Fixed an issue where the message bubbles could not render the messages written in Thai.

  • App Widgets are now supported. You can add these widgets to the Lounge and execute.

  • Supports smooth and fluid animation in the action button for executing commands or WAM controller.

  • When a user is banned while using the SDK, they are now immediately redirected to the block screen instead of remaining on the chat screen.

  • We introduce powerful feature to help your chat: Workflow. Workflow will completely replace support bots.

    • Removed ChannelIO.openSupportBot() in favor of new ChannelIO.openWorkflow().

  • Added new public API: ChannelIO.hidePopup()

  • Fixed the last line of the message bubble was dropped under certain conditions.

  • Profile is not saved when BootConfig is stored locally.

  • Users may execute commands from the chat stream by entering messages starting with '/.'

  • We introduce our new AI assistant: 'ALF.' ALF will recommend a command to a user that best fits the user's message written in natural language.

  • Add cancel button in permission denied dialog.

  • Channel rebranding has been applied.

  • ChannelIO.initialize must be called before using the SDK.

  • The SDK now includes a PrivacyInfo.xcprivacy file to support Privacy manifest.

  • Enhancements have been applied to the internal logic for more smoother chat scrolling.

  • The multiselect form now displays the appropriate format for boolean, list, and list of number types.

  • Holiday settings content display enhanced.

  • Fixed datetime multiselect form content to display the appropriate format.

  • Track marketing message behavior more accurately.

  • The presentation of message has been fixed to be identical between the input box and the actual sent message.

  • Displays error messages with more detailed and user-friendly manner.

  • Attachment file names are no longer displayed in message previews.

  • Users receive a notification when attempting to create a new chat while already engaged in an ongoing one.

  • The welcome chat card now has the option to display or hide manager profile images.

  • Eliminated empty space at the bottom of the popup bubble on iOS 17 devices.

  • Resolved freezing issues in the chat under uncertain conditions.

  • Skeleton loader views are presented before the complete content loads.

  • Improved message previews for the Support bot form.

  • Revised the description regarding consent for receiving ads.

  • Enabled top scroll on double-tap of the bottom tab.

  • Applied highlight color to the bottom tab bar.

  • Added click event for homepage link in settings tab.

  • Fixed the MultiSelect form that didn't allow selections and deselections.

  • Fixed the input bar doesn't return to its original position on a certain conditions.

  • Fixed the layout issue with pop-up marketing.

  • Fixed the layout issue in the chat view that occurs when video thumbnails are present.

  • Fixed the layout update issue with iPad Stage Manager.

  • Improved the Channel button design, and options.

  • Improved pop-up marketing design.

  • Redesigned the lounge. Brand image, and important image sections to be applicable.

  • Made improvements to the overall design.

  • Corresponding to the type list of number.

  • Added the type unknown on the supportBot form.

  • The number of files that can be displayed is increased to ten.

  • Fix the SocketIO / StarScream crash internally.

  • unread property added. Please referring the User page for the details.

  • You can set the appearance of the Channel button icon.

  • Fix the encoding issue when the Kakao sangdamtalk plugin id was Korean.

  • Fix the support bot's truncated text on uncertain conditions.

  • Fixed function name from applyAppearance to setAppearance

  • Applied the device language on setting Accept-Language when the user boots first

  • Fixed localized strings for form submitting

  • Add image supporting formats

  • Fixed the black link button on dark mode

  • Improved in-app push notification behaviors and sounds

  • Support Drag & Drop file uploading

  • Improved version views

  • Fixed some statusbar appearance issues

  • Fixed the video player button color

  • Fixed url encoding bug

  • Fixed bubble y margin crash issue

  • Add Darkmode Theme

  • Removed unnessary photo picker permsssions.

  • Fixed some message layout bug

  • Improved some error types.

  • Add quick summary and quick help on public function.

  • Fixed an issue that caused a crash when rotating the screen.

  • Fixed a bug where the blank area appeared large when supportbot button was pressed.

  • Fixed some lockalized strings.

  • Supported youtube shorts on inapp push, chat stream

  • Fixed a bug where files with Korean names could not be opened sometimes

  • Fixed Datetime request format

  • Fixed Datetime request format

  • Add backdrop blur on InappPopup

  • Removed default value on unsubscribeEamil, unsubscribeText

  • Follow up feature added

  • The design is changed to be more beautiful.

  • Popup position can be changed

  • Support bot enhanced

  • onProfileChanged -> onFollowChanged

  • Fixed watermark loclaized string issue.

  • Support Xcode 13.2

  • Fixed a bug where the window size did not match when the status bar was hidden.

  • Fixed not available version issue with iOS 15 production inpo.plist bug.

  • Fixed lounge chat history cutting on iOS 15 Rc version.

  • Fixed import schema from "ChannelIO" to "ChannelIOFront". Please check migration guide.

  • Fixed message cutting on iOS 15 Rc version.

  • Removed left operation time timezone double converting logic

  • Add left days localized string on operation time

  • Improved Lounge UI/UX

  • Applied new message Input logic

  • Removed 'Show Closed Chat' option

  • Changed 'Remove Chat' user action to 'Leave Chat' user action

  • Changed some behavior of 'OpenChat' API function

  • Make Build framework without 'Exclude Architecture = arm64' option

  • Keep 'Page' when calling shutdown function

  • Add 'Page' concept('url' is deprecated)

  • Fixed some instagram minor bug

  • Fixed some instagram feature bug

  • Add Instagram linking

  • Fixed some layout bug

  • Fixed memory leack bug

  • Add guard code for OS bug where connected window could not be found

  • Fixed hide, show flag bug

  • Add typealias to support host's classes which have same name

  • Fixed some ANTLR Parser bug

  • Add UpdateParamBuilder public init function

  • Add Socket stream carsh defense code

  • Add private file feature

  • Fixed date style on ios 14

  • Fixed profile bot input error crash bug

  • Fixed additional check logic

  • Fixed additional check logic

  • Fixed minimum version check logic

  • Add finding Bundle fail logic(RN issue)

  • Fixed KVO crash issue on IOS 10

  • Fixed to change navigation bar properly(Sometimes it has been changed according to the navigation color settings of the host)

  • Fixed image orientation issue

  • Block duplicated open chat when call openChat function with same id

  • Fixed cell contentView bug with ios 14

  • Fixed not called onUrlClicked when link button clicked

  • Fixed custom schema bug on marketing and OTM click event

  • Block duplicated open chat when call openChat function with same id

  • Add more boot fail status

  • We are applied the new SDK distribution method. Please check this new installation and migration guide.

  • channel-plugin-ios (up to v7.2.6) is now a legacy repo and will be deleted in a year.

  • Remove all ios plugin external library dependencies (no matter what library customers use, they are not restricted by ChannelTalk)

  • Supported Apple's new framework form - xcframework

  • Supported Cocoapod in fat-framework and xcframework methods respectively (module name: ChannelIOSDK, schema: ChannelIO)

  • Supported Carthage (available in binary format)

  • Supproted Swift Package Manager Supports with the swift 5.3

  • BM reorganization applied (white label and plan change, etc.)

  • Applied plug-in term unification and function generalization (you can use sdk more freely)

  • Supproted to connect specific support bot on Marketing, one-time message

  • Fixed button logic properly on messageView

  • Add marketing event(view, click) request validation

  • Add close event when button link clicked on popup

  • Update colors

  • Fixed resource to resource_bundle on podspec file

  • Make webpage thumnail image quality better

  • Fixed some launcher window issue \*Block open pushData when channelId is different from boot channel

  • Fixed push click bug when app terminated

  • Fixed button hidden bug when popup closed

  • Fixed url encoding fail bug

  • Fixed some layout bug

  • Fixed popup click area properly

  • Fixed chat lastmessage to include buttons

  • Add Button Link in in-app-push and message

  • Add boolean and date change UI on user profile type

  • Remove resource bundle on podspec

  • Fixed issue that inappPush face-type not working correctly

  • Fixed permission logic properly

  • Add misssing permission on photo and camera

  • Fixed issue which avatar image was distorted

  • Fixed hide function completion not working when animated option is ture

  • Add existing inappNotification hide logic when showUserChat function called

  • Fixed sdk push click logic because of double boot

  • Add memberHash on boot.

  • Add userUpdate function.

  • Add unsubscribed option on boot, userUpdate, settingView.

  • Fixed issue where support bot first messages containing webpage were not displayed correctly.

  • Fixed support bot change issue when state is unstable

  • Add resoures on podspec because of flutter asset not displaying issue

  • Fixed an issue that always has a click event even if the plugin button is not visible

  • Fixed supprotBot Button on lastline didn't click sometimes issue

  • Fixed pad actionsheet crash issue

  • Fixed token not delete issue

  • Fixed push ack not send issue

  • Fixed in-app-push giant emoji height bug

  • Fixed wrong size when supportbot button has only emoji

  • Fixed logic so that in-app push disappears when Open, OpenChat function is called

  • Update Rx version because of UIWebview deprecated

  • Fixed not showing launcher button on multi window envirnment(with SceneDelegate). Please check '

    ' if you use SceneDelegate.

  • Add some debug log

  • Changed thirdparty library from SVProgressHUD to JGProgressHUD

  • Remove CRToast

  • Fixed some objective-c issue

  • Fixed launcher window cut off issue

  • Fixed private name duplicate issue after xcode 11.4 updating

  • Update some localize string

  • Fixed RN language bug

  • Update Alamofire version 4.9 -> 5.0

  • Added Marketing feature

  • Redesigned in app push notification views

  • Refactored chat view

  • Changed markdown to ANTLR to parse messages

  • Changed file views (image, video)

  • Fixed minor bugs

  • Cleaned up socketio connection properly

  • Restore host window to be key window after insert uiwindow

  • Please check your LauncherConfig if you happen to use it. We updated container view frame position for launcher, so after this updates the launcher's position might not be what you intended

  • Insert UIWindow only if needed (only when launcher is needed to be displayed)

  • Set UIWindow size properly under status bar

  • Removed UIWindow properly

  • Fixed status bar style

  • Fixed Welcome message that was not set properly

  • Fixed attributed welcome message

  • Fixed missing files

  • Changed plugin button and InappNotification present on UIWindow

  • Fixed Badge minus display

  • Fixed wrong user chat cell height calculate

  • Solved conflict with SkeletonView

  • Fixed some broken emoji display

  • Fixed text height calculation for welcome

  • Changed user chat cell height calculation to automatic

  • Changed minimum os version to 10

  • Updated depandencies versions for swift 5 (Reusable, SnapKit, SwiftyJSON, ObjectMapper, NVActivityIndicatorView, PhoneNumberKit)

  • Fixed becoming online bug when app is not running

  • Fixed new banner logic

  • Added missing video type

  • Fixed iOS 13 layout (Dicarded some UIScreen.main usage due to changing default present style)

  • Removed M13ProgressView

  • Added deleted message cell

  • Updates dependencies

  • Fixed presentation style for image viewer

  • Fixed dark mode issue

  • Disabled darkmode temporary

  • Updated dependencies version

  • Fixed proj file linking problem

  • Improved view transition

  • Fixed SupportBot sync issue

  • Fixed Lounge additional chat count

  • Wrapped track: into main thread

  • Updated marketing version

  • Fixed navigation coloring issue

  • Handled swipe to dismiss for iOS 13

  • Fixed iOS 13 crash issue due to private layout change access denied

  • Removed image asset forced unwrapping

  • Added missing nudge keep API

  • Changed some user chats' state

  • Hided delete message from chat

  • Added line integration

  • Updated InApp Push Notification view layout

  • Excluded UIAlertController from topController

  • Updated SDWebImage framework

  • Removed FLAnimatedImage framework

  • Removed CHNavBar framework

  • Removed unnecessary public keyword

  • Introduced lounge view

  • Added onChnageProfile delegate method

  • Applied operation time in real-time

  • Improved test cases

  • Detached TLPhotoPicker from project (added to podspec and cartfile) - Don't forget to add this to your linked frameworks if you use Carthage)

  • Cocopaods bundle resource

  • Removed unecessory public classes

  • Fixed missing file caused build failure

  • Swift 5

  • Set minimum required version from ios 9.0 to 9.1

  • Replaced photo picker framework (Removed DKImagePickerController, DKCamera, CropViewController, DKGallery)

  • Replaced photo viewer (Removed Lightbox, submodule Imaginary, Cache)

  • Updated default launcher icon and rebranding

  • Added initPushToken: String for react native

  • Renamed willOpenMessenger and willCloseMessenger to willShowMessenger and willHideMessenger

  • Displayed launcher on proper top controller view

  • Fixed retry loader to dismiss properly

  • Optimized close: to handle edge cases

  • Support bot will not be working below 5.3

  • Updated support bot api and flows

  • Added APIs retry logics

  • Added RxSwiftExt framework

  • Removed test related frameworks from project due to carthage build error

  • Fixed actionsheet issue for ipad

  • Fixed country code parsing

  • Updated pushbot flow logics

  • Added pushbot button and image redirection

  • Added keep push bot button

  • Updated event api

  • Removed target evaluation logic

  • Fixed int overflow issue for requestId

  • Adjusted navigation margin

  • Fixed onReceivePush call multiple times

  • Fixed to apply locale setting properly

  • Refactored chat notification view reusability

  • Displayed status bar properly and fixed freezing on chat view

  • Hided in-app push notification after handled redirect url

  • Updated dependencies and structures to work with Carthage properly

  • Added canShowLauncher for custom launcher

  • Displayed button and input visibility properly based on channel settings

  • Fixed missing localizations

  • Added Push bot feature

  • swift 4.2 migration

  • Set closed user chat visibility to true by default

  • Added unit tests for push bot evaluation

  • Improved data flow consistency

  • Refactored model and related methods

  • Unwrapped Any type properly with reflection

  • Fixed message with image cell layout

  • Fixed requestId to query params

  • Fixed support bot close action

  • Improved string tag parsing

  • Added Support bot feature

  • Updated and synced localization

  • Fixed to apply alert count properly

  • Fixed push notification handling edge cases

  • Removed and merged frameworks (Manuallayout, CGFlaotLiteral, Then, HexColors)

  • Fixed actionable message when context type is other than just text

  • Updated models to make compatible with react native

  • Fixed in-app push notification leak

  • Fixed navigation item layout for iOS 9

  • react-native support with carthage

  • Fixed carthage installation issue

  • Fixed dependencies version

  • Fixed to set locale properly

  • Fixed onChangeBadge didn't get called properly

  • Fixed profile fields sync

  • Ensured all UI updates on main thread

  • Fixed launcher button inconsistently appears on random position

  • Fixed possible force unwrapped crash in message model

  • Refactored channel properties

  • Fixed unable to boot for startup

  • Fixed boot params

  • boot: will not show launcher automatically

  • show: and hide: is visibility control property for launcher and it appears globally over application

  • Changed image viewer framework

  • Displayed watermark for startup

  • Updated Cartfile

  • Fixed unintentionally delete cookie

  • Remove warnings

  • Fixed email link behavior

  • ChannelPluginSetting's hideDefaultLauncher property has been deprecated

  • Users now will be asked to close chat

  • Web link will be opened in application instead default browser

  • Updated internal APIs related to session and read

  • Cleared all data properly on shutdown

  • Cached country data locally

  • Fixed crash caused by string forced unwrapping

  • Removed install objc header option from build option

  • Handled phone number in text

  • Supported settings' legacy keys

  • Removed AdSupport

  • Fixed condition to handle link for delegate

  • Updated in-app push notification design

  • Refactored push and guest update logics

  • Showed closed user chats by default

  • Fixed blocked user UX

  • Fixed settings unarchived error

  • Added message translation

  • Fixed GIF display on chat

  • Refactored launcher view logics

  • Added default launcher position config in ChannelPluginSettings

  • Fixed message sync when plugin launched from push notification

  • Enlarged emoji if text contains only emoji

  • Added view parameter for show:

  • Return proper value for onClickChatLink

  • Added actionable message type

  • Handled long press on link

  • In-app push vibration when a phone is on silent

  • Improved camera feature

  • Updated in-app push notification view layout

  • Fixed bubble text line height calculation

  • Fixed a crash when app was launched by push notification

  • Fixed opening new chat logic

  • Fixed a bug that messages were not sync when app became active

  • Fixed message bubble UI issue

  • Removed UINavigationItem+Margin due to iOS 11 bug

  • Fixed NavigationItem margin properly

  • Fixed emoji regex

  • Added completion callback parameter in close: method

  • Added animated parameter in openChat:

  • Updated Guest property to immutable

  • Fixed edge cases in message formating

  • Added Guest as parameter in boot completion block

  • Fixed default launcher button visibility

  • Renamed Guest to Profile

  • Changed locale field type from String to Enum

  • Changed userId location from Profile to ChannelPluginSettings

  • Added ProfileBot feature

  • Updated default launcher visibility condition

  • Fixed unexpected behavior when homepage and/or phoneNumber is missing in ProfileView

  • Fixed scrollView behavior when input field is selected

  • Resolved carthage dependencies conflicts

  • SocketIO version to 13.x

  • Removed UIColor-hex-swift and added HexColors

  • Fixed right button that was not able to click after chat was completed

  • Registered push token properly

  • Removed colon escape from message

  • Fixed to boot / shutdown properly

  • Renamed default event name CheckIn to Boot

  • Added default event ChannelOpen

  • Renamed framework and class name from CHPlugin to ChannelIO

  • Removed ChannelPlugin public properties debugMode, hideLauncherButton, enabledTrackDefaultEvent and showInAppPush (these properties moved into ChannelPluginSettings)

  • Removed initialize: and checkIn method and added boot:

  • Renamed checkOut to shutdown

  • Renamed register: to initPushToken:

  • Renamed show: and hide: to open: and close: respectively

  • Renamed showLauncher: and hideLauncher: to show: and hide: respectively

  • Renamed showChat: to openChat:

  • Renamed track: parameter names to eventName and eventProperty

  • Renamed ChannelCheckinCompletionStatus to ChannelPluginCompletionStatus

  • Renamed CheckIn to Guest

  • Introduced ChannelPluginSettings class for ChannelIO configuration

  • Added locale option in ChannelPluginSettings

  • Added locale option view in profile view

  • Introduced message formatting (i.e. \*something\* for italic and \*\*more\*\* for bold)

  • Upload video is available

  • Refactored message cell structures

  • Renamed ChannelUserChat to PushEvent

  • Updated Channel model

  • Updated showChat: to show new chat if chat id is nil

  • Allowed trial channel to pass checkin validation

  • Improved error logs

  • Removed CHPhotoBrowser specific version from dependency

  • In-app push notification customization available.

  • Added didReceivePush: showChat: methods and a class that contains necessary properties to display push view

  • Refactor some of chat logics

  • Fixed retain cycle

  • Displayed bot avatar and name on in-app push notification

  • Show Launcher properly

  • Fixed incorrect timestamp

  • Synced launcher visibility based on channel settings

  • Removed SwiftDate framework

  • Added watermark

  • Fixed launcher button layout for iPhone X

  • Redesigned UserChat UI/UX

  • Fixed minor bugs

  • Fixed file upload logic (GIF)

  • Updated new message view

  • Fixed country code json format

  • Fixed potential memory leak

  • Added live typing indicator

  • Raised min os version to 9.0

  • Fixed scopes for objective-c

  • Fixed symbol error for iOS 8

  • Added willShow/willHideChatList delegate methods

  • SwiftyJSON 4.0 migration

  • Rolled back to deployment target 8.0

  • Dwifft to CHDwifft (forceRemoveAnimation)

  • iPhone X layout supports

  • Fixed animation issue

  • Detached all in-project dependecies

  • Swift 4 migration

  • Refactored code style

  • Added API Error convention

  • Added shouldHandleChatLink: delegate method

  • Increased deployment target to 9.0

  • Fixed channel open properly after duplicated checkin

  • Fixed minor bugs

  • PhoneNumberKit to 2.0 (Swift 4.0)

  • Fixed minor bugs

  • Downgraded PhoneNumberKit to 1.4 (compatibility issue)

  • iOS 11 migration

  • Changed name trackCheckIn -> enabledTrackDefaultEvent

  • enabled bitcode feature

  • Renamed some properties and methods

  • Introduced new method track to send event to channel

  • Fixed minor bugs

  • Fixed message height calculation

  • Updated socket io v2

  • Added StarstreamSocketIO framework to support socket v2

  • If incoming push is same chat as current chat, It won't push new chat but update

  • Removed unused 'isVisible' property

  • Fixed html unescaped for welcome message

  • Fixed link color

  • Fixed off by one error for new message label

  • Fixed badge count issues when launched app with push notification

  • Fixed name/phone number dialog layout and localizations

  • Fixed background layout for phone number picker view

  • Fixed font size for in-app chat notification

  • Updated UIState in redux correctly

  • Reversed photo indexes

  • Fixed duplicate show: method

  • Added in-app push notification sound

  • Added sound option

  • Saved closed user chat option state

  • Fixed minor bugs

  • Fixed deleted user chats handling

  • Fixed avatar background color issue

  • Added sound for in app push notification

  • Added clear button in user info editing field

  • Updated new chat banner UI

  • Fixed layout bugs

  • Veil can now update name/phone number

  • Introduced review process after finish conversation

  • Fixed UI / layout issues

  • Validated when show(:) method is called

  • Displayed new messages in user chat view properly

  • Fixed credential errors when app become active

  • Adjusted redux states

  • Fixed user default key conflict

  • Fixed launcher display bug

  • Redesinged profile view (top left of chat list)

  • Added Error toast

  • Changed launcher icon

  • Optimized socket connectivity

  • Updated badge count properly when app become active from background

  • Fixed session sync when app launched by clicking push notification

  • Migrated to Swift 3.1

  • WebSocket connect/disconnect when app state changes

  • Fixed minor bugs

  • Improved socket connectivity

  • first beta release