Share My Creation [B4A] Firebase Notifications Alternative - Source Codes

Hello everyone :)

*Starting off by thanking the one, the only, the hero, @Erel for making this possible for every single one of us ♥

As requested by dear @ilan :

We have created a notifications service, which means you can now host your own notifications services without the need to use any third party (Firebase)

* Dear @ilan requested the library to be in B4A+B4i+B4J so we will release the B4i + B4J as separate projects in the near future which will be different from this project.

The project works as follows :
1- B4J Admin :
1.1 You can create campaigns :
-Text only
-Text & Images
1.2 You can also create topics: The topics are what each user is registered to.
1.3 Users Information
1.4 Reports : where you can view a certain campaign status and delivery within a period of time.

2- Heavily modified JRDC2 to send/receive events, campaigns, register users, reports, etc..
3- MS SQL Database to store all the above information
4- B4A Library that connects to the JRDC2 in the background to send/receive events.

Features :
1- User's action on the notification is registered, meaning you can view if the user clicked or ignored it or even received it or not and every action date & time is registered as well.
2- We have created 200,000 virtual devices (by creating a loop in the JRDC2) + 5 real phone, then we created a campaign and sent it, within less than 1 second every device (real and virtual) received it.
3- The JRDC2 + B4A Library checks in case the user has no internet or disconnected from the server, once the user connects to the server (in the background) the user will receive the last campaign that we sent to everyone which he/she was disconnected.

Technology :
1- B4A library (.jar + .xml)
2- B4A Library Source code
3- Heavily modified JRDC2
4- B4J Admin
5- MS SQL Database

*We have also included a simple sample project which shows how to use the library

The Project in Action :


Main.PNG



*Be noted that there are some devices that have custom android which may kill the background services if the user clicks on clear open & recent apps.

Project Price : 30$
To Purchase the source code click on the below Link:



As always, Thank you,
Saif
 
Last edited:

Xfood

Expert
Licensed User
a truly unique and fantastic project. congratulations to your whole group, you are really great.
thanks Saif
 

amorosik

Expert
Licensed User
Just because we used the limit that does not mean it's alternative to sqlite only :)

This Database Engine is made to be MS SQL,My SQL, etc... alternative + Adding features that will make the life the B4X Developers easier.

A feature that can make a db server very useful is the ability to send notifications to an external application
Personally I use Firebird Events to asynchronously inform connected clients that they have to do some particular operation
In essence, the polling of the various clients on the db is replaced with the pushing that the db server performs towards the clients that have subscribed to the event in question (insertion of a new record, or deletion of a record on a certain table, etc ... )
 

sfsameer

Well-Known Member
Licensed User
Longtime User
A feature that can make a db server very useful is the ability to send notifications to an external application
Personally I use Firebird Events to asynchronously inform connected clients that they have to do some particular operation
In essence, the polling of the various clients on the db is replaced with the pushing that the db server performs towards the clients that have subscribed to the event in question (insertion of a new record, or deletion of a record on a certain table, etc ... )
It's already been implemented but not as a notification, but as a real-time data update.

For example :
You have a table in an activity, you don't need to use any timers to check for new data, the table will update automatically if there was (Update, Delete, Insert)

The notification feature is a great idea, we will work on it.
 

AnandGupta

Expert
Licensed User
Longtime User
Masters here have put forth many options and features to what our Saif is creating.

I do not have much idea of database, let alone knowing differences between them. For me, a database should hide all its complexity and allow me to store and read my data easily. I emphasized my data as I have felt pain many times trying to get my information from the databases. Yes I still struggle with sql.

Anyway, I look forward to Saif's creation and yes I am ready to learn a few more syntax, if it makes my life easier, as B4X language made my life worth as programmer.
 

free2end

Member
Licensed User
is it possible to use MySQL on web hosting (linux) ?

when are you estimate to relase the new database engine "b4x database engine" ?
 

sfsameer

Well-Known Member
Licensed User
Longtime User
is it possible to use MySQL on web hosting (linux) ?

when are you estimate to relase the new database engine "b4x database engine" ?
Hello,

1-Yes it's possible, we will release the MySQL within 24-48 hours
2- The B4X Database Engine will be released within 1 week.

Thank you,
Saif
 

free2end

Member
Licensed User
the Project Price (30$) includes code, info, paradigms for all the different approaches (MS SQL, MySQL (webhosted), B4X Database Engine) ?
The B4X Database Engine could be also web hosted?
 

sfsameer

Well-Known Member
Licensed User
Longtime User
the Project Price (30$) includes code, info, paradigms for all the different approaches (MS SQL, MySQL (webhosted), B4X Database Engine) ?
The B4X Database Engine could be also web hosted?
Hello,

The project is :
B4A Firebase Notifications Alternative, so you will get :
1- B4A Source Code
2- B4J System Admin
3- Modified JRDC2
4- MS SQL Database .bak file (Backup file)
6- MySQL Script (Will be released within 24-48 hours)

As for the B4X Database Engine :
1- It's a different project
2- It's not released yet.


Thank you,
Saif
 

free2end

Member
Licensed User
Many, many thanks for your accurate response!
Please specify if it is possible to send a question and track user reply ( as yes or no (with button or button-images)?
Also is it possible to use sqlite?
 

sfsameer

Well-Known Member
Licensed User
Longtime User
Many, many thanks for your accurate response!
Please specify if it is possible to send a question and track user reply ( as yes or no (with button or button-images)?
Also is it possible to use sqlite?
Hello,

1-The notifications do contain buttons but you need to custom develop the service to accept answers and read the clicked values.
2-The project uses MS SQL and MySQL(Script will be released today) so am not sure if Sqlite can handle the multiple connections and data transactions per 1ms.

Thank you,
Saif
 

free2end

Member
Licensed User
sorry to come back with the same question:
if i buy it, i will find the MySQL Script included?
 

sfsameer

Well-Known Member
Licensed User
Longtime User
Hello Everyone :)

Please use the same download link we sent you previously to view the MySQL Script.
Once you download the .zip file you will see a new file under the name : "MySQLDatabase.sql"

1-Keep in mind that the MySQL script needs further testing.
2-Once you restore the MySQL script to your MySQL Server you will need to change the JRDC2 and remove every [dbo] in the file "config.properties"

Thank you,
Saif
 

cheveguerra

Member
Licensed User
Longtime User
Hi,
I have some doubts:
- Does the push message is only for notifications, or can it send data without notification like firebasemessaging?
- Does it have the same 4kb limit of data, or it is possible to send more?... if so, then how much more?

Best regards
 

sfsameer

Well-Known Member
Licensed User
Longtime User
Hi,
I have some doubts:
- Does the push message is only for notifications, or can it send data without notification like firebasemessaging?
- Does it have the same 4kb limit of data, or it is possible to send more?... if so, then how much more?

Best regards
Hello,

1- Only for notifications and you can include tags which you can read once the notification is clicked
2- Websockets limits :

and you can increase it :

Ohhh, and another one, would it be possible to use it with an Oracle DB?

Regards
Only MS SQL and MySQL

And the last one ... any news about the new database proyect? :)

Almost finished :)

Thank you,
Saif
 
Top