Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver hur du skickar användar-till-användare-information (UUI) i en rubrik när du dirigerar samtal med Azure Communication Services Calling SDK:er. Den här funktionen gör det möjligt för användare att skicka metadata om anropet, anroparen eller annan information som är relevant för deras program eller affärslogik.
Azure Communication Services WebJS SDK gör det möjligt för utvecklare att inkludera anpassade kontextuella data (ingår som en rubrik i det anropande objektet) när de dirigerar och dirigerar anrop från en person till en annan. Den här informationen, även kallad UUI-data (användar-till-användare) eller UUI-data för samtalskontroll, är en liten del av data som infogas av ett program som initierar anropet. UUI-data är ogenomskinligt för slutanvändare som ringer ett samtal.
Kontextuell information som stöds innehåller både anpassningsbara sidhuvuden för fri form och den standardiserade UUI SIP-rubriken. När du får ett inkommande anrop inkluderas dessutom anpassade rubriker och UUI i incomingCall nyttolasten.
Alla anpassade kontextdata är ogenomskinliga för anropande SDK- eller SIP-protokoll och dess innehåll är inte relaterat till några grundläggande funktioner.
Utvecklare kan skicka den här kontexten med hjälp av anpassade rubriker, som består av valfria nyckel/värde-par. Dessa par kan ingå i AddParticipant eller Transfer åtgärderna i det anropande SDK:t. När du har lagt till den kan du läsa datanyttolasten när anropet flyttas mellan slutpunkterna. Genom att effektivt leta upp dessa metadata och associera dem med anropet kan utvecklare undvika externa databassökningar och ha innehållsinformationen tillgänglig i anropsobjektet.
Den anpassade samtalskontexten kan överföras till SIP-slutpunkter med hjälp av SIP-protokollet. Den här överföringen innehåller både de anpassade rubrikerna och UUI SIP-standardrubriken. När ett inkommande samtal dirigeras från ert telefoni-nätverk, inkluderas även data från sessionsgränssnittskontrollanten (SBC) i de anpassade rubrikerna och UUI i IncomingCall-händelsenyttolasten.
Det är viktigt att observera att alla anpassade kontextdata förblir transparenta för det anropande SDK:t och inte är relaterade till någon av SDK:ernas grundläggande funktioner när de används i SIP-protokoll. Här är en självstudiekurs som hjälper dig att lägga till anpassade kontextrubriker när du använder WebJS SDK.
Viktigt!
Om du vill skicka UUI-data med hjälp av SDK:et måste du använda den anropande WebJS SDK GA eller den offentliga förhandsversionen 1.29.1 eller senare.
Tekniska parametrar
Anropande SDK har stöd för att lägga till upp till fem (5) anpassade SIP-huvuden och 1 000 anpassade VOIP-huvuden. Dessutom kan utvecklare inkludera en dedikerad användar-till-användare-rubrik som en del av SIP-rubriklistan.
Den maximala längden på en SIP-huvudnyckel är 64 tecken, inklusive prefixet X-MS-Custom. När du lägger till SIP-huvudet i det anropande SDK:et läggs prefixet X-MS-Custom- automatiskt till, vilket du kan se genom att inspektera SIP-huvudet med paketkontroll.
SIP-huvudnyckeln kan bestå av alfanumeriska tecken och några markerade symboler, som inkluderar ., !, %, *, _, +, , ~. - Den maximala längden på SIP-huvudvärdet är 256 tecken. Samma begränsningar gäller när du konfigurerar SIP-huvudena på sessionsgränskontrollanten (SBC). SIP-huvudvärdet kan bestå av alfanumeriska tecken och några markerade symboler som inkluderar =, ;, ., !, %, *, _, +, ~, -.
Den maximala längden på en VOIP-huvudnyckel är 64 tecken. Den maximala längden på VOIP-rubrikvärdet är 1 024 tecken.
När du lägger till dessa anpassade rubriker som utvecklare kan du välja att endast lägga till SIP-huvuden, endast VoIP-huvuden eller båda kan inkluderas.
Kommentar
För närvarande stöds endast tillägg av anpassade rubriker för användar-till-användare-information när ett 1:1-anrop initieras. Det finns för närvarande inte stöd för att skicka rubriker för användar-till-användare-information i gruppanrop. Om du vill kringgå den här begränsningen när du har startat 1:1-anropet kan du lägga till deltagare samtidigt som du behåller användar-till-användarinformationen i anropen.
Mer information om API:et för anpassat kontextgränssnitt finns i API-resursen för anpassad kontext.
Ringa ett anrop med UUI-data (User-to-User Information)
// Setting custom context UUI Headers
const callOptions = {
customContext: {
voipHeaders: [
{key: 'voip-key-1', value: 'voip-value-1'},
{key: 'voip-key-2', value: 'voip-value-2'}
],
sipHeaders: [
{key: 'sip-key-1', value: 'sip-value-1'},
{key: 'sip-key-2', value: 'sip-value-2'}
],
userToUser: 'userToUserHeader',
},
};
});
Läsa och parsa rubriker för användar-till-användare-information i ett anrop
Instansen callAgent genererar en incomingCall händelse när den inloggade identiteten tar emot ett inkommande samtal. Om du vill lyssna på den här händelsen och extrahera sammanhangsberoende information prenumererar du med något av följande alternativ:
let info = '';
callAgent.on("incomingCall", (args) => {
const incomingCall = args.incomingCall;
if (incomingCall.customContext) {
if (incomingCall.customContext.userToUser) {
info += `userToUser: '${incomingCall.customContext.userToUser}'\n`;
}
if (incomingCall.customContext.sipHeaders) {
incomingCall.customContext.sipHeaders.forEach(header => info += `sip: ${header.key}: '${header.value}'\n`);
}
if (incomingCall.customContext.voipHeaders) {
incomingCall.customContext.voipHeaders.forEach(header => info += `voip: ${header.key}: '${header.value}'\n`);
}
}
});