Giter VIP home page Giter VIP logo

engage-digital-messaging-ios's Introduction

engage-digital-messaging-ios's People

Contributors

cylix avatar drisstm avatar nel avatar oleganza avatar waelba avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

engage-digital-messaging-ios's Issues

probleme de textField avec Menu

Bonjour,

Y a une anomalie, c'est que le clavier de Dimelo ne se cache pas lorsque j'ouvre un Menu. Je vous communique ci-joint 2 screen shot afin de comprendre la problématique. Cette anomalie est trés genante surtout lorsque le clavier est ouvert.

Je compte sur votre réactivité habituelle.

Bien cordialement,
Ines,
img_0954
img_0955

Black background when opening the Dimelo view after receiving a notification

When the app is running in foreground and I open the Dimelo view, the UI of the Dimelo view is correct:

Dimelo.sharedInstance().displayChatView()
   func dimeloDisplayChatViewController(_ dimelo: Dimelo!) {
        if let dimeloVC = dimelo.chatViewController() {
            dimeloVC.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(closeChat))
            dimeloVC.navigationItem.rightBarButtonItem?.tintColor = UIColor.black
            AppDelegate.shared.window?.rootViewController?.present(dimeloVC, animated: true, completion: nil)
        }
    }

However when I display the Dimelo view from the didReceiveNotification callback, the background of the view is black, as in the attached screenshot

bugui

Quand on utilise Microsoft AzME dans la même application que Dimelo, on ne reçoit plus les notifications de Dimelo

SI je désactive l'utilisation d'AzME dans mon application, les notifications de Dimelo fonctionnent convenablement. En revanche, si je laisse AzME activé, les notifications d'AzME fonctionnement convenablement et j'ai des dysfonctionnements avec les notifications de Dimelo.

Voilà ce que j'observe :

  • Si on utilise iOS 9 (mais pas iOS 10) ou qu’on désactive complètement AzME, les notifications Dimelo fonctionnent que l’on soit dans l’application ou hors de l’application.
  • Si on utilise iOS 10 et qu’on laisse AzME activé : Les notifications quand on n’est pas dans l’application (qu’elle soit lancée en tâche de fond ou non) sont bien reçues. Lorsqu’on clique dessus, l’application s’ouvre mais on n’est pas capable d’afficher la page Dimelo car la méthode déléguée application(_:didReceiveRemoteNotification:fetchCompletionHandler:) n'est plus appelée. Les notifications quand on est dans l’application (mais pas sur l’écran Dimelo auquel cas il n’y a pas de notifications) ne sont pas reçues.

Push notifications unexpected behaviour

Hello!

We encountered such unexpected behaviour. If we register to Dimelo from two different devices, push notifications is pushed to only last of them (device which was second registered to Dimelo).

Thanks.

DimeloChatInputAccessoryView not completely visible

Hi,

I am trying to add the dimelo SDK on my iOS app but I have a problem with the input bar not being completely visible as you can see on this screenshot.
image

I have this problem on every simulator I tried (from 4s to 6s plus) and with iOS 8 and 9.
I tried the dimelo sample app and it works so I think it may have something to do with the fact that I had to upgrade the deployment target from 6.1 to 8.0 when I added the dimelo SDK.
Although I saw in the DimeloChatInputAccessory.xib that there is a constraint on Toolbar.Bottom set to -32 maybe this has something to do with my problem ?
The rest of my application is working fine.

Thanks

M1 Simulator support

Hello!

The library doesn't support an ARM simulator. When I build my project I got

ld: building for iOS Simulator, but linking in dylib built for iOS, file '<dir>/Pods/Dimelo-iOS/Dimelo.framework/Dimelo' for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

You should use XCFramework instead of fat binary distribution, as Apple doesn't support it anymore.

Dimelo-iOS-SampleApp - message unsent

Hi,

I tried to run the Dimelo-IOS-SampleApp, following the documentation instructions I have updated the apiSecret value from DimeloConfig.plist.

But when I run the project (both with the simulator or the device) I'm getting an unsent status upon the bubble message.

I also see logs into xcode, I think I'm missing something about the domain maybe ? because it call https://localhost/api/1.0/status and https://localhost/api/1.0/register and fails. I tried to change it with XXX.dimelo.com admin console without success.

2017-01-17 17:32:30.692 Dimelo CocoaPods Sample[36003:1118584] error while updating unreadCount : Error Domain=NSURLErrorDomain Code=-1004 "Could not connect to the server." UserInfo={NSUnderlyingError=0x60800005dfd0 {Error Domain=kCFErrorDomainCFNetwork Code=-1004 "(null)" UserInfo={_kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}}, NSErrorFailingURLStringKey=https://localhost/api/1.0/status, NSErrorFailingURLKey=https://localhost/api/1.0/status, _kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=61, NSLocalizedDescription=Could not connect to the server.}
2017-01-17 17:32:35.700 Dimelo CocoaPods Sample[36003:1118584] error while updating unreadCount : Error Domain=NSURLErrorDomain Code=-1004 "Could not connect to the server." UserInfo={NSUnderlyingError=0x60800005b630 {Error Domain=kCFErrorDomainCFNetwork Code=-1004 "(null)" UserInfo={_kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}}, NSErrorFailingURLStringKey=https://localhost/api/1.0/register, NSErrorFailingURLKey=https://localhost/api/1.0/register, _kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=61, NSLocalizedDescription=Could not connect to the server.}
2017-01-17 17:32:40.776 Dimelo CocoaPods Sample[36003:1118584] error while updating unreadCount : Error Domain=NSURLErrorDomain Code=-1004 "Could not connect to the server." UserInfo={NSUnderlyingError=0x60000005a9d0 {Error Domain=kCFErrorDomainCFNetwork Code=-1004 "(null)" UserInfo={_kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}}, NSErrorFailingURLStringKey=https://localhost/api/1.0/register, NSErrorFailingURLKey=https://localhost/api/1.0/register, _kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=61, NSLocalizedDescription=Could not connect to the server.}

Do you have any suggestions ?

Thanks.

Colors options in Plist configuration not working

Dimelo ios is installed with CocoaPods

When configuring a DimeloConfig.plist, some options are not set properly.

userMessageBackgroundColor, userMessageTextColor, agentNameColor, ...

It seems to only concerns colors parameters that are already set in the framework config.

There are not problems with other settings ( Font size) or colors settings as long as they are empty in the base config.

Crash sur réception d'une notification

Bonjour,

J'utilise Dimelo-iOS 1.7.6 et j'ai des remontées de crash de l'App Store qui pointent la méthode [Dimelo consumeReceivedRemoteNotification:].
Les crashs se produisent sur iOS 10 et iOS 11. Je n'ai pas réussi à reproduire le crash de mon coté en ouvrant des notifications Dimelo.

Voici les infos sur le crash dont je dispose :

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Triggered by Thread:  0

Last Exception Backtrace:
0   CoreFoundation                	0x1851e2d8c __exceptionPreprocess + 228 (NSException.m:166)
1   libobjc.A.dylib               	0x18439c5ec objc_exception_throw + 56 (objc-exception.mm:521)
2   CoreFoundation                	0x1851f0098 -[NSObject(NSObject) doesNotRecognizeSelector:] + 140 (NSObject.m:322)
3   CoreFoundation                	0x1851e85c8 ___forwarding___ + 1380 (NSForwarding.m:3220)
4   CoreFoundation                	0x1850ce41c _CF_forwarding_prep_0 + 92
5   MonApplication                  	0x1031b447c -[Dimelo consumeReceivedRemoteNotification:] + 612
6   MonApplication                  	0x1030161b8 AppDelegate.handleClickOnNotification(_:withCompletionHandler:) + 3140 (AppDelegate.swift:795)

Est-ce que c'est un problème dont vous avez connaissance ? Peut-être cela est-il déjà corrigé dans les versions plus récente du SDK ?

Impossible de faire fonctionner Dimelo en plaçant Dimelo.framework ailleurs que dans le Bundle.main

Afin de faciliter l'intégration de Dimelo dans plusieurs applications, j'ai placé Dimelo.framework dans un pod à moi, qui est inclus dans mes applications. En faisant ainsi, la fenêtre de chat fonctionne, les assets graphiques sont bien affichés... mais les notifications ne fonctionnent plus. Pour que ça fonctionne, je suis obligé de placer Dimelo.framework directement dans le Bundle.main de chacune de mes applications, ce qui complique sérieusement leur maintenance.

When clicking on attachment icon nothing is happening

When I am clicking on attachment icon no action sheet or other option is opening, also after some bottom portion of char screen is black and after closing the view and when I am reopening it the bottom input bar is invisible

Linking fails on build for Simulator

After update to v.1.8.0 linking fails with message:

ld: warning: ignoring file projectpath/Pods/Dimelo-iOS/Dimelo.framework/Dimelo
Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_Dimelo", referenced from:
      l_protocol_conformances in Dimelo+ContactChatServiceProtocol.o
      objc-class-ref in DimeloChatService.o
      objc-class-ref in ContactChatViewController.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Crash when click on "OK" button to close the chat view controller

Hello,

When I click on "OK" button to dismiss the chat view controller (from a push notification or by presenting manually) using dimelo.displayChatView() without setting the dimelo.delegate (delegate is nil) my app crashes.

I'm using the last version: 1.9.1

Blocage de l'interface dimelo

Bonjour Wael,

Au fait, je viens de voir un comportement bizarre de dimelo: C'est que le fait de faire un va et vient entre l'interface dimelo et autre interface de l'application et tout va bien. et par la suite d'un coup, l'inteface de dimelo se bloque (reste bloqué) du coup je ne peux pas revenir vers arriere ni rien faire!

didReceiveRemoteNotification not called

i send notification i receive it on the phone no problem

now i want to customise image title ...

the problem is this function on delegate was never called didReceiveRemoteNotification

On appDelegate didFinishLaunchingWithOptions :

            // Dimelo: Push Notif and Badge
    dimelo?.updateAppBadgeNumber = true
    dimelo?.developmentAPNS = true
    dimelo?.initialize(withApiSecret: BuildConfig.GetInstance().getDimeloApiSecret(), domainName: BuildConfig.GetInstance().getDimeloDomainName(), delegate: self)



     func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
    // Register the device token.
    Dimelo.sharedInstance().deviceToken = deviceToken
}

func dimeloDidBeginNetworkActivity(_ dimelo: Dimelo?) {
    UIApplication.shared.isNetworkActivityIndicatorVisible = true
}

func dimeloDidEndNetworkActivity(_ dimelo: Dimelo?) {
    UIApplication.shared.isNetworkActivityIndicatorVisible = false
}

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
    dimelo?.consumeReceivedRemoteNotification(userInfo)
}

I already activate remote notification on baclground mode

but the function didReceiveRemoteNotification was never called :(

Dimelo crash on iOS 10 and below

Hello!

We have a crash related to using -[UIWindow safeAreaInsets] method which don't exist on iOS 10 and below. This bug seems appeared in 1.7.6 version of Dimelo.

It is crash repost from Crashlytics:

Fatal Exception: NSInvalidArgumentException
-[UIWindow safeAreaInsets]: unrecognized selector sent to instance 0x155e283d0
Fatal Exception: NSInvalidArgumentException
0  CoreFoundation                 0x18784afe0 __exceptionPreprocess
1  libobjc.A.dylib                0x1862ac538 objc_exception_throw
2  CoreFoundation                 0x187851ef4 __methodDescriptionForSelector
3  CoreFoundation                 0x18784ef54 ___forwarding___
4  CoreFoundation                 0x18774ad4c _CF_forwarding_prep_0
5  RechargesProj                  0x1005352a8 -[DimeloChatNotificationWindow layoutContainerForOrientation:]
6  RechargesProj                  0x100535610 -[DimeloChatNotificationWindow presentView:]
7  RechargesProj                  0x100535e0c -[DimeloChatNotificationWindow presentMessage:apiInstance:]
8  RechargesProj                  0x1005064dc -[Dimelo consumeReceivedRemoteNotification:]
9  RechargesProj                  0x1001e7b24 specialized DimeloChatService.loadRemoteNotificationPayload([AnyHashable : Any]) -> Bool (DimeloChatService.swift:155)
10 RechargesProj                  0x1001e20b4 DimeloChatServiceRechargesProjChatService (DimeloChatService.swift)
11 RechargesProj                  0x100440ffc specialized specialized AppDelegate.userNotificationCenter(UNUserNotificationCenter, willPresent : UNNotification, withCompletionHandler : (UNNotificationPresentationOptions) -> ()) -> () (AppDelegate.swift:252)
12 RechargesProj                  0x10043daa0 @objc AppDelegate.userNotificationCenter(UNUserNotificationCenter, willPresent : UNNotification, withCompletionHandler : (UNNotificationPresentationOptions) -> ()) -> ()
13 UIKit                          0x18dc0fa00 -[UIApplication _handleNonLaunchSpecificActions:forScene:withTransitionContext:completion:]
14 UIKit                          0x18dbfd90c -[UIApplication workspace:didReceiveActions:]
15 FrontBoardServices             0x1893f4884 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__
16 FrontBoardServices             0x1893f46f0 -[FBSSerialQueue _performNext]
17 FrontBoardServices             0x1893f4aa0 -[FBSSerialQueue _performNextFromRunLoopSource]
18 CoreFoundation                 0x1877f942c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
19 CoreFoundation                 0x1877f8d9c __CFRunLoopDoSources0
20 CoreFoundation                 0x1877f69a8 __CFRunLoopRun
21 CoreFoundation                 0x187726da4 CFRunLoopRunSpecific
22 GraphicsServices               0x189191074 GSEventRunModal
23 UIKit                          0x18d9e1c9c UIApplicationMain
24 RechargesProj                  0x100040340 main (RechargeMapFavouritesListCellViewModel.swift:16)
25 libdyld.dylib                  0x18673559c start

Thanks.

Changer "send" par "envoyer"

Bonjour,

Je veux changer le button "send" du clavier par "envoyer".

Merci pour votre réactivité surtout pour @waelbenabdallah

[Ios][Flutter] - Chat not displaying

I'm developing a flutter plugin for Dimelo SDK for our application, I used to get ViewController from dimelo with bellow code and display the cat without Navigationbar but in my plugin the chat is not displying. If I do not disable the Navigationbar , in the plugin only the NavBar view displays, it's like if the chat view is not loading propertly.

 func view() -> UIView {
        let dimelo: Dimelo = Dimelo.sharedInstance()
        dimelo.enableThreads = false
        dimelo.embeddedAsFragment = false
        let navController = dimelo.chatViewController()! as! UINavigationController
        navController.setNavigationBarHidden(false, animated: false)
        let chatView = navController.view!
        chatView.backgroundColor = UIColor.cyan
        return chatView
    }

with_nav_bar
without_navbar

Note that calling dimelo.displayChatView() displays well the chat in a modal view.

Scroll not updated when textfield touched

Hi,

We display the chat view in SwiftUI sheet, we have several issues
1- When we touch the textfield, the keyboard appear and hide the last messages
2- When we scroll in the view with the keyboard open, we have a big padding which seems to be the size of the keyboard
You can visualize the issues in the video.
https://github.com/ringcentral/engage-digital-messaging-ios/assets/13999022/fa19732b-5757-4b00-af38-e2b5d0fd66b1

We reproduced issues on this configuration :
Device: iPhone 15 Pro, iPhone 14 Pro ...
iOS: 17.0 and 16.0
SDK: Dimelo-iOS v2.6.2 and 2.6.3

We appreciate any help
Thanks

EXC_BAD_ACCESS KERN_INVALID_ADDRESS

Hello,

We have got some crash when the Dimelo Bot answer to the user.
It seems that the error pop from [DimeloChatViewController viewWillDisappear:]

Here is the Crashlytics report:

EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000004800000038
 OS Version: 10.3.2 (14F89)
# Device: iPad Air
# RAM Free: 3%
# Disk Free: 16.2%

#0. Crashed: com.apple.main-thread
0  libobjc.A.dylib                0x1851ec15c objc_msgSend + 28
1  mgendimelo                     0x1000ad028 -[DimeloChatViewController viewWillDisappear:] + 4296085544
2  UIKit                          0x18c8b8d34 -[UIViewController _setViewAppearState:isAnimating:] + 952
3  UIKit                          0x18c92ba78 -[UIViewController __viewWillDisappear:] + 100
4  UIKit                          0x18c91c5e4 -[UIViewController viewWillMoveToWindow:] + 484
5  UIKit                          0x18c89babc -[UIView(Hierarchy) _willMoveToWindow:] + 460
6  UIKit                          0x18c89c128 __85-[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:]_block_invoke + 88
7  UIKit                          0x18c89c00c -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 448
8  UIKit                          0x18c89c144 __85-[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:]_block_invoke + 116
9  UIKit                          0x18c89c00c -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 448
10 UIKit                          0x18c89c144 __85-[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:]_block_invoke + 116
11 UIKit                          0x18c89c00c -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 448
12 UIKit                          0x18c89c144 __85-[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:]_block_invoke + 116
13 UIKit                          0x18c89c00c -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 448
14 UIKit                          0x18c89c144 __85-[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:]_block_invoke + 116
15 UIKit                          0x18c89c00c -[UIView(Hierarchy) _makeSubtreePerformSelector:withObject:withObject:copySublayers:] + 448
16 UIKit                          0x18cb9607c __UIViewWillBeRemovedFromSuperview + 552
17 UIKit                          0x18c89b654 -[UIView(Hierarchy) removeFromSuperview] + 100
18 UIKit                          0x18c96f3c0 -[UINavigationTransitionView _cleanupTransition] + 708
19 UIKit                          0x18c8d941c -[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 312
20 UIKit                          0x18c8d75c8 +[UIViewAnimationState popAnimationState] + 320
21 UIKit                          0x18c962b98 -[UINavigationTransitionView transition:fromView:toView:] + 1860
22 UIKit                          0x18c958b20 -[UINavigationController _startTransition:fromViewController:toViewController:] + 2488
23 UIKit                          0x18c957c2c -[UINavigationController _startDeferredTransitionIfNeeded:] + 856
24 UIKit                          0x18c9577e0 -[UINavigationController __viewWillLayoutSubviews] + 64
25 UIKit                          0x18c957744 -[UILayoutContainerView layoutSubviews] + 188
26 UIKit                          0x18c89e07c -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1200
27 QuartzCore                     0x189a8e274 -[CALayer layoutSublayers] + 148
28 QuartzCore                     0x189a82de8 CA::Layer::layout_if_needed(CA::Transaction*) + 292
29 QuartzCore                     0x189a82ca8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32
30 QuartzCore                     0x1899fe34c CA::Context::commit_transaction(CA::Transaction*) + 252
31 QuartzCore                     0x189a253ac CA::Transaction::commit() + 504
32 QuartzCore                     0x189a25e78 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 120
33 CoreFoundation                 0x1867249a8 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
34 CoreFoundation                 0x186722630 __CFRunLoopDoObservers + 372
35 CoreFoundation                 0x186722a7c __CFRunLoopRun + 956
36 CoreFoundation                 0x186652da4 CFRunLoopRunSpecific + 424
37 GraphicsServices               0x1880bc074 GSEventRunModal + 100
38 UIKit                          0x18c906058 UIApplicationMain + 208
39 mgendimelo                     0x10004c660 main (AppDelegate.swift:16)
40 libdyld.dylib                  0x18566159c start + 4

We use the last version of the SDK.

Can you help us?

Thanks.

Open Chat Window when clicking on notification

Hello, when letting the SDK manage the notification, when user click on a push notification, the app is opened but the user isn't redirected automatically to the dimelo page. Since it's the sdk that manage the push notification how can we set a deeplink (or similar) to open the dimelo chat window ?

back button is not visible

I integrate sdk 1.9.5 but when i show viewcontroller Dimelo i don't have back button here is a screen witch show what i m having

to show Dimelo Chat i'm doing something like that :

  static func showDimeloChat(containerView: UIView) {
    let appDelegate = UIApplication.shared.delegate as? AppDelegate
    if let dimelo = appDelegate?.dimelo {
        if let vc = dimelo.chatViewController() {
            containerView.addSubview(vc.view)
        }
    }
  }

Capture d'écran 2020-06-14 21 39 58

Chatbot LCL - IOS - Disparition du champ de saisie de la fenêtre de Chat

Après l'ouverture de la fenêtre de Chat, si je bascule sur une autre appli comme, par exemple, mon agenda pour vérifier mes dispos, si cela prend un peu de temps (environ 1 min) alors lorsque je reviens sur l'application LCL mes comptes, je n'ai plus le champ de saisie pour discuter avec le Chatbot.

Après plusieurs essais, j'ai vu qu'en appuyant longuement sur une bulle existante, le champ de saisie réapparaît, cela ne me semble pas du tout intuitif.

Est-ce quelque chose qui est paramétrable pour que, par exemple, lorsque l’on ‘’clique’’ n’importe où dans l’écran, le champ de saisie réapparaisse ?

Je suis sur un Iphone 6 IOS11.

Merci pour votre aide.

Provide a way for Swift to set sharedInstance

In Objective-C, we can do the following:

Dimelo* dimelo = [[Dimelo sharedInstance] initWithApiSecret:@"secret api key" hostname:@"api.example.com" delegate:self];

In Swift, I tried

let dimelo = Dimelo.sharedInstance()
dimelo = Dimelo(apiSecret: 'secret api key', domainName: 'api.example.com', delegate: self)

But it didn't work. Because the second statement doesn't update the sharedInstance at all.

How about we provide a method to explicitly set sharedInstance? Like this:

let dimelo = Dimelo(apiSecret: 'secret api key', domainName: 'api.example.com', delegate: self)
Dimelo.setSharedInstance(dimelo)

Otherwise I really have no idea how to make sharedInstance work in Swift. Let me know if there are some Swift syntax tricks that I am not aware of. Thanks.

Could not use Dimelo 1.7.3 on simulator

Hello,

When trying to link with Dimelo.framework 1.7.3, I get the following error:

ld: warning: ignoring file .../Dimelo.framework/Dimelo, file was built for arm64 which is not the architecture being linked (x86_64): .../Dimelo.framework/Dimelo
Undefined symbols for architecture x86_64:a
  "_OBJC_CLASS_$_Dimelo", referenced from:
      objc-class-ref in DimeloFeature.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

It was OK with 1.7.1 and 1.7.2.

Je reçois Dimelo même avec des autres notifications hors messagerie

Bonjour,
j'ai fait une mise à ajour a la version 1.9.5 et j'ai changé mon code vers :

dimelo = Dimelo.sharedInstance()
dimelo.initialize(withApiSecret: apiSecret, domainName: "mondomaine", delegate: dimeloDelegate)

et avec la 1.9.2 étais bien marcher :

dimelo = Dimelo(apiSecret: apiSecret, domainName: "mondomaine", delegate: dimeloDelegate)

Pourquoi il affiche dimelo tout le temps meme si une notification hors messagerie ?

The placeholder in the text field is truncated

Hello,

As you can see on screenshoot the placeholder is truncated when we open the chat.

Config:
iPhone 14 Pro
iOS 17.1.1
SDK: Dimelo-iOS v2.4.3

IMG_3316 - Moyenne

Thanks for all the help on the subject

Crash when click on "Add attachment" button

Hello,

I have integrated Dimelo 1.5.0 library in a Swift project.
Everything is working fine but when I click on "Add Attachment" button from the Dimelo chat view, the app crashes. I have no information from the debugger that could help me finding the cause.

Regards

Je ne reçois pas les notifications

Bonjour,

Je viens d'implementer Dimelo mais je ne reçois pas la notification de message. Voici mon code que j'ai implémenté (en swift).
Est ce que ca peut etre a cause de P8 communiqué? est ce qu'il faut fournir un P8 pour PROD et un P8 pour DEV?

// DimeloDelegate
func dimeloDisplayChatViewController(_ dimelo: Dimelo!) {
    
    let vc: UIViewController? = Dimelo.sharedInstance().chatViewController()
    vc?.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(self.closeChat))
    if UIDevice.current.userInterfaceIdiom == .pad {
        vc?.modalPresentationStyle = .formSheet
    }
    vc?.modalPresentationStyle = .overCurrentContext
    self.present(vc!, animated: true, completion: {() -> Void in
    })
    
}

@IBAction func closeChat(_ sender: Any) {
    self.dismiss(animated: true, completion: {() -> Void in
    })
}
func setupDimelo() {
    dimelo = Dimelo.sharedInstance().copy() as? Dimelo
    dimelo?.delegate = self
    dimelo?.developmentAPNS = true
    dimelo?.updateAppBadgeNumber = true
    dimelo?.interactiveNotification = true
    dimelo?.noteUnreadCountDidChange()
    dimelo?.title = " "
    
    
    
    let dimeloViewController = dimelo!.chatViewController
    
    dimeloViewController().navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(self.closeChat))
    addChildViewController(dimeloViewController())
    dimeloViewController().view.frame = CGRect.init(origin: view.frame.origin, size: view.frame.size)
    view.addSubview(dimeloViewController().view)
    
    dimeloViewController().didMove(toParentViewController: self)
}

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
    // Register the device token.
    Dimelo.sharedInstance().deviceToken = deviceToken
}

func dimeloDidBeginNetworkActivity(_ dimelo: Dimelo?) {
    UIApplication.shared.isNetworkActivityIndicatorVisible = true
}

func dimeloDidEndNetworkActivity(_ dimelo: Dimelo?) {
    UIApplication.shared.isNetworkActivityIndicatorVisible = false
}

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any]) {
    //! If notification is from Dimelo, you don't have to handle anything
    if Dimelo.sharedInstance().consumeReceivedRemoteNotification(userInfo) {
        return
    }
}
func application(_ application: UIApplication, didReceive notification: UILocalNotification) {
    //! We simulate remote notification by putting its payload into a local notification.
    if Dimelo.sharedInstance().consumeReceivedRemoteNotification(notification.userInfo) {
        return
    }
        //! You app's handling of this notification.
}

func application(_ application: UIApplication, handleActionWithIdentifier identifier: String?, forRemoteNotification userInfo: [AnyHashable : Any], withResponseInfo responseInfo: [AnyHashable : Any], completionHandler: @escaping () -> Void) {
        Dimelo.sharedInstance().handleRemoteNotification(withIdentifier: identifier, responseInfo: responseInfo)
        if completionHandler != nil {
            completionHandler()
        }
    //! Otherwise, here you app's handling of this notification.
    }

func updateBadge(withUnreadCount count: Int) {
    tabChatVC?.tabBarItem.badgeValue = count > 0 ? "\(count)" : nil
}

func updateUnreadCount() {
unreadUpdateTimer?.invalidate()
Dimelo.sharedInstance().fetchUnreadCount(completionHandler: {(_ unreadCount: Int, _ error: Error?) -> Void in
    if unreadCount == NSNotFound {
        print("error while updating unreadCount : \(error ?? "" as! Error)")
        if (error as NSError?)?.domain == DimeloHTTPErrorDomain && (error as NSError?)?.code == 429 {
            // 429 Too many requests. Be nice, add some delay.
            self.unreadFetchInterval += self.defaultUnreadFetchInterval
        }
    } else {
        self.updateBadge(withUnreadCount: unreadCount)
    }
    self.scheduleUnreadCountUpdateTimer()
})
}

func scheduleUnreadCountUpdateTimer() {
    unreadUpdateTimer?.invalidate()
    unreadUpdateTimer = Timer.scheduledTimer(timeInterval: unreadFetchInterval, target: self, selector: #selector(self.updateUnreadCount), userInfo: nil, repeats: false)
}
func dimeloUnreadCountDidChange(_ notification: Notification?) {
    updateBadge(withUnreadCount: Dimelo.sharedInstance().unreadCount)
    scheduleUnreadCountUpdateTimer()
}

Dans l'attente d'une réponse de votre part.
Bien cordialement,

Compiler Warning

When project is compiled I see the warning:

umbrella header for module 'Dimelo' does not include header 'DimeloChatInputAccessoryView.h':
#import "Headers/Dimelo.h"
^

Am I right understand that it is Dimelo-iOS framework problem? Could you fix it?

Dimelo n'est pas compatible "bitcode"

Lorsque j'essaie de construire une archive de mon application, qui utilise le pod Dimelo, alors que le paramètre ENABLE_BITCODE est activé, j'obtiens l'erreur suivante :

ld: bitcode bundle could not be generated because '.../Pods/Dimelo-iOS/Dimelo.framework/Dimelo' was built without full bitcode. All frameworks and dylibs for bitcode must be generated from Xcode Archive or Install build file '.../Pods/Dimelo-iOS/Dimelo.framework/Dimelo' for architecture arm64.

Si je supprime Dimelo de mon application ou que je désactive le paramètre ENABLE_BITCODE, cela fonctionne.

Est-ce qu'il serait possible d'obtenir une version du SDK Dimelo compatible bitcode ?

chatViewController() weird behavior

image

So the dimelo.chatViewController() view controller is not like other view controrller. It "jumps" out of its container.

Each tab content should be child of the tab bar. But this chat view overlaps the tab bar menu. I think it is caused by some auto layout settings.

Error localization problem

Hello!

We have a problem with error alert localization (see attach).
As temporary solution we use "Error" and "Could not send the message" string keys. But it is not documented.

Could you add documentation for this case and cases like this? It would be good if you make new string keys with prefix like "dimelo...".

dimelo error localization

Probléme de clavier

Bonjour,

Comme c'est déjà vu avant, le probleme persiste encore et ce n'est pas résolu encore!

A partir du menu, j'appel une interface qui cintient dimelo, lorsque l'utilisateur saisie son message et ouvre encore une fois le menu, le clavier ne se cache pas. Vous m'avez dit d'ajouter view.endEditing(true) mais dans ce cas (c'est que le clavier se cache à l'ouverture de menu) mais je perds l'accés au clavier a mon retour a l'interface de Dimelo.

dimelo_bug

Apple binary validation fails when using Dimelo SDK 1.7.0+

Hello,

we uploaded our binary to iTunes Connect but we received the following error message:

Dear developer,

We have discovered one or more issues with your recent delivery for "xyz". To process your delivery, the following issues must be corrected:

Invalid Bundle - A nested bundle contains simulator platform listed in CFBundleSupportedPlatforms Info.plist key.

Once these issues have been corrected, you can then redeliver the corrected binary.

Regards,

The App Store team

We checked our workspace and Dimelo is the only framework which contains "iPhoneSimulator" in its Info.plist file.

By changing the value of this key to "iPhoneOS", I was able to have the binary validated by Apple but it's now a satisfactory solution.

Can you change your Info.plist as I believe we are not the only ones impacted ?

Thanks very much,
Anthony

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.