/// <summary>
        /// VisemeReached handler, called by speech synthesizer
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        void VisemeReachedHandler(object sender, VisemeReachedEventArgs args)
        {
            if (args.Error != null || args.Cancelled)
            {
                return;
            }

            VisemeNotification notification = new VisemeNotification();

            notification.AudioPosition = args.AudioPosition;
            notification.Duration      = args.Duration;
            notification.Emphasis      = args.Emphasis;
            notification.NextViseme    = args.NextViseme;
            notification.Viseme        = args.Viseme;

            VisemeNotify notify = new VisemeNotify();

            notify.Body = notification;

            SendNotification <VisemeNotify>(_subMgrPort, notify);
        }
 public IEnumerator <ITask> VisemeNotifyHandler(VisemeNotify notify)
 {
     PostActionNotSupported(notify);
     yield break;
 }