How to integrate intercom chat to react-naive mobile app? - react-native

I'm developing a mobile app which has a support feature for clients. Support is a chat session. We are planning to use intercom chat integration with our react-native mobile app. We are using React-Native.So is there any way to integrate intercom chat with my mobile app ??
If it is possible can i be able to change intercom chat UI with customized react-native components ??
Any links helps would be appreciated ?

Yes, you can integrate Intercom in a react-native application. You can use
react-native-intercom, this a wrapper of Intercom-ios-sdk and does not have options to further customization (only launcher).
You'll have to write some native code hopefully everything is in the README.me
About changing intercom UI: it is not possible. Really, don't waste your time trying to do this. They simply don't offer this feature.
Their clients SDK are not open source even if they are in GitHub. If you go to Intercom Android SDK or Intercom iOS SDK you would think that they open sourced them but if you see their files you're gonna see that it is just binary files. You cannot edit them. Or maybe you can but in a hacky way.
The only way to use your own components is to use their API directly and implement the UI from scratch. I strongly recommend you to don't do it. They have API call restrictions (500 requests per minute) which is easy to achieve because of the number of calls you'll have to send in order to make it work properly.

Related

Libraries and API to be used for developing a React Native Video Chat App?

Can anyone recommend me libraries and APIs I can use to develop a video chat app using React Native? I would appreciate it if your suggestions doesn't require you to pay in order to fully utilize the library/api.
I've used this jitsi-meet library. It's pretty easy to use it ,and also it integrates all the webrtc module by itself and also it gives a ready made UI.For you to start instantly you can use this library, even ive launched an app both on playstore and appstore for video calling.
And if you wnat the full custom way, you can use rn-webrtc , here you have to make your own UI and manage everything.
Hope it helps. feel free for doubts

RingCentral two way communication

I am building a React Native application for calling using RingCentral APIs.First of all I tried using the webphone RTC via web browser: https://github.com/ringcentral/ringcentral-web-phone. It works perfectly fine in web browsers. But the thing I need is to call via react-native application I am building.
I tried calling via RingCentral using 'ring out call' POST API and 'call control- make callout' post api(beta version).But the problem i am facing is when i integrate these apis to react-native applications : To have a two way communication I need to be online in the web phone .Then when i call from react native it goes to the web phone first.And then when I dial 'answer' it redirects to the number i want to call to.Then only I can have a two-way communication.
So, what do I do if I want to directly call via react-native application to the recipient directly?
P.s. If I am not online in the web phone from browser the call automatically goes to the voicemail.
So hard to understand your question from the title and the detailed description.
I guessed that you want to implement a functional phone using react native where you want to use the RingCentral WebRTC SDK to handle incoming and outgoing phone calls.
First of all, please mind the browser compatibility supported by the WebPhone SDK. Secondly, it is not trivial and I cannot support you on the react-native part. However, RingCentral provides an easy way to embed a RingCentral embeddable phone to any webpage and that app is an open source project. You can use the embeddable as such or clone the project and learn from the code or modify it to meet your requirements.
Click on the links above to find further information.

How can iOS application interact with an Ethereum wallet

I have a dapp for web application. Users have metamask installed in the Chrome browser. They make transactions using metamask. Now I want the same application to be developed in iOS using react-native. How to develop this? For browser when users want to make any transaction simply metamask pop ups and asks for confirmation.
How about in mobile devices? How they are going to install metmask in the devices and make transactions in mobile device. Is is possible to achieve this? How can I develop this app?
Your iOS app can communicate with iOS wallets using WalletConnect mobile linking. This fulfils a similar functionality as MetaMask pop-up on desktop environments.
Yes, you don't need metamask for your application. (And I am yet to see someone use it in an app built in React Native.)
Metamask is essentially a wallet which 'injects' into various services on the web. But it is nothing more than a wallet that manages your identit(y/ies).
The features you'd need in your React app would need:
Managing identities (private and public keys.)
Ability to sign transactions.
Then you might want to use extra features such as:
Importing keys
Updating balances
Recording transasctions, etc.
If you're using web3.js, then you need to start here: web3.eth.accounts and look into wallets on the same page.
For React Native, you can use the Moralis SDK https://moralis.io/
If you're developing a native app with Swift, you can use the v1 WalletConnect SDK https://github.com/WalletConnect/WalletConnectSwift.
Also, I'm working on a package (on top of WC) that already has all the configuration for it: https://github.com/maurovz/Glaip

Real technical advantages of React Native over Web

I thinking about real technical advantages of creating React Native app over web SPA. I figured out that only 1 advantage could be - it's saving and loading data in phone store. Another things like, for example, access to GPS, camera, etc are also available in JavaScript Web. So, that is real technical advantage of using React Native over Web?
Overall, it really depends on what your application is for...
If your Application will be used by mobile users only, then React Native is a perfect solution. However, if you want an application with a Web presence, so users can use it on Desktops etc - then it wouldn't really be suitable unless you did both a Web SPA and a mobile app.
For example, if I were to create an accounting app - which will be used by users on Mobiles and Desktop, then perhaps I'd consider building a SPA which is mobile friendly or both SPA and an App with an API for both.
If you were building a tracking app, which will only be available for mobile - then go for it.
If your users will be using desktop, then you can build it perhaps in React and when you get to React Native you know the react library!
React Native in itself builds both iOS and Android Apps, so instead of creating a 'hybrid' app (which includes webviews) or a native App in both iOS and Android - you only create one code base and build it to your chosen OS. This saves alot of development time. As the community is open source, alot of upgrades happen and there is alot of help online if you encounter an issue.

Is Sencha UI and SenchaTouch only meant for web applications accessed from device or for native apps too?'

As I am new to PhoneGap and SenchaTouch I want to know the basic information . I understand that sencha Touch is only for web applications accessed from device. I am correct Please clarify my doubt that is 'Is Sencha UI and SenchaTouch only meant for web applications accessed from device or for native apps too?'
Thank you
Lakshmi
Sencha touch is a web toolkit, provides API to create interface looks similar to Native UI. But, however it is still a web application with a native look. However, if you want to crate the native packaging (application build) and if you want to access the device hardware features like camera, sensor then you can go for PhoneGap. PhoneGap can warp the HTML and JavaScript code and helps you to generate native builds for each platforms.