Tutorial: Mobile implicit login

Serverless AuthenticationSigning in and out Mobile implicit login

This authentication method provides an implicit authentication of any mobile end-user who is an Orange customer. It relies on the Orange Wassup platform, which makes it possible to identify Orange customers based on the mobile data network (typically Orange 3G network) used by their mobile device, without requiring any explicit interaction with the final user.

As any project that uses the Orange Wassup platform must be formally approved, this method is not available by default on newly created Webcom applications. In order to make it available for your application, you have to request it explicitly by sending an email to a Webcom administrator.

This method is intended for mobile devices accessing the internet through a mobile data network. It will fail if called from a non-mobile device or through a Wi-Fi network.

Note: this authentication method is not available in all Orange countries, in particular it doesn't work in France.
See the complete list of supported countries for more details.

Implicit login

var ref = new Webcom("<your-app>");
// Log in
ref.authWithWassup({mcc: "206"})
    .then(auth => console.log("Authentication succeeded", auth))
    .catch(error => {
        switch (error.code) {
           case "INVALID_PROVIDER_REQUEST":
             console.log("Your mobile network access could not be recognized.");
             break;
           case "PROVIDER_DISABLED":
             console.log("The implicit authentication method is disabled in the application. It must be enabled in the Webcom developer console.");
             break;
           default:
             console.log("An unexpected error occurs, please retry and contact your administrator.", error);
         }
    });

Unless you run a Javascript application on a mobile device, the Javascript API for implicit login should not be used directly.

Nevertheless, the authWithWassup function expects a JSON object as a first argument, with a mcc property that indicates the Mobile Country Code attached to the mobile device.

The auth parameter returned in the promise is a JSON object representing the signed in identity, which directly feeds the current authentication state. The following properties are specialized this way:

Property Type Description
provider string Equals "wassup".
providerUid string An immutable identifier of the authenticated mobile device.
Note that this identifier is application-specific, so that the same user receives two distinct identifiers when authenticating from two distinct Webcom applications.
Webcom ref = new Webcom("<your-app>");
ref.authWithWassup(new OnAuth(){
  @Override
  public void onComplete(@Nullable AuthResponse authResponse) {
    // User account authenticated or logged-out
    String token = authResponse == null ? null : authResponse.getToken();
  }
  @Override
  public void onError(WebcomError error) {
    // User account not authenticated
  }
});

The authWithWassup method automatically retrieves the Mobile Country Code from the SIM card activated on the mobile device. Another signature of this method exists, which makes it possible to set an arbitrary MCC to perform the authentication (see the reference documentation).

In case of error, the onError method is called with an object describing the root cause of the error. Otherwise, the onComplete method is called with an authResponse object that either is null when the user has signed out or represents her/his identity when s/he has signed in.

Coming soon!
In the meanwhile, refer to the iOS API reference

Currently supported countries

The Orange mobile network of the following countries is currently supported for implicit login based on the Orange Wassup platform:

Country Mobile Country Code (MCC)
EUROPE
Belgium 206
Poland 260
Slovakia 231
Spain 214
United-Kingdom 234
MIDDLE-EAST
Jordan 416
AFRICA
Botswana 652
Cameroon 624
Central African Republic 623
Congo-Kinshasa 630
Egypt 602
Guinea-Bissau 632
Guinea-Conakry 611
Ivory Coast 612
Madagascar 646
Mali 610
Morocco 604
Niger 614
Senegal 608
Tunisia 605