mwsepeer Güncelle

saqut 2025-12-07 13:34:23 +03:00
parent 59df9607f2
commit 113dbd3c5d
1 changed files with 70 additions and 2 deletions

@ -150,7 +150,7 @@ mwse.on('end/pair', peer => {
``` ```
### Accept pair / Reject pair / Endpair ## Accept pair / Reject pair / Endpair
```js ```js
// Gelen pair isteklerini genelde dinleyebilirsiniz // Gelen pair isteklerini genelde dinleyebilirsiniz
@ -196,4 +196,72 @@ for(let peer of await room.fetchPeers()){
// room odasındaki herkes pair-auth onaylanmıştır // room odasındaki herkes pair-auth onaylanmıştır
``` ```
Bunun yan etkisi olara odaya katılan herkese bu peer tarafından onaylandığı haberide gönderilecektir Bunun yan etkisi olara odaya katılan herkese bu peer tarafından onaylandığı haberide gönderilecektir
## Peer info / Peerlerin meta verisi
MWSE sistemi her peeri tanımlamak için tekil `socketId` verisi kullanır ancak reelde bu geliştiriciler için yeterli değildir ve ayrıca peerlerin birbirlerini tanımlamak için mesaj iletmesi her zaman doğru bir fikir olmayabilir.
Bazı senaryolarda bir peerin adı soyadı avatarı gibi veriler, bazı senaryolarda ise token, gate, user_id gibi sistemsel veriler paylaşılabilir.
Bu info sistemi **`pair-auth` sisteminin dışında olduğu** için herkese açık bir metaveridir, gizliliğin önemli olduğu alanlarda kullanmayın !
Kendi bilgilerinizi belirlemek ve değiştirmek için info arayüzünü kullanabilirsiniz
```js
// Kendi peer objeniz
let myself = mwse.peer('me');
// Kendi verilerinize yazmak için set kullanın
await myself.info.set("name","John");
await myself.info.set("surname","Smith");
// Kendi verinizi almak için get kullanın
await myself.info.get("name") // --> John
// get parametresine veri sağlamamanız obje halinde veriyi almanıza sebep olur
await myself.info.get() // --> {name:"John",surname:"Smith"}
```
Başka bir peerin infosuna erişme
```js
// Farklı bir peer
let myself = mwse.peer('6cb11af8-caf7-419a-89b9-956eddd74277');
// Kendi verinizi almak için get kullanın
await myself.info.get("name") // --> John
// get parametresine veri sağlamamanız obje halinde veriyi almanıza sebep olur
await myself.info.get() // --> {name:"John",surname:"Smith"}
```
#### Önemli not
Farklı bir peerin metaverileri sizin için readonlydir ve eğer değiştirmeye çalışırsanız MWSE bunu kendi peerinizin verisini değiştirme olarak yorumlar yani aşağıdaki iki kod aynı şeyi yapar
```js
mwse.peer('6cb11af8-caf7-419a-89b9-956eddd74277').info.set("value", 0)
mwse.peer('me').info.set("value", 0)
```
Farklı bir peerin infosunun değişmesi sizin için anlık bildirilmesi gereken bir şey ise MWSE bunun içinde destek sağlar zira eşleştiğiniz tüm pairlerin bilgilerin değişimi zaten size anlık güncellenir ve ayrıca sizin infonuzu değiştirmeniz tüm eşleşmelerinize anlık bildirilir
```js
let peer = mwse.peer('6cb11af8-caf7-419a-89b9-956eddd74277');
peer.on('info', (name, value) => {
peerin infosundaki `name` değeri `value` olarak belirlendi
})
```