開発者ドキュメントクックブックJavaScript SDKリモートの Member を対象とした操作

リモートの Member を対象とした操作

リモートの Member を対象として、 subscribe 、Publication のミュート、metadata の更新の各操作を実行できます。 なお、リモートの Member を対象とした Publication のアンミュート、および publish の操作は実行できません。

リモートの Member を対象とした操作を行う際は、SkyWay Auth Token による適切な権限付与が行われている必要があります。 Member「alice」が Member「bob」に対して操作するケースを例に、SkyWay Auth Token による権限付与について説明します。

リモートの Member に Publication を subscribe させる

alice が利用する SkyWay Auth Token の Member リソースに、以下の権限が付与されている必要があります。

// SkyWay Auth Token version 1 または 2 の場合 scope: { app: { // 省略 channels: [ { // 省略 members: [ { name: "bob", // 省略 subscription: { actions: ["create"] } } ], }, ] } }
// SkyWay Auth Token version 3 の場合 scope: { // 省略 rooms: [ { // 省略 member: { name: "bob", methods: ["subscribe"] } } ] }

SFU を利用している場合は、alice だけでなく bob が利用する SkyWay Auth Token においても SFU を利用するための権限が付与されている必要があります。

リモートの Member が publish している Publication をミュートする

alice が利用する SkyWay Auth Token の Member リソースに、以下の権限が付与されている必要があります。

// SkyWay Auth Token version 1 または 2 の場合 scope: { app: { // 省略 channels: [ { // 省略 members: [ { name: "bob", // 省略 publication: { actions: ["disable"] }, } ], }, ] } }
// SkyWay Auth Token version 3 の場合 scope: { // 省略 rooms: [ { // 省略 member: { name: "bob", methods: [] } } ] }

リモートの Member の metadata を更新する

alice が利用する SkyWay Auth Token の Member リソースに、以下の権限が付与されている必要があります。

// SkyWay Auth Token version 1 または 2 の場合 scope: { app: { // 省略 channels: [ { // 省略 members: [ { name: "bob", actions: ["updateMetadata"], // 省略 } ], }, ] } }
// SkyWay Auth Token version 3 の場合 scope: { // 省略 rooms: [ { // 省略 member: { name: "bob", methods: ["updateMetadata"] } } ] }