Wednesday, December 28, 2016

CSD Noise-Canceling Headset

The NCH is up on Marketplace at last, and will be in the vendors shortly.  There seems to be debate over the correct spelling of "canceling" - whether it should have one or two 'l's, so I'll continue to refer to it as the NCH.(which could also be an acronym for "No Chat or Hearing").

Stand-alone use

Out of the box, the NCH acts very much like any other SL restraint - clicking on it gives a menu to the wearer or to the avatar named as the NCH's "owner", and a helpful message (but no menu) to anyone else.  The wearer's and owner's menus are very similar, except that only the owner's menu allows for resizing the headset, and for changing the owner (if the NCH isn't locked on).  The bulk of both menus is for setting restrictions.

The supported restrictions on communication are:
  • Silent - wearer may not speak in local
  • IM block - wearer may not use IM
  • Deaf - wearer may not hear local chat
  • Lock - The headset may not be removed
If an owner has been set, then the owner is exempt from the IM block and Deaf restrictions - you can always hear your owner's speech or IMs.  Both the wearer and the owner can set restrictions.  The wearer can remove restrictions they have set themselves, but they cannot remove restrictions set by the owner.

The headset can be set to be invisible.  Headset visibility is considered a restriction, so if the owner has selected "Visible", the wearer cannot make the headset invisible;  if the owner makes the headset invisible, the wearer can make it it visible or invisible at will.

The Resize button allows the wearer to make the headset larger or smaller, either across the head, or up and down.  "Std Height" and "Std Width" will reset the height and width to their initial values.

In addition, the NCH can relay chat spoken by the wearer in local to either IM to their owner, or to Mesmerizer chat (if a network-enabled Mesmerizer is worn) even if the Silent restriction is in effect..  When relaying is enabled, the LED on the earpiece that holds the microphone boom will light, and the color will indicate whether the wearer's chat is being relayed to IM (red), to Mesmerizer chat (blue), or to both (green).  Relaying to IM and to Mesmerizer chat are also considered restrictions, so they can be enabled by either the wearer or the owner, but the wearer cannot disable them if they were enabled by the owner.


Control via a Mesmerizer

If the wearer uses a CSD CHAOS Mesmerizer, then all the controls described above can be accessed from the Mesmerizer (which acts as if it were the owner, in the sense that the wearer will not be able to remove a restriction set via the Mesmerizer).  In addition, the Mesmerizer can change the Owner setting of the NCH (this operation is not available to an owner via the menu).  All these operations use the pansend or pansendpars Mesmerizer commands.

The NCH will identify itself as a PAN station called "headset".  The Mesmerizer pandir command will show the stations currently logged on to the PAN.

The following Mesmerizer commands are used to control the NCH:

CommandDescription
pansend headset lockLock the headset
pansend headset unlockUnlock the headset
pansend headset showMake the headset visible
pansend headset hideMake the headset invisible
pansend headset silentApply the Silent restriction; prohibit the wearer from speaking in local
pansend headset nosilentRemove the Silent restriction; allow the wearer to speak in local
pansend headset imrelayRelay the wearer's local speech via IM to their owner
pansend headset noimrelayStop relaying the wearer's local speech via IM
pansend headset mesrelayRelay the wearer's local speech to Mesmerizer chat
pansend headset nomesrelayStop relaying the wearer's local speech to Mesmerizer chat
pansend headset blockimPrevent the wearer from using IM (except to their owner)
pansend headset noblockimPermit the wearer to use IM
pansend headset deafPrevent the wearer from hearing local chat
pansend headset nodeafAllow the wearer to hear local chat
pansend headset noownerRemove the owner
pansendpars headset owner <key>Set the avatar whose key is <key> as the owner
pansendpars headset status <key>Tell avatar <key> the current state of the headset
pansendpars headset help <key>Send help on the headset commands to avatar <key>


Since the Mesmerizer can be configured to work grid-wide, using the NCH with a Mesmerizer allows the NCH to be controlled from anywhere on the grid (or even from the web). This means that you can force-wear your sub's NCH remotely, and then have it apply whatever restrictions you like.


Uses

The headset's main purpose is to impose controls on a sub when you're not present, reinforcing your control over them.  However there are a number of other interesting use-cases.

If you have a number of subs who share a single Communications Hub (or whose different Hubs are bridged together via The Enforcer), then the NCH can be serve as an easy-to use way for the subs to communicate with one another, simply by enabling Mesmerizer chat relay.  This will allow all subs to hear one another's speech in local.  Turning on the Silent restriction will mean that their speech is redirected to Mesmerizer chat as opposed to being copied there, allowing the subs to communicate with one another relatively privately.  This use-case is something that the sub may want to employ for their own convenience.

Setting IM Relay, Silent and Deaf restrictions together provides for an interesting "isolation" effect.  The sub will be able to communicate with you in chat (they will be able to hear your chat, and you will receive anything they try to say as an instant message).  However, nobody around will hear what the sub is saying, and the sub will not be able to hear anyone but you.



Thursday, December 15, 2016

Mesmerizer 0.99e

I was expecting the next release of the Mesmerizer to be focused on the new RLVa features, but a nasty bug cropped up, for which I want to get a fix out as soon as possible.  The bug is in the Mesmerizer initialization, and the vast majority of people never encounter it.  However, a small number of users have found that their brand new Mesmerizer issues an error message during initialization and then refuses to work.  I have had three reports of this, and it turns out to be a timing bug. 0.99e contains a fix for it.  Now, the Mesmerizer initializes itself the very first time its worn, and usually has no reason to re-initialize, so if your Mesmerizer is working, then you've avoided this bug.

There is one piece of new functionality in 0.99e.  In a post in January of this year, I introduced the textcolor command, which allows you to specify the color that the text command will use for on-screen text.  I added this command because my testing found that some colors are more readable than others, but which colors are best varies tremendously from person to person.  So allowing you to set your preferred color was my first stab at improving readability.  However, whatever color you pick is going to be hard to read against a similar colored background.  So 0.99e has made a slight enhancement to the textcolor command - as an alternative to specifying a color (either by name or as an RGB vector) you can now specify the keyword cycle, which will make the text rapidly cycle through a number of colors, which should make it stand out against any relatively static background.  Along with the color cycling, the text command has been enhanced to allow for multi-line text, with line-breaks indicated by a "\n" character sequence (backslash followed by "n").  While this may seem a minor tweak, the use of vertical spacing can be quite effective in trances.  With the new ability to "stack" text vertically, I have also significantly extended the time for which displayed text remains on-screen.  If you want it to disappear earlier, just use either use the text command again with an empty string as a parameter: text "", or you can use the clear command, which will also remove any images that are being displayed.

This work actually came out of another product I have under development, the Focus Couch, which I'll describe in a post in the near future.  Mesmerizer 0.99e should be in vendors and on Marketplace tomorrow, and going out to previous purchasers at the same time.

12/23 Edit to the above - Mesmerizer 0.99e is in the vendors and up on Marketplace, but I've decided not to push it out to previous purchasers.  The bugfix, while important, only affects initialization, and I've already given replacements for anyone who ran into that.  The new functionality around the text command, while nice, isn't worth bothering everyone with an update.  If you have an earlier version and want to upgrade to 0.99e, just send me an IM or notecard and I'll get a replacement out to you, otherwise wait until the next update, which should be much more significant.