HansaChat

Documentation

Kanaler och medlemmar

Skapa, gå med i och arkivera kanaler samt hantera medlemskap med idempotenta kommandon.

Kanalkommandona läser först det aktuella tillståndet och konvergerar mot det ni ber om: upprepas ett kommando som redan har fått effekt lyckas det med changed: false i stället för att misslyckas eller duplicera.

hansa chat channels list                       # your channels
hansa chat channels browse                     # public channels you have not joined
hansa chat channels get --channel general      # one channel by slug or ID

Skapa och ändra kanaler

# Return "Marketing" and create it only if it does not exist yet
hansa chat channels ensure --name Marketing --type public

# Rename or change the type; a no-op when nothing changes
hansa chat channels set --channel marketing --name Marketing EU --type private

# Archive a channel (idempotent)
hansa chat channels archive --channel marketing

Referenserna använder backendens slug eller ID, aldrig matchning på visningsnamn. Observera att en namnändring ändrar en kanals slug — referera till kanalen via dess ID i skript, eller slå upp den på nytt efter en namnändring.

Medlemskap

hansa chat channels join --channel general     # no-op when already a member
hansa chat channels leave --channel general    # no-op when not a member
hansa chat channels members --channel general  # list channel members
hansa chat channels invite --channel general --member 42

Direktmeddelanden

hansa chat channels dm --member 42

Returnerar den befintliga direkta kanalen med den användaren eller skapar den; backenden behandlar åtgärden som idempotent.

Lästillstånd

Att läsa kanaler och meddelanden ändrar aldrig vad som räknas som läst. Det enda kommando som gör det är:

hansa chat channels mark-read --channel general

Arbetsytans medlemmar

hansa chat members list --query igor   # search members by text
hansa chat members get --member 42     # one member by user ID