Expose WCF Callback with REST
===

So I have a client application and a WCF Service publish to an IIS server. I successfully was able to get the clients to subscribe to the WCF service and then push out a message to each of the instances of the client app after a button was clicked on any 1 of the clients. Now my goal is to push out the message from the WCF application but through REST in a web browser which would then allow me to use this interface in Android and interact between an Android client and the windows client application. Anyone have any idea what i need to do? Here is the basics of the interface that I have working.

IService.vb:

        <ServiceContract(SessionMode:=SessionMode.Required, CallbackContract:=GetType(IServiceCallback))>
    Public Interface IService
        <OperationContract(IsOneWay:=True)>
        Sub GetClientCount()
    
        <OperationContract(IsOneWay:=True)>
        Sub RegisterClient(ByVal id As Guid)
    
        <OperationContract(IsOneWay:=True)>
        Sub UnRegisterClient(ByVal id As Guid)
    End Interface
    
    Public Interface IServiceCallback
        <OperationContract(IsOneWay:=True)>
        Sub SendCount(ByVal count As Int32)
    End Interface

Service.svc.vb


    <ServiceBehavior(InstanceContextMode:=InstanceContextMode.Single, ConcurrencyMode:=ConcurrencyMode.Multiple)>
    Public Class Service
        Implements IService, IRestService
        Private clients As New Dictionary(Of Client, IServiceCallback)()
        Private locker As New Object()
    
        Public ReadOnly Property Callback As IServiceCallback
            Get
                Return OperationContext.Current.GetCallbackChannel(Of IServiceCallback)()
            End Get
        End Property
    
        'called by clients to get count
        Public Sub GetClientCount() Implements IService.GetClientCount
            Dim query = ( _
            From c In clients _
            Select c.Value).ToList()
    
            Dim action As Action(Of IServiceCallback) = Function(Callback) GetCount(Callback)
    
            query.ForEach(action)
        End Sub
    
        Private Function GetCount(ByVal callback As IServiceCallback) As Int32
            callback.SendCount(clients.Count)
            Return Nothing
        End Function
    
        '---add a newly connected client to the dictionary---
        Public Sub RegisterClient(ByVal guid As Guid) Implements IService.RegisterClient
            '---prevent multiple clients adding at the same time---
            SyncLock locker
                clients.Add(New Client With {.id = guid}, Callback)
            End SyncLock
        End Sub
    
        '---unregister a client by removing its GUID from 
        ' dictionary---
        Public Sub UnRegisterClient(ByVal guid As Guid) Implements IService.UnRegisterClient
            Dim query = From c In clients.Keys _
                        Where c.id = guid _
                        Select c
            clients.Remove(query.First())
        End Sub
    End Class