Switch 2: Chat services: Difference between revisions

 
(4 intermediate revisions by the same user not shown)
Line 18: Line 18:
| 10 ||  
| 10 ||  
|-
|-
| 11 ||  
| 11 || [[#GetRoomInfo|GetRoomInfo]]
|-
|-
| 14 ||  
| 14 || GetLocalCameraImageProcessingMode
|-
|-
| 15 ||  
| 15 || SetLocalCameraZoomMagnification
|-
|-
| 16 ||  
| 16 || GetLocalCameraZoomMagnification
|-
|-
| 20 ||  
| 20 ||  
|-
|-
| 21 ||  
| 21 || SetScreenSharingDisallowList
|-
|-
| 22 ||  
| 22 || ClearScreenSharingDisallowList
|-
|-
| 23 ||  
| 23 || SetScreenSharingMode
|-
|-
| 40 ||  
| 40 || GetRealtimeAudioLevels
|-
|-
| 51 ||  
| 51 || CalculateRequiredAudioStreamWorkBufferSize
|-
|-
| 60 ||  
| 60 || SetSharingKey
|-
|-
| 61 ||  
| 61 || ClearSharingKey
|-
|-
| 70 ||  
| 70 ||  
Line 54: Line 54:
== Cmd2 ==
== Cmd2 ==
No input, returns an [[#IUserLayoutCustomizationShimScopedObject|IUserLayoutCustomizationShimScopedObject]].
No input, returns an [[#IUserLayoutCustomizationShimScopedObject|IUserLayoutCustomizationShimScopedObject]].
== Cmd10 ==
No input, returns an output u8.
== GetRoomInfo ==
Takes a type-0x1A output buffer containing a [[#RoomInfo|RoomInfo]].
Official sw also exposes this as GetChattingUid, with data being extracted from the cmd output.
== Cmd70 ==
Takes a 0x10-byte input struct, returns an output u8.
Official sw uses this prior to launching the relevant applet with ForChatStart (applet is only launched if cmd output is non-zero).
== Cmd71 ==
No input, returns an output u8.
Official sw uses this prior to launching the relevant applet with ForCameraSharingGuide (applet is only launched if cmd output is non-zero).
== Cmd72 ==
Takes an input u8, returns an output u8.
Official sw uses this prior to launching the relevant applet with ForCameraConfiguration (applet is only launched if cmd output is non-zero).


== IUserShimScopedObject ==
== IUserShimScopedObject ==
Line 97: Line 120:
=== Cmd1 ===
=== Cmd1 ===
No input, returns an output Event handle with EventClearMode=0.
No input, returns an output Event handle with EventClearMode=0.
This Event is used by official sw IsChatting.


=== AttachToRoomInfoChangedEvent ===
=== AttachToRoomInfoChangedEvent ===
Line 124: Line 149:
| 11 ||  
| 11 ||  
|-
|-
| 12 || EndFullScreenWithLocalCameraAvailableSection
| 12 || [[#EndFullScreenWithLocalCameraAvailableSection|EndFullScreenWithLocalCameraAvailableSection]]
|-
|-
| 13 ||  
| 13 ||  
Line 132: Line 157:


=== Initialize ===
=== Initialize ===
Takes a PID, an input u64 pid_reserved, no output.


=== Cmd1 ===
=== Cmd1 ===
Line 137: Line 163:


Used by official sw immediately after [[#Initialize|Initialize]].
Used by official sw immediately after [[#Initialize|Initialize]].
=== Cmd10 ===
No input/output.
=== Cmd11 ===
No input, returns an output u64.
=== EndFullScreenWithLocalCameraAvailableSection ===
No input/output.
=== Cmd13 ===
No input, returns an output u8 and a 0x10-byte struct.
=== Cmd20 ===
No input, returns an output u8.


= chat:ps =
= chat:ps =
Line 197: Line 238:


= chat:set =
= chat:set =
= RoomInfo =
This is "nn::chat::RoomInfo".
This is a 0xF0-byte struct.
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0 || 0x18 ||
|-
| 0x18 || 0x10 || ChattingUid
|-
| 0x28 || 0xC8 ||
|}


[[Category:Services]]
[[Category:Services]]