Submitted by: Wildman
by Jeremy Friesner
BeShare is a BeOS-native file sharing program. It operates similarly to
other such programs (Napster, Hotline, etc) but with a few advantages:
- BeShare allows you to upload or download any type of file, not just mp3.
- When browsing files, you can see their attributes (similar to Be's
- Your query is always "live", so if new files that match your query become
available, you will see them added to the results list right away (you
won't have to click "refresh" or anything first)
- BeShare includes a rudimentary chat mechanism for you social types.
- BeShare supports any number of simultaneous uploads and downloads in
parallel, but will serialize simultaneous file requests to any given
host for efficiency.
- BeShare connects to any MUSCLE server (see
http://www.lcscanada.com/muscle for details)
- BeShare comes with source, and serves as an example of how to write
a MUSCLE client.
How to use BeShare
To run BeShare, just double click its icon. When you see the GUI, make
sure that the "Server" string gadget contains the name or IP address of
the MUSCLE server you wish to connect to, and then choose "Connect" from
the File menu. Once you are connected, you can type a query string in
to the "Query" string gadget, and click "Start Query". Any files that
match your query will be shown in the results panel in the middle of the
window. Note that once files have appeared in your results list,
different attributes associated with those files (e.g. "Bit Rate" or
"Play Length" for mp3 files) may be available for viewing. Check the
"Attributes" menu to see if there are any attributes that you wish to
If you see a file you want, click on it, then click the "Download File(s)"
button. The file will be downloaded into the "downloads" directory next
to the BeShare executable. (You should see a download status box appear
on the right side of the window).
If you wish to make files available for other people to download from
your machine, simply put the files in a directory named "shared" next
to the BeShare executable. Any files in or under the shared directory
will be available for other people to download. Note that you won't
see these files as results in your own queries, but other people will see
them. (Note: symlinks can be very helpful here!)
That's about it; you can also set your username using the string gadget
in the upper right, and chat by typing text into the string gadget at
the bottom. Note that user names are NOT guaranteed to be unique, but
every user does receive a guaranteed unique session ID.
IRC commands "/me" and "/msg" work as expected. That is to say,
/me claps and cheers
will show up on everybody's chat window as
Action: claps and cheers
/msg Jeremy Psst... hey buddy!
Will make it so only user(s) named Jeremy see your message
"Psst... hey buddy!" (Note that you can specify a session ID instead
of a user name here if you wish) You can even do wildcarding on
the names if you want, e.g.
/msg J* Look!
Will send the message "Look!" to Jeremy, Joanna, Joellen, etc.
When receiving a private message, the text will show up
in light blue rather than the tradition black color.
For information about other available commands, type
/help into the chat line.
BeShare listens for certain BMessages arriving at the port
of its main BMessage object. The primary reason for this
is so that you can control BeShare via hotkey from SpicyKeys.
Here are some examples of text strings that you can type in
to the "Application" column of the SpicyKeys GUI to bind
a key to a BeShare action:
*SendMessage application/x-vnd.Sugoi-Beshare 'scrn' name=filename.png
- Tells BeShare to share a /screenshot (optionally with a specified filename)
*SendMessage application/x-vnd.Sugoi-Beshare 'halt'
- Tells BeShare to pause all uploads
*SendMessage application/x-vnd.Sugoi-Beshare 'resu'
- Tells BeShare to resume all uploads
*SendMessage application/x-vnd.Sugoi-Beshare 'name' name=MyName
- Tells BeShare to change your user name to MyName
*SendMessage application/x-vnd.Sugoi-Beshare 'stat' status=MyStatus
- Tells BeShare to change your user status to MyStatus
*SendMessage application/x-vnd.Sugoi-Beshare 'serv' server=beshare.tycomsystems.com
- Tells BeShare to switch to the specified MUSCLE server.
*SendMessage application/x-vnd.Sugoi-Beshare 'quer' query=*.mpg
- Tells BeShare to switch to the specified file query
*SendMessage application/x-vnd.Sugoi-Beshare 'quer' query=
- Tells BeShare to switch to disable the file query
*SendMessage application/x-vnd.Sugoi-Beshare 'pane' pos=50%
- Tells BeShare how to arrange its SplitPanes. This command has
Details about this version:
* Merged in Pintaio&squo;s corrections to the Spanish
* Merged in Monni&squo;s correction to the Finnish
o Updated the code to work the with the MUSCLE 3.20
API changes. Note that this version of BeShare
requires MUSCLE 3.20 or higher to compile.
Intel (BeOS 5) + Source (1.5M)
3.02 Intel (Haiku) + Source (1.7M)