I’ve had a query from a potential client about being able to have separate SambaPOS databases at different branches then having a call center setup of SambaPOS to take orders that then get sent to the respective branches.
I imagine the orders form the call center setup could be exported using a custom printer, and branch selection via ticket tags / entities for branches, however I am uncertain how the tickets could be imported to the branch systems. I know the API doesn’t allow creation of tickets, and if we just added tickets via SQL, rules wouldn’t trigger, and a requirement would be when an order is received from the call center it should print in the branch and also assign delivery. Is there anything that can be done right now?
Or how about some other options…
I recall reading on the forum in the past that someone had used SQL hosted on Azure cloud. I know that this isn’t a recommended setup but anyone tried this got any feedback on speed issues? However such would require fast and stable internet connection, and SambaPOS won’t work if internet was down.
Or how about if did use SQL on Azure cloud, with local SQL database that would use SQL replication to mirror the data from the cloud to then provide faster local speed plus would work if internet was down.
Or is there any updates / progress on any multi branch setup for SambaPOS?
Think this would not be much difference from inserting directly into the SQL, isnt going to triger rules etc.
Emre did mention he had an idea for chains on the boards for the future, not heard anything since.
Don’t know what the minimum speed samba would need to work, if you forced 10Mbs on the network you could minic bandwidth for the upload on a reasonable FTTC connection, that would simulate single terminal remote link but latency is probably a bigger issue, ping on LAN is <1ms on my network to modem/router and thats at 2 switches away, dont know about other countries or places but ping on FTTC in my area gives 20-30ms, thats a big difference % wise.
I would imagine that a web based cloud version of Sambapos would happen at some point. I don’t think it would be soon however. Emre has discussed this as being on his to do list. I’m hoping version 6 might be the next leap.
I don’t see how it would be reliable enough. I think it would be best to wait and see what version 6 will involve. I have no information on v6 but if history shows anything he is probably already thinking about version 6. I do know that he wants to do something with cloud so I would think we may see something along those lines in the future. I am personally hoping for version 6 but who knows.
Not with all the other automation it would need. I mean it might be possible but your talking about a lot of automation that needs to happen the most important stuff would be how it creates ticket transactions because those are hard coded.
How about if you injected all the needed SQL parts with ticket in a specific state and then set a triggered rule to check for tickets with that state and go from there?.. Allot of SQL but maybe?
Those are the bits I mean, allot of stuff you dont see without digging.
Or more simply inject list of product names/ids in to a program setting and a triggered rule to read the setting?..
@na1978 yeah I also thought of similar setup, however potential client I am discussing with does not want this sort of setup because of bottlenecks that could occur, especially with multiple connections over internet simutaneously. It’s a quick fix, not really a long term solution, and would work ok if you have a few users but I would guess you’d start to struggle as you add more VMs to connect to (I know hardware can be thrown at it as well as higher speed internet but this is a luxury not everybody has).
If you wanted to inject a Settled/Paid Ticket, this would be the most simple. If you are talking about multi-branch setups that have the same Rules/Flow for marking Tickets and Orders, it could be done. With the big caveat that they are Settled, and you are simply using the data for Reporting purposes and it is done at the end of day. It would theoretically be a matter of inserting into a handful of tables in the proper sequence.
How would it affect Inventory calculations? Do you insert then force a Cache Reset before Ending Workperiod?
If the Tickets are not Settled, how do you make SambaPOS aware of their State?
How much data is stored in memory? That could cause huge conflicts on live systems.
Unfortunately, your original question/request implies that you want to do this Live, which I don’t think is really a possibility at this point, since SambaPOS is not aware of what is going on in the DB; that is, it does not monitor changes. There is no event for “Database Updated”.
Really, we need to be able to send a data-set containing Ticket details, in the form of JSON, XML, YAML, or whatever, and have the main system receive and process it, putting the Ticket in a Closed (Unpaid or Paid), Locked State.
Yeah, this is ideally where we need to go. You are correct in that the setup I am looking into would expect SambaPOS in the branches to act upon receiving the order - it might already have been settled, or not, but it would need to print in kitchen, add to delivery driver queue, etc. And like you say, this is where the major problem lies because there is no way to get SambaPOS to action things on a DB change.
But I feel anyway this is a hot topic, because even having just any way for SambaPOS to receive an order from an outside source will open up so so many possibilities. Separate from this, our company does ecommerce and I’d like to be able to have an online ordering website we can offer clients that then have the orders being pushed to SambaPOS, which would also require acting upon to print in kitchen, etc. That’s just one of many reasons I feel we really need this type of support.
My client doesn’t want to have setup via VM, therefore even I know it is an option, it is not for them. So I must investigate other options without using VM or cloud based DB.
BTW have you setup like this already before with VMs? Can you share your experience of how many terminals you have running like this? Would be good for future reference also for any others interested in such setup. Thanks