Your task is to implement Java based method/function, which detects incoming SIP/VoIP calls and opens a browser with a URL. The URL contains some query parameters, like the callers number. As a UI-less (cmd line only) app on the desktop it will be so a simply app which does basically a call listening and triggering a browser based URL to show.
The listener shall be configurable, means - what URL to call - which phone numbers to ignore - which phone numbers to track (regEx)
Please recommend what to use JTAPI or SIP-RI to detected phone calls. You will get a SIP/VoIP account to be able to implement and test incoming calls (if you do not have your own)
Your task is to implement Java classes to be able to access details of incoming calls as a listener. Implement JUnit test cases, which is showing how the implemented listener is required to be configured (regex, ignore numbers, URL) The Q-question is a formula, place result into the bid.
A good starting point for SIP starters may be: https://aebb.es/gn2wn https://aebb.es/ne-ug
You need to implement for: - linux & windows (a basic java best practice and requirement, ensure system independent development)
requirements: only call from JUnit (no UI)
What is NOT needed: - a UI (not required, implement a JUnit test to call your functions) - a service architecture (like spring or JEE) - any persistence
Milestone MS1: - implement a main() - register a sip listener - trace all incoming calls to system.out
MS2: - implement a app (no ui), which runs in the background and system tray - which can be configured - which uses regex to "match" only on specific numbers
What are our requirements? - your code passes checkstyle, pmd and spotbugs (we will share you a git repo with eclipse settings) - JDK17 - maven - 24/8 formula - create a model class representing the input of your function - create a service class implementing the logic - create a unit test, which tests the service class - we do NOT need a UI, we only need the model + service method to access the logic via JUnit - if you need libs selenium or apache commons are fine. Other libs NEED prior clearance - the runtime is JRE (no JavaEE nor Spring-container) - delivery in our git
Outlook - we want to have a prototype/POC to fiddle around with the possibilities on our environment - after the prototype phase, we will have more tasks to implement to a full app, so preferably you/your team will get also this tasks - if you do a good job on supporting our team, we are open to integrate you into regular work and we will share you more tasks about SIP implementations
What is our budget? we do not disclose our budget nor planned hourly rate. Offer us your best bid.
Your bid? Place your best hourly bid. We do not want to negotiate with you anymore after getting in touch with you. So place your best bid to save time here
Hiring? We hire only open book bidders. No open book estimate results in no hiring. You get a task, you estimate cleanly, you provide the estimate, we review and maybe do queries about understanding, you get a confirm for the budget, we agree on a milestones to it (at least 2, 1x implementation, 1x successful test), you deliver in the agreed budget.
Communication: Do not wait for our availability here. Just answer, just ask or just reply.
Outlook We want to implementing a bigger communication application after the implemented prototype. The candidate of the prototype will be also our preferred candidate for the bigger app.