Verouderde callbackmeldingen voor mobiele abonnementen
Notitie
Op deze pagina worden verouderde callbackmeldingen voor mobiele abonnementen vermeld. Gebruik deze code alleen als referentie en implementeer deze code in de toekomst niet.
Levering van inlineprofielen
In het volgende diagram ziet u de stroom op hoog niveau voor de wijze waarop het programma Mobile Plans ondersteuning biedt voor het downloaden van een profiel zonder dat u de MODirect-portal hoeft te verlaten.
Wanneer de MO Direct-portal gereed is voor het downloaden, installeren en activeren van een profiel, moet de portal MobilePlansInlineProfile.notifyInlineProfileDownload
aanroepen.
MobielePlannenInlineProfiel.notifyInlineProfielDownload
Parameternaam | Type | Beschrijving |
---|---|---|
purchaseMetadata | Voorwerp | Dit object bevat metagegevens over de aankoop van de gebruiker. Dit omvat details over het gebruikersaccount, de aankoopmethode of het instrument, details of de gebruiker een nieuwe lijn toevoegt, en de naam van het door de gebruiker gekochte abonnement. Al deze worden gebruikt voor rapportage. |
activationCode | Snaar | De activeringscode voor het downloaden van het eSIM-profiel. De ICCID voor het profiel wordt afgeleid van de profielmetagegevens. |
De volgende JavaScript-functie toont een voorbeeld van de API om de toepassing te informeren dat het downloaden van een inlineprofiel moet worden gestart.
function NotifyMobilePlans() {
var purchaseMetaData = MobilePlans.createPurchaseMetaData();
purchaseMetaData.userAccount = MobilePlansUserAccount.new;
purchaseMetaData.purchaseInstrument = MobilePlansPurchaseInstrument.new;
purchaseMetaData.lineType = MobilePlansLineType.new;
purchaseMetaData.modirectStatus = MobilePlansMoDirectStatus.complete;
purchaseMetaData.planName = "My Plan";
MobilePlansInlineProfileDownload.registrationChangedScript = "onRegistrationChanged";
MobilePlansInlineProfileDownload.profileActivationCompleteScript = "onActivationComplete";
MobilePlansInlineProfileDownload.notifyInlineProfileDownload(purchaseMetaData , "1$smdp.address$matchingID");
}
Zie eigenschappenvan de aankoopmetadata voor details over het object puchaseMetadata
.
Saldo toevoegen (verouderd)
Wanneer een gebruiker een aankoop in de MO Direct-portal voltooit door meer gegevens toe te voegen aan zijn account (geen profieldownload nodig omdat de gebruiker het huidige profiel op de eSIM heeft gebruikt), moet de MO-portal de MobilePlans.notifyBalanceAddition
API terugsturen naar de app Mobile Plans.
MobielePlannen.saldoToevoegingMelden
Parameternaam | Type | Beschrijving |
---|---|---|
aankoopmetadata | Object | Dit object bevat metagegevens over de aankoop van de gebruiker. Dit omvat details over het gebruikersaccount, de aankoopmethode of het instrument, details als de gebruiker een nieuwe lijn toevoegt en de naam van het abonnement dat de gebruiker heeft gekocht. Al deze worden gebruikt voor rapportage. |
iccid | Snaar | De ICCID waaraan gegevens worden toegewezen. Als deze ICCID niet actief is, activeert de app Mobile Plans het bijbehorende profiel. |
De volgende JavaScript-functie toont een voorbeeld van de API om de toepassing te informeren dat de gebruiker een aankoop heeft voltooid met behulp van een profiel dat al beschikbaar is, maar niet noodzakelijkerwijs actief, op de eSIM.
function finishPurchaseWithBalanceAddition() {
var metadata = MobilePlans.createPurchaseMetaData();
metadata.userAccount = MobilePlansUserAccount.new;
metadata.purchaseInstrument = MobilePlansPurchaseInstrument.none;
metadata.moDirectStatus = MobilePlansMoDirectStatus.complete;
metadata.line = MobilePlansLineType.new;
metadata.planName = "2GB Monthly";
MobilePlans.notifyBalanceAddition(metadata, "89000000000000000000");
}
Zie metagegevens over aankoopkenmerken voor meer details over het puchaseMetadata
-object.
Andere callbackmeldingen uit het verleden
De melding naar de app Mobile Plans moet worden verzonden met behulp van JavaScript met de volgende syntaxis:
DataMart.notifyPurchaseResult(notificationPayload);
Een voorbeeld van de meldingpayload voor een eSIM is als volgt:
let notificationPayload = new Object();
notificationPayload.ver = '1';
notificationPayload.purchaseResult = "{\"userAccount\":\"New\",\"purchaseInstrument\":\"New\",\"line\":\"New\",\"moDirectStatus\":\"Complete\",\"planName\":\"MyPlan\"}";
notificationPayload.success = true;
notificationPayload.transactionId = 'MSFT_ecf5a4d6-024c-46c3-8fcd-2c1f0deed572';
notificationPayload.activationCode = '1$trl.prod.ondemandconnectivity.com$JO46UQDI07IKQDGG';
notificationPayload.iccid = '8988247000101997790';
DataMart.notifyPurchaseResult(JSON.stringify(notificationPayload));
Een voorbeeld van de notificatiebelasting voor een fysieke SIM is als volgt:
let notificationPayload = new Object();
notificationPayload.ver = '1';
notificationPayload.purchaseResult = "{\"userAccount\":\"New\",\"purchaseInstrument\":\"New\",\"line\":\"New\",\"moDirectStatus\":\"Complete\",\"planName\":\"MyPlan\"}";
notificationPayload.success = true;
notificationPayload.transactionId = 'MSFT_ecf5a4d6-024c-46c3-8fcd-2c1f0deed572';
notificationPayload.iccid = '8988247000101997790';
DataMart.notifyPurchaseResult(JSON.stringify(notificationPayload));
Een voorbeeld van de meldinginhoud voor een eSIM waarbij de gebruiker de MO-portal zonder een geslaagde transactie heeft verlaten, is als volgt. Als u alle gevallen wilt implementeren die van toepassing zijn op uw specifieke implementatie, raadpleegt u de tabel die volgt op het voorbeeld.
let notificationPayload = new Object();
notificationPayload.ver = '1';
notificationPayload.purchaseResult = "{\"userAccount\":\"Bailed\",\"purchaseInstrument\":\"None\",\"line\":\"None\",\"moDirectStatus\":\"None\",\"planName\":\"\"}";
notificationPayload.success = false;
notificationPayload.transactionId = 'MSFT_ecf5a4d6-024c-46c3-8fcd-2c1f0deed572';
notificationPayload.activationCode = '';
notificationPayload.iccid = '';
DataMart.notifyPurchaseResult(JSON.stringify(notificationPayload));
De MO-portal-URI waarvandaan de melding wordt verzonden, moet met het beveiligde https- protocol zijn. U kunt de host opgeven, maar niet noodzakelijkerwijs het volledige pad, wat enige flexibiliteit voor de toekomst laat.
In de volgende tabel wordt elk veld in de JSON-nettolading van de melding beschreven:
JSON-veld | Soort | Beschrijving | Voorbeeld |
---|---|---|---|
succes | Booleaans | Is waar als de gebruiker een MO Direct-abonnement heeft aangeschaft. | “success”:true |
iccid | Snaar | Voor een eSIM geeft dit de ICCID aan die de client moet gebruiken voor het gebruik van het MO Direct-abonnement dat is aangeschaft. | iccid:”8988247000100297655” |
activatiecode | Snaar | De activeringscode voor het ophalen van het eSIM-profiel. | “ActivationCode” |
transactionId | Snaar | De transactie-id die de MO-portal heeft ontvangen als een queryparameter toen de portal werd gestart. | transctionId= rRi8OzhI3EiR02nm.2.0.1 |
aankoopresultaat | Snaar | Bevat de details van de gebruikersinteractie met de MO-portal. | |
gebruikersaccount | Enumeratie | Dit veld is vereist. Mogelijke waarden:
|
“userAccount”:”New” |
purchaseInstrument | Enumeratie | Dit veld is vereist. Mogelijke waarden:
|
“purchaseInstrument”:”New” |
lijn | Enumeratie | Dit veld is vereist. Mogelijke waarden:
|
“line”:”New” |
moDirectStatus | Enumeratie | Dit veld is vereist. Mogelijke waarden:
|
“moDirectStatus”:”Complete” |
planName | Snaar | Voor een geslaagde transactie mag dit veld niet leeg zijn en moet deze een beschrijvende plannaam opgeven. Voor een mislukte transactie moet dit veld een lege tekenreeks zijn. | “planName”:”prepaid_3GperMonth” |