Server comes with a command called RoomsAdminTool located at /Applications/Server.app/Contents/ServerRoot/usr/bin/RoomsAdminTool. This tool can list available rooms using a -l flag:
You can also create new rooms, using the following format, where krypted is the name of the room, the persistent option means the room is, er, persistent. The description option indicates a description used for the room.
RoomsAdminTool -n krypted -c persistent yes description "This room is for friends of krypted only”
To then delete the room, use the -d option:
RoomsAdminTool -n krypted -d
Add the -v to do it all verbosely. There are lots of other options as well, as follows (from the man page):
Valid Configuration Keys and Values:
|description||string||A short description for the room|
|password||string||Define a password for room entry. An empty string implies no password required.|
|membersOnly||yes | no||Only room members are allowed to enter the room.|
|subjectLocked||yes | no||Are non-moderators and non-admins prevented from setting the room subject|
|logFormat||Disabled | Text | XHTML||Disable room logging, or enable it using Text or XHTML.|
|maxUsers||integer; 0 for unlimited||Set the maximum allowed occupants for the room.|
|moderated||yes | no||Make the room "moderated".|
|nonAnonymous||yes | no||If "yes", only moderators/owners can discover occupants' real JIDs.|
|persistent||yes | no||Persistent rooms stay open until they are explicitly destroyed and their configuration survives service restarts, unlike non-persistent rooms.|
|privateMessagesAllowed||yes | no||Whether or not occupants can exchange private messages within the room.|
|roomPublic||yes | no||Defines whether the room be discovered by anyone|
|subject||string||Set a room subject/topic|
|usersCanInvite||yes | no||Defines whether occupants can invite other users to enter the room|
|addOwner||valid JabberID||Make the specified user a room owner (ex.: firstname.lastname@example.org). Rooms can have multiple owners.|
|removeOwner||valid JabberID||Remove the specified user from the room owner list|
|addAdmin||valid JabberID||Make the specified user a room admin|
|removeAdmin||valid JabberID||Remove the specified user from the room admin list|
|addMember||valid JabberID||Make the specified user a room member|
|removeMember||valid JabberID||Remove the specified user from the room member list|
|addOutcast||valid JabberID||Make the specified user a room outcast (banned from public rooms)|
|removeOutcast||valid JabberID||Remove the specified user from the room outcast list|
Ultimately, if you’d like to do Student Information System (SIS) integration, or wait for an AD/OD group and then programmatically generate rooms, this is how you’d do it.
krypted November 7th, 2016
Posted In: Mac OS X Server
There is a little tool in OS X called opendiff. This command can be used to bring up a quick and dirty graphical view of changes in a file. For example, if you run opendiff followed by two file names, you’ll see what’s different in the two files and what’s the same:
opendiff test test1
The result then looks as follows.
Note that in the above screenshot, a and b are in white lines and the others are grey, as those are consistent in the two files and the c has been removed and replaced with the four lines on the left. In larger files, this is pretty useful as it provides quick insight into what is different between two files, like what changed in a script between two different versions.
krypted August 27th, 2016
Posted a new swift command line tool to accept serial number data from an Apple device and respond with warranty information about a device at https://github.com/krypted/swiftwarrantylookup. This is based on pyMacWarranty, at https://github.com/pudquick/pyMacWarranty.
krypted March 16th, 2016