Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Windows;
- using ClientCom.CallInitializerService;
- using System.Collections.Generic;
- using NAudio.Wave;
- using System;
- namespace ClientCom
- {
- public class ClientWCFCallback : ICallInitializerServiceCallback
- {
- public readonly MainWindow Window;
- public readonly Register RegisterWindow;
- public ClientWCFCallback(Register registerWindow, MainWindow mainWindow)
- {
- RegisterWindow = registerWindow;
- Window = mainWindow;
- }
- public void RegisterStatus(bool status)
- {
- if(status)
- RegisterWindow.RegisterSuccessful();
- }
- public void StreamVoiceDataClient(byte[] data, int bytesRecorded)
- {
- Window.Speakers.OnDataAvailable(data,bytesRecorded);
- }
- public void PendingCall(Client client)
- {
- // Is calling
- Window.ClientStatus = Status.PendingCall;
- var status = client.Name + " dzwoni!";
- this.Window.SetStatus(status);
- Window.ShowAcceptCallButton();
- Window.ShowRejectCallButton();
- Window.DisableContactsList();
- }
- public void WaitingForCallAccept()
- {
- this.Window.SetStatus("Dryndam ...");
- }
- public void CallRefused()
- {
- Window.ClientStatus = Status.Available;
- Window.Speakers = null;
- Window.Mic = null;
- // odrzucił chuj ;(
- this.Window.SetStatus("Rozmowa odrzucona ;(");
- Window.EnableContactsList();
- Window.ShowAcceptCallButton();
- Window.HideRejectCallButton();
- Window.EnableContactsList();
- }
- public void CallAccepted()
- {
- Window.ClientStatus = Status.InConversation;
- Window.Mic = new MicrophoneListener(Window.ServiceClient);
- Window.Speakers = new SpeakersSender(new WaveFormat(8000, 1));
- Window.Mic.Speakers = Window.Speakers;
- Window.Speakers.Start();
- Window.Mic.Run();
- this.Window.SetStatus("Mów do różdżki");
- }
- public void CallEnded()
- {
- Window.ClientStatus = Status.Available;
- Window.Speakers.Stop();
- Window.Speakers = null;
- Window.Mic.Stop();
- Window.Mic = null;
- throw new System.NotImplementedException();
- }
- public void EndCall()
- {
- MessageBox.Show("EndCall");
- }
- public void SendResponse(Response response)
- {
- }
- public void UpdateClientList(List<Client> list)
- {
- Window.UpdateClientList(list);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement