ユーザーが通話を受け入れた後、ユーザーのステータス (setPresenceState) を変更するにはどうすればよいですか? その人の状態を「忙しい」に設定する必要があります。
「enterState:active」イベントが発生したときにプレゼンスをビジーに設定できると思いますが、具体的にはどのようにすればよいでしょうか?
ユーザーが通話を受け入れた後、ユーザーのステータス (setPresenceState) を変更するにはどうすればよいですか? その人の状態を「忙しい」に設定する必要があります。
「enterState:active」イベントが発生したときにプレゼンスをビジーに設定できると思いますが、具体的にはどのようにすればよいでしょうか?
私たちのドキュメントでは、通話中にプレゼンス状態を自動的に「ビジー」に設定すると述べていますが、コードを見ると、現在それを行っていないようです。私はそれを修正しますが、それまでの間、これを自分で行う方法の例を示します (他の動作が必要な場合に備えて)。
vline.MediaSession
一般的な考え方は、が状態になったときにプレゼンス状態をビジーに設定することactive
です。この例でclient
は、 はログイン済みで、vline.Client
はログイン後に返されsession
たものと見なされます。vline.Session
client.on('add:mediaSession', function(event) {
var mediaSession = event.target;
mediaSession.on('enterState:active', function() {
session.setPresence('busy');
}, this);
mediaSession.on('enterState:closed', function() {
session.setPresence('online');
}, this);
}, this);
PresenceStates の「ビジー」は機能しません。やりたいことは何もありません。代わりに「do_not_disturb」PresenceStates を使用し、「do_not_disturb」の状態をリセットします。メディア セッションが「切断」またはクライアントによって中断された場合でも同様です。または人。
わかりますか?
の代わりにこのコードを追加します。
//------------------------------------------------ ----------------
client.on('add:mediaSession', function(event) {
var mediaSession = event.target;
mediaSession.on('enterState:active', function() {
session.setPresence('do_not_disturb');
}, this);
mediaSession.on('enterState:closed', function() {
session.setPresence('online');
}, this);
mediaSession.on('enterState:outgoing', function() {
session.setPresence('do_not_disturb');
}, this);
mediaSession.on('enterState:incoming', function() {
session.setPresence('do_not_disturb');
}, this);
mediaSession.on('enterState:disconnected', function() {
session.setPresence('online');
}, this);
}, this);
//------------------------------------------------ ----------------
「do_not_disturb」の状態をリセットするには、どのようなイベントが発生したか、クライアントまたは人がセッションを中断した場合でも、次のコードを の後に追加します。
// ユーザー名に関連付けられた人物オブジェクトを取得します: session.getPerson(userId).done(function(person) {
session.setPresence('online');
( vline.MediaSession はアクティブ状態であると見なされます。 session は、ログイン後に返された vline.Session であると見なされます。)
すべて正常に動作し、ビデオ通話を送信すると、誰も他のビデオ通話を送信できなくなります