locked
Signalr like parallel library with more power RRS feed

  • Question

  • User264732274 posted

    Signalr is good for text based communication. so i like to know is there any other free library exist like Signalr which can do more other than text based communication.

    i want library can send file from one end to other end something like.

    thanks

    Friday, February 12, 2016 2:34 PM

Answers

  • User281315223 posted

    SignalR's primary purpose is that it is a real-time framework that allows for applications to push / pull events from the server so that they are notified when something happens in real time. 

    While text communication is the most common (e.g. sending messages, chatting, etc.), SignalR can really handle sending any kind of messages back to users. Take for instance the popular SignalR-based chat application JabbR, which can handle sending various types of media across (such as images, documents,etc.). It accomplishes this by simply uploading the file to some place like Azure and then send the URI to access the same file back to the user (or a specific user). You could consider adopting something similar, which might work for your needs :

    1. User uploads file and indicates who the file is being sent to.
    2. File is stored (somewhere) and a URI is returned indicating how to access said file.
    3. After this is done, the file URI is sent to the target (mentioned in Step 1).

    As previously mentioned, SignalR isn't necessarily a communication framework, it's just something that comes with being a powerful, real-time framework. I would certainly recommend checking out JabbR and it's GitHub repository for example on handling various scenarios.

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Friday, February 12, 2016 8:28 PM
  • User475983607 posted

    In my experience, Skype is installed on the desktop.  That makes peer to peer possible.  

    You build a web application which is browser based so Rion's suggestion is perfect.

    HTML 5 provides an RTCDataChannel API which allow peer to peer connections.  WebRTC takes advantage of this and provides an openly published example.

    http://webrtc.github.io/samples/src/content/datachannel/filetransfer/

    I have not  played with RTCDataChannel but I'm sure you can spend some quality time working out the kinks and lettings us know how it goes.

    Looking forward to your findings.

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Saturday, February 13, 2016 4:19 PM
  • User281315223 posted

    i saw so many project there so which one i should run. is there any web client which i can run and test my side. please guide how to run this project. thanks

    You would just want the JabbR folder on it's own. The rest are client-specific implementations for various other platforms, etc.

    As I mentioned earlier, this doesn't really involve anything super specific to SignalR and would be more of a series of steps that you need to perform within your application as I mentioned earlier : 

    1. User A selects whom they want to actually send the file to (User B). 
    2. User A then uploads the file they want to send.
    3. Application handles the upload, stores it and returns some type of identifier so that the recipient can access it.
    4. A message is sent from User A to User B indicating that they were sent a file. Perhaps it could just be a link to access the actual file that was sent (e.g. yourfilestore/getfile/identifier).
    5. When the recipient (User B) clicks on the link, they would be able to download the file that User A initially uploaded.

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Monday, February 15, 2016 1:18 PM

All replies

  • User281315223 posted

    SignalR's primary purpose is that it is a real-time framework that allows for applications to push / pull events from the server so that they are notified when something happens in real time. 

    While text communication is the most common (e.g. sending messages, chatting, etc.), SignalR can really handle sending any kind of messages back to users. Take for instance the popular SignalR-based chat application JabbR, which can handle sending various types of media across (such as images, documents,etc.). It accomplishes this by simply uploading the file to some place like Azure and then send the URI to access the same file back to the user (or a specific user). You could consider adopting something similar, which might work for your needs :

    1. User uploads file and indicates who the file is being sent to.
    2. File is stored (somewhere) and a URI is returned indicating how to access said file.
    3. After this is done, the file URI is sent to the target (mentioned in Step 1).

    As previously mentioned, SignalR isn't necessarily a communication framework, it's just something that comes with being a powerful, real-time framework. I would certainly recommend checking out JabbR and it's GitHub repository for example on handling various scenarios.

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Friday, February 12, 2016 8:28 PM
  • User264732274 posted

    please suggest any library which i can use along with signalr to send file in real time. suppose if user1 send file to user2 then user2 first get notification and when user click on download button then file will downloading in user2 pc with progress bar and file will be uploading from user1 pc with progress bar like skype.

    how to achieve this?

    can it be achieve by webrtc using along with signalr ?

    looking for good sample code which i can test in my pc. thanks

    Saturday, February 13, 2016 7:03 AM
  • User475983607 posted

    In my experience, Skype is installed on the desktop.  That makes peer to peer possible.  

    You build a web application which is browser based so Rion's suggestion is perfect.

    HTML 5 provides an RTCDataChannel API which allow peer to peer connections.  WebRTC takes advantage of this and provides an openly published example.

    http://webrtc.github.io/samples/src/content/datachannel/filetransfer/

    I have not  played with RTCDataChannel but I'm sure you can spend some quality time working out the kinks and lettings us know how it goes.

    Looking forward to your findings.

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Saturday, February 13, 2016 4:19 PM
  • User264732274 posted

    @mgebhard thanks for nice url

    i try to upload file by WebRTC here is screen shot

    just do not understand why two progress bar is showing. one progress bar is enough to tell us % of file uploading.........then why receive progress bar is showing.

    where the file is uploading. basically i am looking for sample which show how to transfer file from one pc to another pc like skype. if the file was uploading to server then i am not looking for this kind of utility because i want to transfer file in chat between two user. so please suggest something which really help me to achieve my goal. thanks

    Saturday, February 13, 2016 4:48 PM
  • User475983607 posted

    where the file is uploading. basically i am looking for sample which show how to transfer file from one pc to another pc like skype. if the file was uploading to server then i am not looking for this kind of utility because i want to transfer file in chat between two user. so please suggest something which really help me to achieve my goal. thanks

    I read the page and followed the instruction.  All worked well for me.  As for what "really helps you" I have no idea.

    Saturday, February 13, 2016 4:58 PM
  • User264732274 posted

    @Rion i have visited the url u gave. here is sreen shot

    i saw so many project there so which one i should run. is there any web client which i can run and test my side. please guide how to run this project. thanks

    Saturday, February 13, 2016 5:17 PM
  • User281315223 posted

    i saw so many project there so which one i should run. is there any web client which i can run and test my side. please guide how to run this project. thanks

    You would just want the JabbR folder on it's own. The rest are client-specific implementations for various other platforms, etc.

    As I mentioned earlier, this doesn't really involve anything super specific to SignalR and would be more of a series of steps that you need to perform within your application as I mentioned earlier : 

    1. User A selects whom they want to actually send the file to (User B). 
    2. User A then uploads the file they want to send.
    3. Application handles the upload, stores it and returns some type of identifier so that the recipient can access it.
    4. A message is sent from User A to User B indicating that they were sent a file. Perhaps it could just be a link to access the actual file that was sent (e.g. yourfilestore/getfile/identifier).
    5. When the recipient (User B) clicks on the link, they would be able to download the file that User A initially uploaded.

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Monday, February 15, 2016 1:18 PM
  • User264732274 posted

    @Rion thanks

    still nothing any easy and free js library exist which make real time file transfer between two user possible?

    i hook into webrtc code but still got no code for file transfer between two user but got file upload code which i do not require. webrtc has one draw back is all browser does not support webrtc.

    looking for your suggestion.

    thanks

    Monday, February 15, 2016 1:56 PM