HansaChat

Documentation

Canale și membri

Creați, alăturați-vă și arhivați canale și gestionați calitatea de membru cu comenzi idempotente.

Comenzile pentru canale citesc mai întâi starea curentă și converg către ceea ce cereți: repetarea unei comenzi care și-a produs deja efectul reușește cu changed: false în loc să eșueze sau să duplice.

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

Crearea și modificarea canalelor

# 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

Referințele folosesc slug-ul sau ID-ul backend-ului, niciodată potrivirea după numele afișat. Rețineți că redenumirea unui canal îi schimbă slug-ul — referiți-vă la canal după ID în scripturi sau re-rezolvați-l după o redenumire.

Calitatea de membru

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

Mesaje directe

hansa chat channels dm --member 42

Returnează canalul direct existent cu acel utilizator sau îl creează; backend-ul tratează această operație ca idempotentă.

Starea de citire

Citirea canalelor și a mesajelor nu schimbă niciodată ceea ce contează ca citit. Singura comandă care o face este:

hansa chat channels mark-read --channel general

Membrii workspace-ului

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