TextMarshal
This question-and-answer page can explain how TextMarshal works. How do I install TextMarshal? When you are ready to install TextMarshal, a representative will be available to step you through the process. To expedite the process, it is recommended that you prepare in advance the exact name of your practice as registered with SOS, your office's main phone number, the name of your practice as it should appear in messages, the number of providers whose clients should receive reminder messages, the name and Windows version of the computer that will run TextMarshal, and the DNS name of your Windows domain if you have one.

If you would like to set up TextMarshal independently, see the installation guide for advanced users.
How do I mark a client as eligible to receive SMS reminders? Open the client's record in SOS Office Manager. In the extension field of the phone number that will receive the messages, add the 'OK to text' indicator, which is text by default. Capitalization does not matter. If you keep other information in the extension field, separate the indicator from the existing contents with a space. If the extension field contains the indicator word, TextMarshal will consider the number eligible to receive SMS reminders.

Example: If your indicator word is text, SMS reminders will be activated if the extension field contains text, 555 text, no text (note the space), but not if the field contains 555, notext (note the lack of space).

To set the indicator word, use the management tool.
What kind of messages can TextMarshal send? TextMarshal uses several types of messages and lets you set custom content for each: You can set the response for all of these types with the TextMarshal Management tool.
What management messages does TextMarshal support? Privileged users (as set by the "Remote managers" setting in TextMarshal Management) may send special messages to get information on TextMarshal. test produces a simple reply that shows that TextMarshal is running and can reach the Internet SMS gateway. stats returns the current day's number of active appointments, sent reminders, and confirmations.
When does the TextMarshal program run? TextMarshal is installed as a Windows service, so it can run even when no user is logged on. It starts automatically when the system boots. The reminder messages are sent out all at once, but the program keeps running so it can process response messages and update the database.

The SOS server must be running for TextMarshal to be able to send reminder messages, but if the standard sending time has passed, TextMarshal will keep trying to connect and the messages will be sent as soon as the database is accessible. If the SOS database becomes unavailable while appointments are being confirmed (i.e. after the reminders are sent), changes will be queued and written as soon as SOS comes back up.

If you want to manually start or stop the TextMarshal service, use the Start/Stop tab of the TextMarshal Management program.
When does TextMarshal send reminder messages? The time at which reminder messages will be sent out is configurable in TextMarshal Management's settings tab. By default, the SMS blast will occur at 9:00 AM. When it happens, TextMarshal looks in the SOS database for appointments on the next day. If you enable the Weekend jump setting, TextMarshal can send reminders for Monday's appointments on Friday or Saturday rather than Sunday. Once the SMS blast for a day completes, new appointments for that day will not be processed by TextMarshal. If the SMS blast must be postponed (e.g. because the SOS database is not running), TextMarshal will keep trying until the time specified by the Latest send time setting.
What are the system requirements for TextMarshal? The computer that runs TextMarshal must have Windows Vista or newer. The equivalent Windows Server versions work too. TextMarshal requires version 4.5.2 or newer of the .NET Framework. You will be automatically prompted to install that if you do not already have it. The edition of Windows (e.g. Home, Pro, Enterprise) does not matter. It does not matter whether you run TextMarshal on the same computer as the SOS database server.

TextMarshal can work with any SQL Anywhere-based version of the SOS Suite. For best security, use an SOS version published in January 2016 or later. TextMarshal is designed to be used with a network (multi-workstation) installation of SOS, but you can use it with a standalone workstation if you leave an SOS program (even the login form) running during the time TextMarshal should be able to process confirmation messages. You must have both the Scheduler and Office Manager SOS components.
How secure is TextMarshal? The TextMarshal service connects to the database in the exact same way that the SOS client does. If you use network-level encryption, all data that TextMarshal transfers will be encrypted in transit. The password it uses to log in is stored in the configuration file, which is only accessible to administrators of the computer that runs TextMarshal. Therefore, you should ensure that only users who legitimately have full control of your SOS installation have administrative access to the TextMarshal host.

The ClickSend message interface for TextMarshal transfers all data over a secure connection (HTTPS). Be aware that ClickSend stores all inbound and outbound messages so you can see a transcript of all communication. It may be advisable to have clients sign a form (such as the one in the Q&A below) indicating their consent to that practice when setting up SMS reminders for them.

TextMarshal occasionally connects to a license server to verify the validity of your license. TextMarshal never sends any of your data other than the reminder messages to anywhere outside your network.
Is TextMarshal HIPAA-compliant? TextMarshal never sends protected health information to anybody. Your Internet SMS gateway (e.g. ClickSend) will, however, have access to the reminder messages and may store them indefinitely. (TextMarshal is not affiliated with any SMS gateway.) If you use named-provider reminder messages, your clients will understand which organization sent the message, but the type and location of appointment are not discernable to outside observers. For example, Dr. Smith could be a psychologist, but he could also be a dentist, professor, or yoga trainer - only his clients will know for sure.

Nevertheless, it would be advisable to inform your clients that all messages they exchange via TextMarshal will be stored by a third party (your SMS gateway). You could mention that in the paperwork used to sign up for appointment reminder text messages. You might use a form like this, with underlined parts adapted to your configuration:
I would like to receive text message reminders for my appointments at Example Office. I understand that:

Name and date
If you enable diagnostics, some information will be sent to TextMarshal servers informing support of important events. This information never includes client data. It is never sold or marketed to anyone. You can enable or disable diagnostics at any time by using the management tool. If you have questions about the specific behavior of TextMarshal, please use the contact form. What parts of the SOS database does TextMarshal use or change? TextMarshal reads these database tables: appointment details (appt_d), contact information (payors [sic]), providers (providers), and appointment types (appttypes). TextMarshal only writes to the status field of the appointment details table. TextMarshal never alters the structure of your database. No Synergistic products were reverse engineered (i.e. decompiled) in the development of TextMarshal. How can I check whether TextMarshal is online? Send a text message to your dedicated ClickSend number. If TextMarshal is running, you will shortly receive the "unsolicited" or first-contact message response. Remote managers may send the word test to receive an acknowledgement containing the version and database status. If you receive nothing back, make sure that the TextMarshal service is running and that your ClickSend account is set up correctly. How do I diagnose problems with my TextMarshal installation? If TextMarshal is not sending reminder messages, it is likely that it cannot connect to the SOS database. You can test the database connection by opening the management tool, choosing the Settings tab, selecting the Connection string entry near the bottom, and clicking the Test DB link that appears in the lower right. If the connection test fails, make sure the credentials in the Settings tab are valid.

To diagnose other problems, like inability to start, click the Diagnose an issue link that appears at the bottom of the application. TextMarshal Management will scan the log file and report the last problem TextMarshal encountered. Suggested actions will be supplied.

TextMarshal keeps a detailed report of its activity in a file called tmlog in the TextMarshal folder in the root of your C drive. Any error messages contain the cause of the error and technical information. You can also open the log file by clicking the Open log file link in the bottom left of the management tool. If you need help diagnosing or resolving a problem, please contact support and attach this file. How can I make TextMarshal work with other SMS gateways? Software developers may develop an alternate message provider using the TextMarshal API. If you do not have software developers available, please contact support.