Sip.js: كتم صوت الميكروفون المحلي

تم إنشاؤها على ١٣ ديسمبر ٢٠١٧  ·  11تعليقات  ·  مصدر: onsip/SIP.js

أهلا،
هل هناك أي طريقة لكتم صوت الميكروفون المحلي؟
يبدو أن Session.mute () يعمل.
تحياتي الحارة،
بجاتا

question

التعليق الأكثر فائدة

في إصدار 0.15.0 ، اتضح أن يتم القيام به على هذا النحو

const pc: any = this.session.sessionDescriptionHandler.peerConnection
    pc.getSenders().forEach((stream: any) => {
      stream.track.enabled = false
    })

ال 11 كومينتر

تحتاج إلى إخراج المسارات المحلية من اتصال النظير ثم كتم صوت المسارات. هذا خارج نطاق SIP.js. راجع وثائق معالج وصف الجلسة للحصول على معلومات حول كيفية الحصول على اتصال النظير.

لقد قمت بحلها على النحو التالي:

session.getLocalStreams()[0].getAudioTracks()[0].stop()

session.getLocalStreams غير متوافق مع الإصدار 0.8+. تحتاج إلى الحصول على اتصال النظير وإخراج التدفقات من اتصال النظير.

فكيف يمكنني أن أفعل هذا؟

تحتاج إلى إخراج المسارات المحلية من اتصال النظير ثم كتم صوت المسارات. هذا خارج نطاق SIP.js. راجع وثائق معالج وصف الجلسة للحصول على معلومات حول كيفية الحصول على اتصال النظير.

لقد فعلت ذلك بهذه الطريقة

///mute
var pc = session.sessionDescriptionHandler.peerConnection;
pc.getLocalStreams().forEach(function (stream) {
    stream.getAudioTracks().forEach(function (track) {
        track.enabled = false;
    });
});

لقد فعلت ذلك بهذه الطريقة

///mute
var pc = session.sessionDescriptionHandler.peerConnection;
pc.getLocalStreams().forEach(function (stream) {
    stream.getAudioTracks().forEach(function (track) {
        track.enabled = false;
    });
});

لأي شخص يجد هذا الآن:
يقول Chrome أنه لا يجب استخدام peerConnection.getLocalStreams() بعد الآن. بدلا من ذلك استخدم:
peerConnection.getSenders() و peerConnection.getReceivers()

في إصدار 0.15.0 ، اتضح أن يتم القيام به على هذا النحو

const pc: any = this.session.sessionDescriptionHandler.peerConnection
    pc.getSenders().forEach((stream: any) => {
      stream.track.enabled = false
    })

شكرا لك koshelevvasya التي عملت لي!

آسف تأخرت على الحفلة. سؤال: كيف يمكنني ، بصفتي النظير البعيد ، أن أعرف أن النظير المحلي قد كتم صوت الميكروفون الخاص به حتى يمكنني تحديث الحالة من نهايتي؟ هل سيتم إطلاق أي حدث عند تمكين / تعطيل المسار كما هو مذكور بواسطة koshelevvasya أعلاه؟

@ thanh-mel ، لا يحتاج النظير البعيد إلى معرفة أن الميكروفون مكتوم. ربما تحتاج إلى استخدام تعليق؟

سيتم إطلاق أي حدث عند تمكين / تعطيل المسار

في تجربتي ، نعم. لأنه يتم باستخدام JavaScript

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات