using turboExchange; //Required for .NET extenstions
static void SendJob()
{
//Create a new Recovery Job class
var recoveryJob = new turboExchange.Messages.turboMessage.RecoveryJob();
//Specify the type of message
recoveryJob._messageEvent = turboExchange.Messages.turboMessage.RecoveryJob.MessageEvent.NewJob;
//Fill in the fields
recoveryJob._jobNumber = "ABC123";
recoveryJob._jobDateTime = DateTime.Now.GetProtoDateTime();
recoveryJob._agentReference = "AgentRef";
recoveryJob._clientName = "Mr Jones";
recoveryJob._driverLocation = "J11 M27";
recoveryJob._faultDescription =
recoveryJob._vehicle._make = "Ford";
recoveryJob._vehicle._model = "Capri";
recoveryJob._vehicle._registration = "ENG717T";
recoveryJob._vehicle._colour = "Red";
recoveryJob._vehicle._engine = "1.6";
//recoveryJob. etc....
//recoveryJob. etc....
//recoveryJob. etc....
//Remarks use a message type called "timedTextField". These are appended to a List<> field
var textField = new turboExchange.Messages.turboMessage.RecoveryJob.timedTextField();
textField._dateTime = DateTime.Now.GetProtoDateTime();
textField._text = "Remarks go here";
recoveryJob._remarks.Add(textField);
//Notes are similar to Remarks, and are normally kept private.
var textField2 = new turboExchange.Messages.turboMessage.RecoveryJob.timedTextField();
textField._dateTime = DateTime.Now.GetProtoDateTime();
textField._text = "Notes go here - these are normally private, and only transfered within the same organisation";
recoveryJob._notes.Add(textField);
//Create a new Message wrapper (the wrapper is a packet, containing the Recovery Job to be sent)
var wrap = new turboExchange.Messages.MessageWrapper();
wrap._destinationID = 9123456; //The "TurboID" of your recipiant
wrap._messageFormat = turboExchange.Messages.MessageWrapper.MessageFormat.ProtoMessage; //This is the default for structured messages (no need to specify)
wrap._messageType = turboExchange.Messages.MessageWrapper.MessageType.turboRecoveryJob; //Type of message being sent (a recovery job)
//Serialize, and attach the recovery job to the wrapper payload
wrap._payload = recoveryJob.SerializeToProtoBytes();
wrap._receiptIndex = 0; //Optional - if you want a message back to confirm delivery, set a unique number.
wrap._storeForwardMins = 2; //Optional - if destination unavaiable, keep the message for x minutes before a fail. (default is 2 minutes)
//Send Message
turboClient.Send(wrap);
}