i cloned the hello-world-payment-api-plugin and exchanged the PaymentPluginApi interface with the PaymentControlApi Interface and excluded the servlet registration.
1. I can mvn clean isntall and upload the plugin.jar into /var/lib/killbill/bundles/plugins/java/payment-control-plugin/0.0.1/payment-control-plugin-0.0.1.jar
2. The next i did is altering the sha1.yml File and added
"PAYMENT-CONTROL":{
"plugin_name":"payment-control-plugin",
"language":"java",
"group_id":"org.kill-bill.billing.plugin.java",
"artifact_id":"payment-control-plugin",
"packaging":"jar",
"classifier":null,
"version":"0.0.1"
}
When i restart killbill i only see the follwoing log:
2016-04-15 15:02:04,333 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - BundleEvent RESOLVED
2016-04-15 15:02:04,336 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - OSGI bundle = org.kill-bill.billing.plugin.java.payment-control-plugin recieved START command
2016-04-15 15:02:04,365 [localhost-startStop-1] INFO o.k.b.p.p.DefaultPaymentProviderPluginRegistry - DefaultPaymentControlProviderPluginRegistry registering service payment-control-plugin
2016-04-15 15:02:04,368 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - [[org.killbill.billing.plugin.netstream.PaymentControlPluginApi]]ServiceEvent REGISTERED
2016-04-15 15:02:04,368 [localhost-startStop-1] INFO o.killbill.billing.osgi.FileInstall - Starting bundle file:/var/lib/killbill/bundles/plugins/java/analytics-plugin/3.0.1/analytics-plugin-3.0.1.jar
2016-04-15 15:02:04,369 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - BundleEvent STARTED
when i make a payment, i receive the event after the strip plugin processed the payment:
2016-04-15 15:04:05,473 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - Received event PAYMENT_SUCCESS for object id f541755a-dbf9-470b-8492-421e7c2dcfaf of type PAYMENT
But i dont receive calls belonging to the PaymentControlPlugin.
Am i missing sth....??? Im running Killbill 0.16.0 in a docker contsainer
Thx in advance and if u have any questions let me know
Hey there,
i cloned the hello-world-payment-api-plugin and exchanged the PaymentPluginApi interface with the PaymentControlApi Interface and excluded the servlet registration.
1. I can mvn clean isntall and upload the plugin.jar into /var/lib/killbill/bundles/plugins/java/payment-control-plugin/0.0.1/payment-control-plugin-0.0.1.jar
2. The next i did is altering the sha1.yml File and added
"PAYMENT-CONTROL":{
"plugin_name":"payment-control-plugin",
"language":"java",
"group_id":"org.kill-bill.billing.plugin.java",
"artifact_id":"payment-control-plugin",
"packaging":"jar",
"classifier":null,
"version":"0.0.1"
}
When i restart killbill i only see the follwoing log:
2016-04-15 15:02:04,333 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - BundleEvent RESOLVED
2016-04-15 15:02:04,336 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - OSGI bundle = org.kill-bill.billing.plugin.java.payment-control-plugin recieved START command
2016-04-15 15:02:04,365 [localhost-startStop-1] INFO o.k.b.p.p.DefaultPaymentProviderPluginRegistry - DefaultPaymentControlProviderPluginRegistry registering service payment-control-plugin
2016-04-15 15:02:04,368 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - [[org.killbill.billing.plugin.netstream.PaymentControlPluginApi]]ServiceEvent REGISTERED
2016-04-15 15:02:04,368 [localhost-startStop-1] INFO o.killbill.billing.osgi.FileInstall - Starting bundle file:/var/lib/killbill/bundles/plugins/java/analytics-plugin/3.0.1/analytics-plugin-3.0.1.jar
2016-04-15 15:02:04,369 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - BundleEvent STARTED
when i make a payment, i receive the event after the strip plugin processed the payment:
2016-04-15 15:04:05,473 [Thread-6] INFO o.k.b.p.j.p.0.0.1 - Received event PAYMENT_SUCCESS for object id f541755a-dbf9-470b-8492-421e7c2dcfaf of type PAYMENT
But i dont receive calls belonging to the PaymentControlPlugin.
Am i missing sth....??? Im running Killbill 0.16.0 in a docker contsainer
Thx in advance and if u have any questions let me know
--
You received this message because you are subscribed to the Google Groups "Kill Bill users mailing-list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to killbilling-us...@googlegroups.com.
To post to this group, send email to killbill...@googlegroups.com.
Visit this group at https://groups.google.com/group/killbilling-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/killbilling-users/3fd6d5f5-9091-466f-a2a5-150e6825a578%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I missunderstood the part in the documentation which explains how to specify the order of several payment-control-plugins.
There are as u stated 2 solutions:
After i added at the API level the queryParam {killbillUrl}account/userid/payments?controlPluginName=payment-control-plugin
or i specified in /etc/killbill/killbill.properties the system property variable org.killbill.payment.invoice.plugin=payment-control-plugin
Now i finally get the expected behaviour :-)
Am Montag, 18. April 2016 18:35:52 UTC+2 schrieb stephane brossier:
> [...]
>
>
> On Mon, Apr 18, 2016 at 7:39 AM, <ggra...@gmail.com> wrote:
> ok i found a solution to my problem :-D
>
>
>
>
>
> Great! Did you solve all your issues or are there any remaining things to discuss?
Now i have no issues anymore, but there are still some uncertainties about what are the proper ways to configure the plugins in a multi-tenancy environement
i want to configure different properties for each tenant, therefore i can sent
curl -v \
-X POST \
-u admin:password \
-H 'X-Killbill-ApiKey: devKey' \
-H 'X-Killbill-ApiSecret: devSecret' \
-H 'X-Killbill-CreatedBy: admin' \
-H 'Content-Type: text/plain' \
-d 'com.mycompany.killbill.plugins.paymentControl.url=http://172.17.0.3:8082' \
http://127.0.0.1:8080/1.0/kb/tenants/uploadPluginConfig/payment-control-plugin
I cant find a way to check the plugin config on the API for the affected tenant, is there a possibility?
3. Is there any internal and useful how to, pitfalls document or any representative help i can get about how to create a plugin without bordering you day to day???
6. To activate the Plugin in Killbill, you have two options, at least for the PaymentControlPlugin -> this varies i guess from plugin to plugin
6.1. By filling out the Query Param controlPluginName at the API Level when executing a payment -> see http://killbill.io/api/#!/accounts/processPayment
6.2 By setting a globalConfig for killbill you activate this payment-control-plugin for all tenants
//Look at Point 5: Global Configuration
org.killbill.payment.invoice.plugin=payment-control-plugin
7. Probably each Plugin needs some TenantBased Configuration, as Killbill consists of a Cluster full with Nodes, the Nodes need to listen to ConfigurationChange Events invoked by uploading Configurations to the API.
7.1 Global Configurations are stored under
$ vim /etc/killbill/killbill.properties
//Example of one single configuration
com.netstream.ch.killbill.plugins.payment-control-plugin.configFilePath=/var/lib/killbill/bundles/plugins/java/payment-control-plugin/x.y.z/default.conf
//Example of extracting this property in the Plugin
PaymentControlActivator.PROPERTY_PREFIX = "com.netstream.ch.killbill.plugins.payment-control-plugin.";
this.typesafeConfigPath = properties.getProperty(PaymentControlActivator.PROPERTY_PREFIX + "configFilePath");
Thank you for your help Stéphane. Hope that that this will help someone.
--
You received this message because you are subscribed to the Google Groups "Kill Bill users mailing-list" group.
To unsubscribe from this group and stop receiving emails from it, send an email to killbilling-us...@googlegroups.com.
To post to this group, send email to killbill...@googlegroups.com.
Visit this group at https://groups.google.com/group/killbilling-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/killbilling-users/0d67f06c-a57b-40d4-a18e-732fdcbc1f70%40googlegroups.com.