使用 SimpleUser 时如何向 sip.js 提供密码?

问题描述 投票:0回答:1

我正在浏览器中使用 sip.js 通过 WebSocket 连接到 SIP。

这是我正在遵循的指南:https://sipjs.com/guides/simple-user/

但是我的 SIP 服务器需要密码。该指南没有提供任何如何提供 SIP 密码的信息。

我已连接成功,但注册失败:

SIP/2.0 401 Unauthorized Via: SIP/2.0/WSS logger-factory.js:103 Tue Aug 22 2023 13:46:30 GMT+0200 (Central European Summer Time) | sip.user-agent-client | 401 apparently in authentication loop, cannot authenticate overrideMethod @ console.js:213 print @ logger-factory.js:103 genericLog @ logger-factory.js:73 genericLog @ logger.js:39 warn @ logger.js:27 authenticationGuard @ user-agent-client.js:198 receiveResponse @ user-agent-client.js:292 receiveResponse @ user-agent-client.js:373 receiveResponse @ non-invite-client-transaction.js:115 receiveResponseFromTransport @ user-agent-core.js:927 receiveIncomingResponseFromTransport @ user-agent-core.js:247 onTransportMessage @ user-agent.js:1042 transport.onMessage @ user-agent.js:908 onWebSocketMessage @ transport.js:503 eval @ transport.js:259 Show 1 more frame Show less logger-factory.js:103 Tue Aug 22 2023 13:46:30 GMT+0200 (Central European Summer Time) | sip.Registerer | Failed to register, status code 401

sip sip.js sip-over-websocket
1个回答
0
投票

我遇到了同样的问题,阅读和猜测选项我找到了一种方法,希望这可以帮助你。尝试这样:

let server = "wss://sip.company.it";
let options = {
    aor: "sip:[email protected]",
    userAgentOptions: {
        authorizationUsername: "9999",
        authorizationPassword: "mysupersecretpassword"
    },
    media: {
        remote: {
            audio: document.getElementById("remoteAudio")
        }
    }
};

let sip = new SIP.Web.SimpleUser(server, options);

sip.connect();
sip.register();

我在

本手册
找到了userAgentOptions

参数

上面的例子是我让它在浏览器上使用的,如果你想在nodejs上使用我想过程是类似的。

© www.soinside.com 2019 - 2024. All rights reserved.