Microsoft Skype for Business Integration in Android app - skype-for-business

Hi Everyone ,
I am developing android in which need Microsoft Skype for Business Integration. so that user can have feature of Video call and Chat etc. I am using this link.
when i am running GuestMeetingJoin sample app getting this error :
05-04 12:03:15.433 32446-32446/com.microsoft.office.sfb.sfbdemo E/dalvikvm: dlopen("/data/app-lib/com.microsoft.office.sfb.sfbdemo-1/libacomo.so") failed: Cannot load library: soinfo_link_image(linker.cpp:1636): could not load library "libsqlcipher.so" needed by "libacomo.so"; caused by load_library(linker.cpp:746): library "libsqlcipher.so" not found
05-04 12:03:15.463 32446-32446/com.microsoft.office.sfb.sfbdemo E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.microsoft.office.sfb.sfbdemo/com.microsoft.office.sfb.sfbdemo.MainActivity}: java.lang.RuntimeException: Failed to load native library
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2245)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2299)
at android.app.ActivityThread.access$700(ActivityThread.java:150)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5283)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.RuntimeException: Failed to load native library
at com.microsoft.office.sfb.appsdk.Application.LoadNativeLibrary(Application.java:129)
at com.microsoft.office.sfb.appsdk.Application.initialize(Application.java:71)
at com.microsoft.office.sfb.appsdk.Application.getInstance(Application.java:143)
at com.microsoft.office.sfb.sfbdemo.MainActivity.onCreate(MainActivity.java:57)
at android.app.Activity.performCreate(Activity.java:5283)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1097)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2209)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2299) 
at android.app.ActivityThread.access$700(ActivityThread.java:150) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:137) 
at android.app.ActivityThread.main(ActivityThread.java:5283) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:511) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) 
at dalvik.system.NativeStart.main(Native Method) 
05-04 12:03:15.893 553-602/? E/android.os.Debug: !#Dumpstate > dumpstate -k -t -z -d -o /data/log/dumpstate_app_error
05-04 12:03:25.823 10400-10400/? E/dalvikvm: Could not find class 'com.google.android.gms.common.permission.PermissionUtils$1', referenced from method com.google.android.gms.chimera.GmsModuleInitializer.initializeModuleV0

Please keep noted that Skype for Business (SfB) [former known as Lync] isn´t the same as Skype for Consumer (SfC).
Skype for consumer (SfC):
Is mostly used by consumer and do not require to install any environment.
Skype for Business (SfB):
Is used by companies and it required to setup an dedicated environment (in the cloud or in the own datacenter). With SfB it is possible to have a federation between SfC and SfB so that users are able to chat and perform calls with each other. So if you wish to include SfB you can use UCWA or UCMA.
For UCWA here are some starting points:
Unified Communications Web API 2.0
Developing UCWA applications for Skype for Business Online
UCWA 2.0 general reference
So do no get confused here...

Related

Okhttp error during React Navtive GET request

Receiving this error during an otherwise valid GET request in a react-native project.
2020-08-11 12:12:54.163 7301-7498/com.cigna.mobile.mycigna.debug E/AndroidRuntime: FATAL EXCEPTION: OkHttp Dispatcher
Process: com.cigna.mobile.mycigna.debug, PID: 7301
java.lang.NoSuchMethodError: No static method delimiterOffset(Ljava/lang/String;IILjava/lang/String;)I in class Lokhttp3/internal/Util; or its super classes (declaration of 'okhttp3.internal.Util' appears in /data/app/~~-wSG5UWGWR49_zqj0uGdfw==/com.cigna.mobile.mycigna.debug-O6Kl4LYWC-jBUFRzAxGZug==/base.apk!classes6.dex)
at okhttp3.JavaNetCookieJar.decodeHeaderAsJavaNetCookies(JavaNetCookieJar.java:91)
at okhttp3.JavaNetCookieJar.loadForRequest(JavaNetCookieJar.java:74)
at com.facebook.react.modules.network.ReactCookieJarContainer.loadForRequest(ReactCookieJarContainer.java:44)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:75)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:71)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:184)
at okhttp3.RealCall$AsyncCall.run(RealCall.kt:136)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
2020-08-11 12:12:54.552 631-716/system_process E/InputDispatcher: channel '94b38db com.cigna.mobile.mycigna.debug/com.cigna.mycigna.ui.dashboard.HomeActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
All other api requests on my application work without problem. As well, the request mentioned works seemlessly on iOS.
You've got two libraries: okhttp and okhttp-urlconnection. They must be on the same exact version or you may receive this error.

java.lang.NoClassDefFoundError: org.apache.woden.resolver.URIResolver

getting the below exception after deploying the application in WAS8. using axis2 1.7.4 family with Woden api and impl 1.0M8. Will someone please help
java.lang.NoClassDefFoundError: org.apache.woden.resolver.URIResolvergetting
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(J9VMInternals.java:93)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:170)
at org.apache.axis2.deployment.ModuleDeployer.deploy(ModuleDeployer.java:65)
at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:815)
at org.apache.axis2.deployment.RepositoryListener.loadClassPathModules(RepositoryListener.java:222)
at org.apache.axis2.deployment.RepositoryListener.init2(RepositoryListener.java:71)
at org.apache.axis2.deployment.RepositoryListener.<init>(RepositoryListener.java:64)
at org.apache.axis2.deployment.DeploymentEngine.loadFromClassPath(DeploymentEngine.java:177)
at org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(FileSystemConfigurator.java:135)
at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:64)
at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContextFromFileSystem(ConfigurationContextFactory.java:210)
at org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:151)
at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:144)
and later below I am getting classnotfoundexception also
Caused by: java.lang.ClassNotFoundException: org.apache.woden.resolver.URIResolver
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:650)
... 27 more
If you're going to bring your own web services implementation, you have to run with PARENT_LAST class loading (or, preferably, package your version of the web services implementation in a shared library with an isolated class loader) and disable the built-in web services engine in WebSphere. Based on the exception stack, what appears to be happening is that something in your web services engine is interacting with WebSphere's version and triggering a load for a dependency that WebSphere doesn't package. Setting the environment to use your version will resolve that.
Note that WebSphere already includes Axis2, so unless you are strictly dependent on that specific point release, there's a very good chance that the best solution for you is just to rely on WebSphere's web services provider, rather than bringing your own. That will greatly simplify your configuration, since you won't need to mess with class loading delegation settings or system properties disabling the web services provider.

MobileFirst 7.1: no registered challenge handler with key wl_sessionIndependentSupport

I encounter this error on the console logs of an iPad hybrid app built on MobileFirst Platform 7.1, when using WL.Client.connect():
2017-03-14 01:45:34.552 myApp[37732:5685087]
[ERROR] [WL_REQUEST] __43-[WLRequest processFailuresWithDictionary:]_block_invoke in WLRequest.m:694 ::
Challenge handler does not exist. There is no registered challenge handler with key wl_sessionIndependentSupport
It seems, however, wl_sessionIndependentSupport is not documented anywhere, so I have no clue on how to solve this error.
Our server is configured for session-independent mode, but I am not aware of it requiring any client-side changes.(See here, for example).

Not able to login Maximo Anywhere Work Approval apps

I installed Maximo Anywhere 7.5.1.2. We have Worklight 6.1.0.2. I got following error on Worklight console. I have updated Maximo OSLC web resource in web.xml as per mentioned on IBM knowledge center. I appreciate any help
[2/22/15 20:09:40:922 EST] 0000002e TpaeCustomAut I processRequest() - Request URI=/worklight/apps/services/preview/WorkApproval/common/0/default/js/platform/ui/control/css/large-landscape-controls.css
[2/22/15 20:10:39:606 EST] 0000002b TpaeCustomAut I processRequest() - Request URI=/worklight/apps/services/api/WorkApproval/common/query
[2/22/15 20:10:39:639 EST] 0000002a TpaeCustomAut I processRequest() - Request URI=/worklight/apps/services/api/WorkApproval/common/query
[2/22/15 20:10:39:688 EST] 0000002a TpaeCustomAut I processRequest() - Request URI=/worklight/apps/services/api/WorkApproval/common/query
[2/22/15 20:10:39:719 EST] 0000002a ServletWrappe E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: Uncaught exception created in one of the service methods of the servlet GadgetAPIServlet in application IBM_Worklight_Console. Exception created : com.worklight.server.auth.api.WorkLightAuthenticationException
at com.worklight.core.auth.impl.AuthenticationContext.checkAuthentication(AuthenticationContext.java:548)
at com.worklight.core.auth.impl.AuthenticationContext.processRealms(AuthenticationContext.java:414)
at com.worklight.core.auth.impl.AuthenticationContext.pushCurrentResource(AuthenticationContext.java:391)
at com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:75)
at com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedureInternal(DataAccessServiceImpl.java:384)
at com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedure(DataAccessServiceImpl.java:112)
at com.worklight.gadgets.serving.handler.BackendQueryHandler.getContent(BackendQueryHandler.java:184)
at com.worklight.gadgets.serving.handler.BackendQueryHandler.doPost(BackendQueryHandler.java:75)
at com.worklight.gadgets.serving.GadgetAPIServlet.doGetOrPost(GadgetAPIServlet.java:141)
at com.worklight.gadgets.serving.GadgetAPIServlet.doPost(GadgetAPIServlet.java:103)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:576)
at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:250)
at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1661)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1602)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
at com.worklight.core.auth.impl.AuthenticationFilter$1.execute(AuthenticationFilter.java:191)
at com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:76)
I ran into similar issue. Following checklist resolved my issue.
Assuming you have installed Maximo Anywhere component of Maximo EAM, verify the security groups, ANYWHERE_TECHNICIAN and ANYWHERE_APPROVER are created and have the user assigned to these groups
Verify if you can make OSLC request from the browser
http://host:port/maximo/oslc/os/oslcwodetail?_lid=replaceduserid&_lpwd=replacepassword
clean build the project by touching app.xml file
deploy the OSLCGenericAdapter
deploy the app on WorklightDevelopment server from eclipse
AnywhereWorkManager->apps->WorkApproval->Run As -> Run on Worklight Development Server
Open the chrome browser and clean the cache
Preview the app from apps -> WorkApproval -> Common

IBM Worklight 6.1.0.1 - "file not found service/random" for Mobile Web environment

I have implement Encrypted Cache in my application. When testing is in the Mobile Web environment using the mobile browser in my device, I get the following exception:
[ERROR ] FWLSE0048E: Unhandled exception caught: SRVE0190E: File not
found: /apps/services/BMA_app/apps/services/random
java.io.FileNotFoundException: SRVE0190E: File not found:
/apps/services/BMA_app/apps/services/random at
com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:496)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:127)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:88)
at
com.worklight.core.auth.impl.AuthenticationFilter$1.execute(AuthenticationFilter.java:191)
at
com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:76)
at
com.worklight.core.auth.impl.AuthenticationFilter.doFilter(AuthenticationFilter.java:195)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85)
at
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:949)
at
com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1029)
at
com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4499)
at
com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.handleRequest(DynamicVirtualHost.java:282)
at
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:954)
at
com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.run(DynamicVirtualHost.java:252)
at
com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink$TaskWrapper.run(HttpDispatcherLink.java:584)
at com.ibm.ws.threading.internal.Worker.executeWork(Worker.java:439)
at com.ibm.ws.threading.internal.Worker.run(Worker.java:421) at
java.lang.Thread.run(Thread.java:701) [project BMA_app] SRVE0190E:
File not found: /apps/services/BMA_app/apps/services/random
When testing in other environments, the error does not occur.
EDIT: I just saw that, this service allows to get a key for encrypted cache. It allows to open it. Given that, the service is 404, I got a failure for opening cache.
Moreover, the Worklight Console gives me this URL for mobile web app:
http:/my-server:port/BMA_app/apps/services/www/BMA_app/mobilewebapp/
the app tries to get a key for encrypted cache and send to http:/my-server:port/BMA_app/apps/services/BMA_app/apps/services/random
^ 404 error
If we cut this previous url to http://my-server:port/BMA_app/apps/services/random, it works.
It seems that in the URL "BMA_app/apps/services" is repeated twice instead of once.
Why and how to resolve it ?
Looks like you may have encountered a defect.
Testing in 6.1.0.1 with the Encrypted Cache sample project and adding to it the Mobile Web environment, if you use the link provided by the "Get App URL" button - then when you try to "open cache" from the app, it will fail with status code 10. This status code means that the app was unable to connect to the Worklight Server's Random generator service.
Indeed, when inspecting the console log, the app tries to connect to the following URL, where "EncryptedCache/apps/services" is repeated twice...:
http://192.168.1.101:10080/EncryptedCache/apps/services/EncryptedCache/apps/services/random?isAjaxRequest=true&x=0.18816258828155696
There is no workaround for this defect as it is the framework that generates the URL.
I have opened a defect.
If you are an IBM customer or business partner and require a fix, you can open a PMR and mention this Stackoverflow question.
Moving forward, the fix will be available in an iFix and any future fixpack released.