Beispiel #1
0
 public void ptt_SignOutComplete()
 {
     BeginInvoke((MethodInvoker) delegate
     {
         this.Text = "Zello client #" + ZelloClientId.ToString();
         tmUpdateOnlineContacts.Stop();
         if (null != contactsMesh)
         {
             System.Runtime.InteropServices.Marshal.FinalReleaseComObject(contactsMesh);
         }
         contactsMesh = null;
         // Destroy hidden main window if sign out was initiated earlier
         // when user tried to exit while Loudtalks Mesh control was signed into network.
         if (bExitOnSignout)
         {
             if (ptt != null)
             {
                 ptt = null;
             }
             Close();
         }
         else
         {
             UpdateMenuState();
             UpdateControlsState();
         }
     });                 // Sign out process has finished
 }
Beispiel #2
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            cbSendAudioFile.ItemCheck += new ItemCheckEventHandler(cbSendAudioFile_ItemCheck);
            cbForwardAudio.ItemCheck  += new ItemCheckEventHandler(cbForwardAudio_ItemCheck);

            tbSendWavPath.Enter    += new EventHandler(tbSendWavPath_Enter);
            tbSendWavPath.Leave    += new EventHandler(tbSendWavPath_Leave);
            tbSendWavPath.Text      = "Select *.wav file";
            tbSendWavPath.ForeColor = Color.Gray;

            tbSaveMessagesPath.Enter    += new EventHandler(tbSaveMessagesPath_Enter);
            tbSaveMessagesPath.Leave    += new EventHandler(tbSaveMessagesPath_Leave);
            tbSaveMessagesPath.Text      = "Select folder to save wav files";
            tbSaveMessagesPath.ForeColor = Color.Gray;

            try
            {
                ptt = new ZelloPTTLib.ZelloClient();
            }
            catch (System.Runtime.InteropServices.COMException)
            {
                ptt = null;
            }
            catch (Exception)
            {
                ptt = null;
            }
            bExitOnSignout = false;
            if (ptt != null)
            {
                // Wire Loudtalks Mesh control events
                ptt.SignInStarted              += new ZelloPTTLib.IZelloClientEvents_SignInStartedEventHandler(ptt_SignInStarted);
                ptt.SignInSucceeded            += new ZelloPTTLib.IZelloClientEvents_SignInSucceededEventHandler(ptt_SignInSucceeded);
                ptt.SignInFailed               += new ZelloPTTLib.IZelloClientEvents_SignInFailedEventHandler(ptt_SignInFailed);
                ptt.SignInRequested            += new ZelloPTTLib.IZelloClientEvents_SignInRequestedEventHandler(ptt_SignInRequested);
                ptt.SignOutStarted             += new ZelloPTTLib.IZelloClientEvents_SignOutStartedEventHandler(ptt_SignOutStarted);
                ptt.SignOutComplete            += new ZelloPTTLib.IZelloClientEvents_SignOutCompleteEventHandler(ptt_SignOutComplete);
                ptt.GetCanSignIn               += new ZelloPTTLib.IZelloClientEvents_GetCanSignInEventHandler(ptt_GetCanSignIn);
                ptt.MessageInBegin             += new ZelloPTTLib.IZelloClientEvents_MessageInBeginEventHandler(ptt_MessageInBegin);
                ptt.MessageInEnd               += new ZelloPTTLib.IZelloClientEvents_MessageInEndEventHandler(ptt_MessageInEnd);
                ptt.MessageOutBegin            += new ZelloPTTLib.IZelloClientEvents_MessageOutBeginEventHandler(ptt_MessageOutBegin);
                ptt.MessageOutEnd              += new ZelloPTTLib.IZelloClientEvents_MessageOutEndEventHandler(ptt_MessageOutEnd);
                ptt.MessageOutError            += new ZelloPTTLib.IZelloClientEvents_MessageOutErrorEventHandler(ptt_MessageOutError);
                ptt.AudioMessageInStart        += new ZelloPTTLib.IZelloClientEvents_AudioMessageInStartEventHandler(ptt_AudioMessageInStart);
                ptt.AudioMessageInStop         += new ZelloPTTLib.IZelloClientEvents_AudioMessageInStopEventHandler(ptt_AudioMessageInStop);
                ptt.PlayerAudioMessageStart    += new ZelloPTTLib.IZelloClientEvents_PlayerAudioMessageStartEventHandler(ptt_PlayerAudioMessageStart);
                ptt.PlayerAudioMessageStop     += new ZelloPTTLib.IZelloClientEvents_PlayerAudioMessageStopEventHandler(ptt_PlayerAudioMessageStop);
                ptt.PlayerAudioMessageProgress += new ZelloPTTLib.IZelloClientEvents_PlayerAudioMessageProgressEventHandler(ptt_PlayerAudioMessageProgress);
                ptt.ContactListChanged         += new ZelloPTTLib.IZelloClientEvents_ContactListChangedEventHandler(ptt_ContactListChanged);
                // Configure Loudtalks Mesh network parameters
                ptt.Network.NetworkName = sZelloNetworkName;
                ptt.Network.LoginServer = sZelloNetworkName + ".loudtalks.net";
                ptt.Network.WebServer   = "http://" + sZelloNetworkName + ".zellowork.com";
                ptt.Network.EnableTls("tls.zellowork.com");
                // Customize using embedded oem.config
                // Update UI
                UpdateMenuState();
                UpdateControlsState();
                tmUpdateOnlineContacts.Interval = 5000;
                tmUpdateOnlineContacts.Tick    += new EventHandler(tmUpdateOnlineContacts_Tick);
            }
            else
            {
                // Loudtalks Mesh control is unavailable
                // Hide all controls
                foreach (ToolStripMenuItem Item in menu.Items)
                {
                    foreach (ToolStripItem SubItem in Item.DropDownItems)
                    {
                        SubItem.Enabled = false;
                    }
                }
                foreach (Control Ctrl in Controls)
                {
                    Ctrl.Visible = false;
                }
                menu.Show();
                // Disable menu commands
                exitToolStripMenuItem.Enabled = true;
                // Show error description
                labelError.Parent = this;
                labelError.Dock   = DockStyle.Fill;
                //labelError.Top = menu.Location.Y + menu.Size.Height +  10;
                //labelError.AutoSize = true;
                labelError.Visible = true;
            }
        }