Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bixolon (POS, printers, MSR, smart cards, etc.) #200

Open
andreidigori opened this issue Aug 22, 2023 · 5 comments
Open

Bixolon (POS, printers, MSR, smart cards, etc.) #200

andreidigori opened this issue Aug 22, 2023 · 5 comments

Comments

@andreidigori
Copy link

Plugin Request

Name: capacitor-bixolon
Package: @capacitor-community/bixolon

Platform(s)

  • Android
  • iOS (in development)
  • Web (in development)

Existing Solutions

https://github.com/andreidigori/capacitor-bixolon

Created by me for an application, currently implemented on Android, but going to develop for iOS as well.
As a POC I want to implement web through Bixolon Web Print SDK.

Description

The plugin provides bindings for Capacitor for working with Bixolon POS devices.
Some methods which are available for Android was marked and implemented, as well for iOS.
Controls methods which are common for both platforms and have the same arguments are sent natively according to platform.

@albgen
Copy link

albgen commented Sep 3, 2023

Hi,

Just a question. Why did you use the web sdk method for controlling the bixolon devices. JavaPOS should be more standard and basically interop with other pos devices and not only Bixolon.
What do you think?

@andreidigori
Copy link
Author

andreidigori commented Sep 3, 2023

Hi @albgen ! Thank you for reply!

The reason is that Web Print SDK is limited to TCP network, but USB and BT devices are not allowed with Web Print.
Instead we have to use Android SDK and iOS SDK, so this plugin has just utils methods to communicate with native SDK. All methods and properties are forwarded through this plugin, with the help of java reflection.
iOS IS NOT READY YET, still working.

About JavaPOS, you can see in the source files that jpos package is embed with bixolon***.jar file. The reason they chose to use it I cannot explain. (I think its https://github.com/emigonza/JavaPOS )

If you have some problems with integration of this plugin, I can help you figure it out fast.

@albgen
Copy link

albgen commented Sep 3, 2023

I see your point.
Btw, my requirements are to use JavaPOS(or at least this is my conclusion) because the hybrid/web app has to use not only Bixolon devices but as much as possible physical devices in the market and JavaPOS is the only standard covering the most devices.

Recap, my goal is to create a capacitor plugin in order to print on a variaty of devices.

@andreidigori
Copy link
Author

If you want to cover multiple brands (devices), then you better have to study multiple SKDs (or plugins like this), add an abstraction layer in Javascript and implement for each brand.

One problem with this plugin can be conflicts with package "jpos.***" if any other plugin has a jar with the same package name.

@albgen
Copy link

albgen commented Sep 4, 2023

i'm not sure but it is supposed to work without using multiple sdk. That's why they created this standard. The idea is that each hardware vendor implements it's own command but the interface exposed is JavaPOS and basically they load these classes with reflection...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants