- Platform information:
- Hardware: x64/4GB/100GB NVME
- OS: Ubuntu 20.04 Virtual Maschine Desktop
- Java Runtime Environment: Zulu 8
- openHAB version: lastet
- Issue of the topic: MPD Binding an Control over a Sitemap
- Please post configurations (if applicable):
We have troubles to control the mpd from a sitemap. When we click on the Play / Pause / Volume Button the erros in the logs executes
- Items
Switch MPD1_StartStop "Start/Stop" {mpd="ON:MPD1:play, OFF:MPD1:stop"}
Switch MPD1_NextPrev "Track Control" {mpd="ON:MPD1:next, OFF:MPD1:prev"}
Dimmer MPD1_Volume "Volume [%d%%]" {mpd="INCREASE:MPD1:volume_increase, DECREASE:MPD1:volume_decrease, PERCENT:MPD1:volume"}
String MPD1_CurrentTrack "Current Track" {mpd="TITLE:MPD1:tracktitle"}
String MPD1_CurrentArtist "Current Artist [%s]" {mpd="ARTIST:MPD1:trackartist"}
String MPD1_ContactInfo "Now Playing [%s]"
- Sitemap configuration related to the issue
sitemap mpd label="DND Multimedia Control" {
Switch item=MPD1_StartStop mappings=[OFF="PAUSE", ON="Play"]
Switch item=MPD1_NextPrev mappings=[OFF="Previous", ON="Next"]
Slider item=MPD1_Volume
Text item=MPD1_CurrentTrack
Text item=MPD1_CurrentArtist
Text item=MPD1_ContactInfo
}
- Services configuration related to the issue
mpd="ON:MPD1:play, OFF:MPD1:stop"
mpd="INCREASE:MPD1:volume_increase, DECREASE:MPD1:volume_decrease"
- If logs where generated please post these here using code fences:
.MpdBinding.executePlayerCommand(MpdBinding.java:204) ~[?:?]
at org.openhab.binding.mpd.internal.MpdBinding.internalReceiveCommand(MpdBinding.java:160) ~[?:?]
at org.openhab.core.binding.AbstractBinding.receiveCommand(AbstractBinding.java:97) ~[?:?]
at org.openhab.core.events.AbstractEventSubscriber.handleEvent(AbstractEventSubscriber.java:49) ~[?:?]
at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [bundleFile:?]
at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [bundleFile:?]
at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [bundleFile:?]
at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [bundleFile:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_252]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_252]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_252]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_252]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
2020-04-27 00:00:00.005 [ERROR] [org.quartz.core.ErrorLogger ] - An error occured instantiating job to be executed. job= 'MPD.Reconnect'
org.quartz.SchedulerException: Problem instantiating class 'org.openhab.binding.mpd.internal.MpdBinding$ReconnectJob' -
at org.quartz.core.JobRunShell.initialize(JobRunShell.java:134) [bundleFile:?]
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:375) [bundleFile:?]
Caused by: com.google.inject.ConfigurationException: Guice configuration errors:
1) Injecting into inner classes is not supported. Please use a 'static' class (top-level or nested) instead of org.openhab.binding.mpd.internal.MpdBinding$ReconnectJob.
while locating org.openhab.binding.mpd.internal.MpdBinding$ReconnectJob
1 error
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1004) ~[?:?]
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:961) ~[?:?]
at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013) ~[?:?]
at org.eclipse.smarthome.model.rule.runtime.internal.engine.GuiceAwareJobFactory.newJob(GuiceAwareJobFactory.java:38) ~[?:?]
at org.quartz.core.JobRunShell.initialize(JobRunShell.java:127) ~[?:?]