Closed hoangdat closed 7 months ago
window.location = 'imdb://title/tt3569230';
setTimeout(function() {
window.location = 'itms-apps://itunes.apple.com/us/app/imdb-movies-tv/id342792525'
}, 250);
Link for register:
window.location = 'imdb://title/tt3569230';
setTimeout(function() {
window.location = 'itms-apps://itunes.apple.com/us/app/imdb-movies-tv/id342792525'
}, 250);
redirect_url=tmail://
redirect_url
with param. Eg: tmail://registered?to_app=twake&play_store_url={playLinkURL}&app_store_url={appStoreLinkURL}
to_app
and open twake deeplink - UrlLauncher to check deeplink, twake.chat://
(no http)store_url
to download, also need copy to clipboard the redirect_url
with param to continue register flow after app installed (clipboard to support continue the flow)window.location = 'https://twake.app/register?param1=abc¶m2=bcd';
if (isMobileBrowser) {
setTimeout(function() {
window.location = isAndroid ? playStoreUrl : appStoreUrl
// Need to check register state after app installed
copyToClipboard('https://twake.app/register?param1=abc¶m2=bcd')
}, 250);
}
Flutter
: add post_registered_redirect_url={mobileAppUrl}
twake: twake.chat://
- tmail: teammail.mobile://
JS
: handling post_registered_redirect_url
JS
: Register page -> redirect to post_registered_redirect_url
+ optional params:
Eg:
teammail.mobile://registered?open_app=twake.chat://&play_store_url=https://google.link&app_store_url=https://apple.link
teammail.mobile%3A%2F%2Fregistered%3Fopen_app%3Dtwake.chat%3A%2F%2F%26play_store_url%3Dhttps%3A%2F%2Fgoogle.link%26app_store_url%3Dhttps%3A%2F%2Fapple.link
Flutter
:
if (UrlLaucher.canOpenUrl(link["open_app"]) {
UrlLauncher.openUrl(link["open_app"]);
} else {
copyToClipboard(link["open_app"]);
final storeUrl = Platform.iOS ? link["app_store_url"] : link["play_store_url"];
UrlLauncher.openUrl(storeUrl);
}
link["open_app"]
: JS
: check post_registered_redirect_url
not existed need to handle redirect for each app: Fx: Twake Chat
in Android mobile browser:
in iOS mobile browser:
window.location = 'twake.chat://registered';
if (isMobileBrowser) {
setTimeout(function() {
window.location = isAndroid ? playStoreUrl : appStoreUrl
// Need to check register state after app installed
copyToClipboard('twake.chat://registered')
}, 250);
}
in web: open web app (https://beta.twake.app/web/#/registered)
window.location = 'https://beta.twake.app/web/#/registered';
post_registered_redirect_url
after registeredpost_registered_redirect_url=twake.chat%3A%2F%2F
[ ] Handle post_registered_redirect_url
after registered: Do following code in step 3 of case 1 (https://github.com/linagora/twake-on-matrix/issues/863#issuecomment-1784890967)
/registered
Eg: https://beta.twake.app/web/#/registered
It should show button to open OIDC
Question: What happen for case logged in ?
Question: Should pass home_server_url
as param of path ?
twake.chat://registered
It should show same page with web
If first install and clipboard equal twake.chat://registered
=> Show registered page instead login page
twake.chat://
to check app installed instead AppLinks/Universal links https://
Case 1: open register from a flutter app
post_registered_redirect_url={mobileAppUrl}
Fx:
https://register.tom-dev.xyz?post_registered_redirect_url=twake.chat://registered
post_registered_redirect_url
with some params:
open_app
: twake.chat://
or teammail.mobile://
or twake.drive://
play_store_url
: app_store_url
:and this must use encodeBase64Url
Question: Just to show all the products with redirect link inside each product.
Case 2: open register from a browser
post_registered_redirect_url
existedif no, register as normal i. if it is normal browser. Open web app
window.location = 'https://beta.twake.app/web/#/registered';
ii. if it is mobile browser. Run this script
window.location = 'twake.chat://registered';
if (isMobileBrowser) {
setTimeout(function() {
window.location = isAndroid ? playStoreUrl : appStoreUrl
// Need to check register state after app installed
copyToClipboard('twake.chat://registered')
}, 250);
}
twake.chat://registered
teammail.mobile://registered
https://tdrive.linagora.com/
When you can complete the JS site with it? Khaled: try to complete it on Friday.
Khaled: docker image: bypass phone verification -> create a branch in register repository
@sherlockvn
https://register.tom-dev.xyz?post_registered_redirect_url=twake.chat://registered
JS
will call to
twake.chat://registered?open_app=twake.chat://&play_store_url=https://google.link&app_store_url=https://apple.link
post_registered_redirect_url
), app need to handle loginTokenpost_login_redirect_url
)
App: Receive token -> process app to login -> work as normalpost_login_redirect_url
)
Register app: complete the sign in -> automatically go back to the appCase 2: landing page of Twake Workplace -> login completed in Register site -> list of apps -> user can open app with token
Desc:
Env: