Is there a way to edit any messages sent by the RTCDataChannel API for webRTC ?
Related
Hi i building interactive live streaming app.
When i wish to leave channel i want to stop all hosts broadcasting to audience
also.Is there any api for that?
I used "leaveChannel" and "mute" apis but doesn't resolve my problem.
There are two ways to do this.
When the user leaves the channel, he can send a signal to the channel members through Agora RTM sdk. When the broadcasters receive this signal, they can call unpublish or mute to stop sending streams. Or they can call setClientRole to switch their role from broadcaster to audience.
RTM sdk quick start: https://docs.agora.io/en/Real-time-Messaging/messaging_android?platform=Android
When the user leaves the channel, he can call the "kicking-rule" RestFul API to specify who can send streams in the channel.
Kicking-rule API: https://docs.agora.io/en/rtc/restfulapi
Is there any event provided by RabbitMQ or by some plugins which will "fired" when consumer acked message?
The result of event for example can be message to specific queue or webhook.
Any solutions or recomendations?
Expected scenario: there is a queue with messages for client app
- app consumes message from this queue
- app sends lightweight AMQP ack packet
- server receives ack
- server calls some sort of callback (webhook)
This can be easily achieved from the consumer side as well , when you ack the message from the consumer , call the external webhook from the consumer itself. The message body can carry the webhook URL which can then be parsed at the consumer side , this way you will have the flexibility to pass in parameters specific to the message.
I would like to use Agora Signalling SDK to create a chat app.
I am aware that I can use the onMessageChannelReceive and onMessageInstantReceive callbacks to receive messages that were sent.
Is it possible to get messages that were sent previously? If a user logouts and logs in back, is there a way to get the messages that were sent previously?
Currently the Agora Signaling SDK does not support persistent messages. There is a new Realtime Messaging SDK that is in beta that will have more robust features. I would recommend you reach out to the Agora.io team to get more information because I think it will help with your use case.
I have system like this:
Windows service (WCF, data/events) <-> Web app <-> Web client
I need simultaneous response for clients requests. I have some events from service for clients too. So duplex channel is the way to go. But I need high throughput, because clients calls simultaneously.
Request/reply approach
In order not to serialize channel requests I need more channels for parallel calls, right? But how to handle callback channel then? Ho to keep it still open for receiving events, even on channel errors?
OneWay approach
On channel should be enough (no waiting for data preparation), but how to link data sent to callback with original request, to be able to compose response for client?
What is the way to go? Thank you.
In a simple case, when a web client sends a request to the web app, and web app (possibly) sends a request(s) to WCF service, there's no need in duplex binding at all.
As for events, raised by the service to be fired in Web client, I'd suggest to use a message broker which supports WebSockets - for example RabbitMQ. It has a plugin compatible with WebSockets and WCF binding.
Putting things together, one can create a RabbitMQ server, which accepts messages from WCF service and sends it to Web client, which subscribes to the event feed from Javascript.
I'd like to build an app based on WCF service and Win8 as presentation layer. I will have messaging capabilities in the app so any user must see updates on the tile (when new messages arrive). As I understand I need to use "Push notifications service" mechanism somehow to update all client s tiles with new arrived messages? How would app work? It should call directly to WCF service and then WCF service should call to push notifications service, or firstly Win8 calls to notification service which calls to WCF? Can somebody clarify me how all this stuff can communicate with each other? Perhaps I should think about WCF Duplex approach? Is it possible to make WCF service to be Push notification service as well?
You can use the
The Windows Push Notification Services (WNS). Your app requests a notification channel. Then it will call the WCF service to send it that channel. The WCF service will send a POST request to the notification channel (which is a URI) in order to notify the app. The data of the request is in XML format (you can read about it in the link).
The Windows Push Notification Services (WNS) enables third-party
developers to send toast, tile, badge, and raw updates from their own
cloud service. This provides a mechanism to deliver new updates to
your users in a power-efficient and dependable way.
It involves these steps:
- Your app sends a request for a push notification channel to the Notification
Client Platform.
- The Notification Client Platform asks WNS to create a notification channel.
This channel is returned to the calling device in the form of a Uniform
Resource Identifier (URI).
- The notification channel URI is returned by Windows to your app.
- Your app sends the URI to your own cloud service. This callback mechanism is
an interface between your own app and your own service. It is your
responsibility to implement this callback with safe and secure web standards.
- When your cloud service has an update to send, it notifies WNS using the
channel URI. This is done by issuing an HTTP POST request, including the
notification payload, over Secure Sockets Layer (SSL). This step requires
authentication.
- WNS receives the request and routes the notification to the appropriate
device.