Beispiel #1
0
        public void Subscribe(string clientId)
        {
            var callBack = OperationContext.Current.GetCallbackChannel <IMessageCallBack>();

            MessageServiceManager.AddSubscriber(clientId, callBack);
            var obj = (ICommunicationObject)callBack;

            obj.Closing += Callback_Closing;
        }
Beispiel #2
0
        private void Callback_Closing(object sender, EventArgs e)
        {
            var callBack = sender as IMessageCallBack;

            if (callBack == null)
            {
                return;
            }
            MessageServiceManager.RemoveSubscriber(callBack);
        }
Beispiel #3
0
        void RefreshServiceStatus(object state)
        {
            var subscriberList = MessageServiceManager.GetSubscriberList();

            Invoke(new Action(() =>
            {
                lstClientList.Items.Clear();
                lstClientList.Items.AddRange(subscriberList.ToArray());
            }));
            _ServiceTimer.Change(1000 * 3, Timeout.Infinite);
        }
Beispiel #4
0
        private void btnSendMessage_Click(object sender, EventArgs e)
        {
            var selectedItem = lstClientList.SelectedItem;

            if (selectedItem == null)
            {
                MessageBox.Show("请选择需要客户端");
                return;
            }
            if (string.IsNullOrEmpty(txtMessage.Text))
            {
                MessageBox.Show("请输入消息内容");
                return;
            }
            var message = new MessageEntity
            {
                Receiver    = selectedItem.ToString(),
                MessageType = MessageTypes.Default,
                Content     = txtMessage.Text,
            };

            MessageServiceManager.PushMessage(message);
        }
 public MessageController(IServiceBase serviceBase)
 {
     this.messagingService = MessageServiceManager.GetMessagingService();
 }
Beispiel #6
0
 public string PushMessageNeedBack(MessageEntity message)
 {
     return(MessageServiceManager.GetData(message));
 }
Beispiel #7
0
 public void PushMessage(MessageEntity message)
 {
     MessageServiceManager.PushMessage(message);
 }
Beispiel #8
0
 public void Unsubscribe(string clientId)
 {
     MessageServiceManager.RemoveSubscriber(clientId);
 }