I App Json konfigurerar du det mesta av din app: fälten som användarna fyller i, de widgets som appen visar i Upsales, de funktioner ett konto behöver för att använda den och några appspecifika alternativ. Du redigerar den under App Json i appredigeraren.
Exempel på en tom JSON-konfiguration:
{ "fields": { "account": [], "user": [] }, "uiElements": {}, "requirements": [] }
Alla egenskaper på toppnivå är valfria. Avsnitten nedan beskriver var och en av dem.
Fält
De inställningar som din app frågar efter. fields.account listar fälten som en administratör fyller i när appen konfigureras för hela kontot. fields.user listar fälten som varje användare fyller i för sig själv, när appen konfigureras per användare. Fälttyper och alternativ beskrivs i Så lägger du till fält i appar.
UI-element
Widgets som din app visar i Upsales. uiElements är ett objekt med vyer som nycklar (till exempel account, contact eller editOrder). Varje vy innehåller ett objekt med positioner som nycklar (till exempel sidebar), och varje position innehåller en array med widgets:
"uiElements": {
"account": {
"sidebar": [ ... ]
}
}
Tillgängliga vyer, positioner och widgettyper beskrivs i UI-widgets.
Krav
En array med de Upsales-funktioner som din app behöver, angivna som funktionsnamn i vanliga strängar:
"requirements": ["groupMail"]
Om ett konto saknar någon av dem visar appens sida Kräver följt av de funktioner som saknas, och appen kan inte konfigureras där. Funktionsnamnen du kan använda listas i Så lägger du till krav för appar.
Flik på företagskortet
Sätt iframe till true för att ge din app en egen flik på företagskortet, där Upsales visar appen i en iframe. Reglaget Show app on Account Card i appredigeraren sätter den här egenskapen åt dig.
"iframe": true
Validera inställningar
Sätt test till true om du vill att Upsales ska skicka värdena som en administratör anger till appens endpoint /testConfig när administratören sparar appens inställningar. Om anropet misslyckas sparas inte inställningarna. userTest gör samma sak för de inställningar som varje användare sparar för sig själv, via appens endpoint /testuserconfig. Upsales skickar bara anropet när appen har fält på den nivån.
"test": true,
"userTest": true
Telefoniapp: Json
En telefoniapp kan ange de här alternativen i ett capabilities-objekt:
- pickupHook: din app skickar pickup-webhooken när ett samtal besvaras. Samtalswidgeten växlar till vyn för pågående samtal, med en samtalstimer, när webhooken kommer fram. Utan det här alternativet växlar widgeten till vyn för pågående samtal 4 sekunder efter att samtalet har startat.
- hangupHook: din app skickar hangup-webhooken när ett samtal avslutas. Samtalswidgeten stängs när webhooken kommer fram.
- noRecordings: sätt till true om din app inte tillhandahåller samtalsinspelningar. Upsales visar då ingen spelare för inspelningar av samtal.
- useCallToLinks: ett länkprefix, till exempel "tel:". När en användare klickar på ett telefonnummer öppnar Upsales också en länk som består av prefixet och numret.
"capabilities": {
"pickupHook": true,
"hangupHook": true
}