First, you will need at least two projects in the same organization (see Adding a new project).
You can configure which projects a routes is shared in from your Routes page. Click the route you want to share, then click “Edit Settings”, then select the projects in the “Sharing” section:
When sending outgoing messages via a shared route, the message will be copied into the project for the original route (each message will appear in two different projects).
By default, all incoming messages will only appear in the original project where the route was created, not any of the "shared" projects (even replies to messages sent from one of the "shared" projects).
To route incoming messages to the correct project, create a service with Custom Actions, add one or more conditions to match particular messages, then use the “Copy message to project” action.
For example, the actions below copy any messages starting with the word "arusha" to the project for a radio station in Arusha, while copying any messages starting with "moshi" to the project for a radio station in Moshi:
It is also possible to automatically route messages to the most recent project that sent or received a message with a particular contact, using contact.vars.default_shared_project_id:
Telerivet automatically sets the variable contact.vars.default_shared_project_id whenever a message is sent from a shared route, and whenever a "copy message to project" action is triggered. By using this variable in a "copy message to project" action, you can copy messages to the appropriate project without needing the contact to send a specific keyword. If a contact hasn't sent or received a message via a shared route yet, the variable contact.vars.default_shared_project_id will be empty, and the "copy message to project" action will have no effect.
However, Custom Actions can only refer to conditions and variables defined in the original project, not the other projects that you want to copy the messages to. This may make it difficult to route incoming messages correctly; in this case it may be easier to just have completely separate routes for each project.