I'm doing a platform for LiveChat, commonly this LiveChat is embedded in other sites via a js script so the live chat widget is displayed in the host websites, therefore it allows communication with the agent's. The platform itself is licensed with AGPLv3 which includes the backend, frontend, and embeddable live chat. My question is regarding the license stickiness, so, if a third party is using my platform commercially under the terms of the AGPLv3 but is using the embed script in their client sites. would those clients need to comply with the AGPLv3 too? so would they need to disclose the source of their own sites as they will be using the embeddable script?
-
This question and answer seems to cover your question: opensource.stackexchange.com/questions/3960/… . And if the AGPL licensed code is running on the client then it does not seem to make a difference between GPL and AGPL.– Martin_in_AUTCommented May 23, 2022 at 6:43
-
1Does this answer your question? If a part of the client-side code is licensed under GPL, does the server-side code have to be under GPL as well?– Martin_in_AUTCommented May 24, 2022 at 7:41
-
Not quite. My question is about stickiness propagation when my client side library widget (AGPLv3) is used on other sites– MichelsonCommented May 24, 2022 at 12:54
-
Could you please provide a definition of "stickiness propagation" in this context. I am puzzled.– Martin_in_AUTCommented May 25, 2022 at 12:15
-
just wondering if the license applies to third-party sites that use the js widget.– MichelsonCommented May 27, 2022 at 5:29
1 Answer
In GPL (and AGPL) there is no distinction between commercial or non-commercial distribution. The rules apply in the same way.
When you client creates a website that embeds the JS code, which is under AGPL license (regardless where that code comes from, your server or your client's server. No distinction between 1st party or 3rd party), it is the act of conveying a covered work.
The only remaining question is: Is just the JS code the covered work or is it the entire webpage ("html code") or even everything on the server as well? You should use the guidance in the GPL FAQ to determine this, and potentially ask your customers to do the same. The answer to the related question here might be helpful.
If the JS code works stand-alone and is just embedded in the webpage of your customer 'in a frame or better iframe', then you can likely assume that you are dealing with an 'Aggregate'.