Hi, I am Spicarium

I am a Telegram Bot. (Documentation/How-To)

What is Spicarium?

"Spicarium" is a latin noun, simply meaning "storage"!
It is a bot for the Messenger-App Telegram, it's username is @filestorage_bot.
Spicarium can save your files and organize it with keywords. This is especially usefull for large groups, but also for small groups if you don't want to send every file in the group-chat.
You can simply send it to the bot in privat-chat and it is available in the group-chat and in other private-chats - if you have linked them together.

"Are my files save with you?"

Yes, they are. Because I don't have your files.
Every file you send will be stored on the Telegram-Server and it will stay there.
The bot only remembers the message's id to send it to you, if you request it.
Technically, there is a possibility for me to grab all the messages and redirect them to me - but I love privacy as much as you hopefully do!
So, I promise that your files will be save with me.
Do you trust Dropbox or Goolge - no? Good.

Your rights matter, because you never know when you're going to need them. Edward Snowden

How to use Spicarium

Start a private chat with @filestorage_bot via Telegram or add it to a group of your choice via the menu in the bots contact-info.

Registering your chat

At first you have to register your chat to communicate with the bot. The command to do this is

/register INVITE

INVITE stands for an invite-link e.g. #a_r3nwLB_0, it's only required if you want to join an existing storage.
You then should recieve either Registering chat... successfull! or Registering chat... failed!.
In case of failure, please check if you are already registered or if the invite-link was correct.

If you want to leave the current storage, see leave.

Note: At the moment it is only possible to be registered to one storage per chat at a time, but unlimited chats per storage. If you want to use it in a group, the best option is to register the bot via the group-chat and use the given invite-link for all private-chats that shall be connected with the storage.


To make the storage available for other users, you can request a unique invite-link e.g. #a_r3nwLB_0. The command to do this is


You then should recieve Your Invite-Link is #a_r3nwLB_0. In a new Chat, type /register #a_r3nwLB_0 Hint: You can click on the link to copy it with your individual invite-link. The Link and the register-command with the link is each wrapped in a code-block. This allows you to copy the link/the command by clicking on it (mobile) or copy it manually (Web, Windows, ...).

Note: To display a small info, use the command


Storing files

You can store most data-types telegram has right now. Supported are at the moment (with the bot-labeling for display):

Note: Stickers and a few less popular data-types are currently not supported.
On request, it may be added. Please contact me if interested/needed.

To store your files/notes/photos/... use the command

/send QUERY

QUERY is in this case an unlimited number of hashtags to categorize and identify your files, e.g. the full command could be /send #category1 #category2 ... #categoryN with N categories/identifiers.
You then should recieve You can send now the files you want to store with the hashtags: 'QUERY'. When you are done, click 'Done!' with a 'Done!'-Button below (see image below).
If you don't provide any hashtags, you will recieve the error You have to give at least one hashtag to find your files later (0 given).

response from bot Response to /send with #a.

Now you have 5 minutes to send every message/file/... you want to save with the given hashtags. After 5 minutes without any message the recieving-mode will be deactivated. After each message/file/... the timer resets to 5 minutes so you have enough time to search everything you want.

If you are done with sending, you don't have to scroll up to the first message with the button - instead you will recieve a message with a confirmation of saving and a 'Done!'-Button after every message/file/... you send.

List of files

You can request a full list of all messages/files/... you stored with the command

/list QUERY

QUERY is here an optional parameter. If you just execute /list you will recieve a list with all of the files that are currently in the connected storage! You can give an unlimited number of hashtags like #category1 ... #categoryN in any order to filter your stored files.

Note that there is at the moment no paging-system. If there are many files with the same hashtag or generally in your storage, the list might be very long. A paging system will come in an update soon.

If you don't have any files with the given hashtags or any files at all in your storage, you will recieve the message Listing files - no files -.
Otherwise you will get a message Listing files Press button to get file with all requested files as a list of buttons below the message. The button will have the form (NUMBER) (TYPE) TITLE, where TYPE and TITLE will be in the form of the labeling as listed in store and NUMBER is a unique file id in the form of #n17 that can be used to exactly identify the file. The NUMBER will be used later for other functions like /geti and /share and /rmi (not implemented yet).

response from bot Response to /list with #a #b #c

Cancel sending of files

Note: This will not delete your messages/files/... from the chat or the servers of Telegram.

You can cancel the current file-sending process while the bot is in recieving-mode (remember the 5 minute timer) with the command


If you are not in recieving-mode (anymore), you will get no answer from the bot.
If there is a file-recieving going on, the bot will send you Recieving canceled and delete all information about the files you sended from the server (NOT the Telegram servers).

Leave the current storage

If you registered to the wrong storage, copied the wrong invite or just want to get rid of your storage, you can use the command


You will then recieve the message Are you sure you want to leave this storage? Without an invite-link there is no comming back...! with two buttons: I am sure! Leave! and Cancel! (see picture below).

response from bot Response to /leave

If you choose Cancel! the leave-message will be deleted, you get a prompt Canceling leaving! and you can chat on.
If you choose I am sure! Leave! the leave-message will be deleted, you get a prompt You leaved your storage! You have no access to the stored files anymore! and a confirmation-message with the register instructions and a documentation button (see picture below).

response from bot Response to I am sure! Leave!

What's next?

  • Current Version: 2018.06.20 (Documentation: 2018.06.20)
  • Upcoming commands are /geti (get file by number), /getc (get files by query), /rmi (remove file by number), /rmc (remove files by query), /lstype (list files by type), /lstags (list all hashtags that are in use) and /share (generate public sharing link for inline-use in Telegram).

    Functions on the list are paging for /list command, a multi-storage management and proccessing message-updates (editing a caption will not change the database entry at the moment).

    @TODO: Enable public download via link, save the unique file_id in the database!


    (newest first)

    Felix Höddinghaus © 2017-2024 | Home | Projects