Οι εντολές για κανάλια διαβάζουν πρώτα την τρέχουσα κατάσταση και συγκλίνουν σε αυτό που ζητάτε: η επανάληψη μιας εντολής που έχει ήδη εφαρμοστεί πετυχαίνει με changed: false αντί να αποτύχει ή να δημιουργήσει διπλότυπο.
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
Δημιουργία και αλλαγή καναλιών
# 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
Οι αναφορές χρησιμοποιούν το slug ή το ID του backend και ποτέ αντιστοίχιση με το εμφανιζόμενο όνομα. Σημειώστε ότι η μετονομασία ενός καναλιού αλλάζει το slug του — αναφέρετε το κανάλι με το ID στις δέσμες ενεργειών ή επαναπροσδιορίστε το μετά από μετονομασία.
Συμμετοχή
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
Άμεσα μηνύματα
hansa chat channels dm --member 42
Επιστρέφει το υπάρχον άμεσο κανάλι με αυτόν τον χρήστη ή το δημιουργεί· το backend αντιμετωπίζει αυτή την ενέργεια ως ταυτοδύναμη.
Κατάσταση ανάγνωσης
Η ανάγνωση καναλιών και μηνυμάτων δεν αλλάζει ποτέ τι θεωρείται αναγνωσμένο. Η μόνη εντολή που το κάνει είναι:
hansa chat channels mark-read --channel general
Μέλη του χώρου εργασίας
hansa chat members list --query igor # search members by text
hansa chat members get --member 42 # one member by user ID