IBM Worklight 6.0 - URL shortening - ibm-mobilefirst

I have build a simple web app using Worklight.
My apps Preview URL is :
//local.loc:9080/Mobile/apps/services/preview/MobileAPP/common/0/default/MobileAPP.html
Shortend URL (with bit.ly credentials) is: http://bit.ly/153qbvr
Here the domain is completely different (bit.ly).
But actually I am looking for URL like : http://local.loc:9080/Mobile/MobileAPP.html.
Are there any ways to get a URL for public access like:
//:/application-name/launch_App_.html
if not, let me know ways to reduce the URL - if any.

The first URL you've mentioned is internal. It is meant for preview (development time mostly). Why would you be interested in shortening it? What is the value of doing so for you?
Also note that the shortened URL provided by bit.ly when using this service via Worklight - IS NOT the same URL as the first one (preview), it is meant for the Mobile Web environment, meaning for users who use their mobile browser app to access your app.
In short (no pun intended...), no, there is no way to do what you are asking for via Worklight - you cannot tweak the URL.
Let me re-iterate, the preview URL (the one mentioned in your question and that you want to shorten) is for the administrator or developer. It is NOT MEANT TO BE PUBLICALLY USED in any capacity, shape, form.
If you want to provide a web-public link to your app, add the Desktop Browser environment to your application. This environment is meant to access the app from a regular Desktop (PC/Mac) browser app. Note that even in this case, you cannot shorten the URL via a tweak in Worklight.
What you can do, is install some custom shortening service of your own in your company's servers and create your own custom URL that will look the way you want it to.

Related

Google OAuth: custom scheme for desktop app

I'm trying to authenticate a desktop application with OAuth. I already asked a question, but I deleted it as I discovered that the method was obsolete (integrated web view).
The idea is to open the browser and then have the page call back my application with a custom:// URI scheme.
Of course it doesn't work, Google asks that the scheme contains a dot (like com.org.myapp), but the native app can only have a fmp:// uri scheme, which I can't change.
The documentation doesn't mention anything, and I can't create a local temporary server.
1- Can I use the fmp:// scheme as a callback in any way?
2- If not, is it possible to redirect the call to another centralised web server? Everything I try generates a 400 error on the google page, saying "redirect_uri_mismatch" or similar stuff.
As stated in the comments above, the only solution is to create an intermediate web server that serves a page which then opens the URL. OR creates a record in the database with the authentication code.

Social Business Toolkit: Sametime chat only with local installed Sametime Client possible?

I'm using SBT SDK on a XPage.
After mastering a few traps at the beginning it works fine.
Livenames are properly displayed.
But now a got another problem.
If you click on a available person, a context menu is displayed, where you can choose 'CHAT' or 'VCARD'.
If I click on CHAT a URL like this ist called:
http://localhost:59449/stwebapi/loggedin?jsonp=stproxy.connect.callback.setAvailable&wait=true&time=1407834968761&fqdn=sametime.lotus.com
I found out that you have to install Sametime Connect Client locally at every computer, because it is providing a small webserver at port 59449.
That's impossible because I want to use Sametime on a public website.
I'm pretty sure that there is another way.
Somebody an idea?
thanks
Marcus
#user2776693 - There are two ways:
1 - using the Sametime Local Web API
The local web api uses a configurable port (the default is mentioned above), to communicate back and forth from a web site which embeds or calls the configurable port using jsonp, meaning the javascript of the site wraps the sametime calls.
2 - using the Sametime Web Chat/Web Proxy
It means that the Sametime Web Chat is embedded as JavaScript on the page, and loaded using the appropriate JS libraries, and can have some pretty advanced features. There is a demo site off of greenhouse.lotus.com, and you can sign up for an account on that site.
you can download the sdk, and find many examples of using the local web api and web chat.
http://www14.software.ibm.com/webapp/download/nochargesearch.jsp?q0=&k=ALL&S_TACT=104CBW71&status=Active&b=Lotus&sr=1&q=sametime+sdk&ibm-search=Search
Download Version 9.0 IFR1
Extract with Zip
Go to Examples and samples

How to reduce Worklight application url?

How to reduce below worklight application url to shorter form?
For ex: My application url is //hostname:ipaddress/projectName/apps/services/preview/projectNameApp/common/0/default/projectNameApp.html"
I want to set up a url which can be accessible easily over the internet. what are the settings required to get shorter url in worklight project
For ex
//hostname:portno/context path/appIndexPage.html
instead of
//hostname:ipaddress/projectName/apps/services/preview/projectNameApp/common/0/default/projectNameApp.html"
Thanks.
See the answers here and the getting started module here.
This is not the URL of your all. This is the URL of the app PREVIEW. Moreover, this is preview of common environment. If you're targeting mobile/desktop web environment - add it to your project and then use WL console to generate short link. - Anton
If you are aiming to use the Mobile Web environment, meaning you take the public URL of the app from Worklight Console and place it in your mobile web site for users to access, there is the option to use bit.ly to shorten the URL; you will first need to create an account at http://bit.ly. - Idan Adar

Communication between a Mac app & local website/server

I want to control a mac app via a local website. I think the best way is to create a webserver with my mac app and then to send (primarily) integer values from the website and vice versa.
I found already CocoaHTTPServer, but I'm not sure how to do it.
For start with I want to have a slider on the website, that updates a slider in my mac application (and vice versa)
You will initiate on a separate thread or operation the web server and always wait for incoming requests. Whenever you receive a request you will handle it accordingly.
Also, if you are using this: https://github.com/robbiehanson/CocoaHTTPServer/
then there are a few examples that show how to do it. Copy the code from there to begin with the web server handling requests. After that, think through what you want to send and what you want to do. Build a form or something for the web site and submit a request to the web server.
CocoaHTTPServer will let you embed the web server into your application, which is a fine solution for what you're trying to accomplish.
Some thoughts on how to engineer it:
You'll need to subclass HTTPConnection.
Model your solution on the PostHTTPServer example.
You could get the data you want to send into the URL. Something like POST http://localhost:12345/updateSlider/123. (You probably don't need an actual POST, but no reason it wouldn't work. Technically a PUT would be more correct.)
Start by handling that part – where the browser sends a value to your application. To generate POST/PUT requests for testing purposes, use curl, or else build a static page and open it in your browser.
When you get that working, then worry about presenting a web page to the user.

iOS App URL is not being detected

I have created a custom App URL for my iOS app. The URL format is similar to this:
myappname://texttobeparsed
This works fine when I paste the URL in safari, My App opens and correctly handles the URL. The problem is that other apps such as iMessage or Notes do not recognize this as a URL.
Why isn't this URL scheme being recognized as a URL? Could it have to do with how I set it up in my info.plist file or something else?
Or, does the URL need to be in a different format to be recognized?
I know it's possible to have the system recognize it as a URL in apps other than web-browsers because I've seen it before with other apps (ex. iTunes: itms://itunes.com/apps/appname or Twitter: twitter:// or Facebook: fb://).
There's nothing you can do about this. If the link isn't explicit (e.g. in an HTML email), these apps can just recognize a built-in set of standard URL schemes. itms:// is one of Apple's own schemes (for the iTunes Store), so it makes sense that it is supported in addition to the standard mailto://, http://, tel://... schemes.
Edit: I would guess that the information that is used to determine what constitutes a valid URL in text views etc. is cached somehow. Contrary to what I initially guessed, it seems that app-specific URLs do work in Notes, etc. I've tested this with tweetbot:// for example (which I have installed) and twitter:// (which I don't have installed) to verify that it doesn't just check for a pattern like *://, but actually uses information about the installed apps.
I'd suggest that you try to restart your device. If it's an issue with some cache, that might help and I don't think there's much else you could do if your URL scheme already works in Safari.
Update: I've installed the official Twitter app to test this, the twitter:// scheme wasn't immediately recognized in Notes, but after killing and restarting the Notes app, it worked.
Update 2: I've done a minimal test app with myappname:// as a custom URL scheme. Again, like with the Twitter app, it worked after restarting the Notes app, so it doesn't seem related to the popularity of the app or whether it's been submitted or not.
I can't answer as to why it's not working (beyond guessing that the link interpreter is hard-coded to only recognize certain URL schemes), but I can say that the typical way around this is to link to a web page, and have the web page redirect to your custom scheme.
It's slightly less elegant, because the user will see Safari open up briefly before being forwarded to your app, but it's also more robust because the web page can provide a link to the app store to install the app if it is not installed on the user's phone.