• Welcome to RadioDJ - Free Radio Automation Software Forum. Please log in or sign up.

Web Export NG plugin - Advanced web export

Started by Valdis, July 20, 2016, 07:24:22 PM

Valdis

I have almost finished work on Web Export plugin and I'd like to invite community members to test it.

Its main advantages are:

  • Ability to filter by track type
  • Multiple HTTP endpoints (unlimited, in fact)
  • Advanced configuration options
  • Correct URI escaping
  • XML and JSON support
  • A bonus $now-timestamp$ parameter - UNIX timestamp of current time

Screenshot:


Right now the plugin window can be accessed from plugins list. It is at the very bottom - named WebExportNG.

This plugin is still beta. I have tested as much as I can but there may still be some bugs. UI needs some polishing and I'm open to suggestions regarding interface and features.

Version 1.0.1.2 2016-07-21 @ 17:10 GMT
Changes:
ENHANCEMENT: Plugin can now send updates when input button is activated. That is controllable using a checkbox in configuration for each request.
ENHANCEMENT: Log each response to file in Plugins directory. Can be toggled in options of each request.
ENHANCEMENT: View last response via right-click context menu for each request entry.
ENHANCEMENT: Added basic (as in HTTP basic authentication) authentication. It is not the same as password field in Now playing plugin.
ENHANCEMENT: Each request item can have its own User-Agent header defined.
BUGFIX: Added URL validation in configuration window and before making requests.
BUGFIX: Newline in content body were removed during serialisation to XML file.

Important note: If you updated from version 1.0.0.1, please switch off debug logging for each request entry. Otherwise the plugin will keep writing details of every server response to a log file in Plugins directory. The debug switch was originally turned on by default and was saved to included xml settings file.

Version 1.0.1.3 2016-07-24 @ 15:55 GMT
BUGFIX: Not all fields were copied to new request object when using duplicate option, reading to NullReferenceException when new request was fired
ENHANCEMENT: Enhanced logging to indicate when requests time out or return an error
ENHANCEMENT: Skip replacing variables if data is empty or doesn't contain substitution variables

Version 1.0.1.4 2016-07-25 @ 16:05 GMT
BUGFIX: Corrected JSON escaping to handle backslashes in Windows file paths
BUGFIX: Debug logs were being written despite unchecking the option
ENHANCEMENT: Few small GUI fixes

Download it here: Plugin_WebExport_1.0.1.4.zip

As usual - place ZIP contents in RadioDJ\Plugins and restart RadioDJ. ZIP file includes 5 sample requests you can play with. All requests are disabled by default to not cause any trouble.
I am, therefore I think.
I design and develop web apps, and have created few RadioDJ plugins - https://axellence.lv/downloads/

FL Coast

:)    Play the Music and Have Fun!    :ok:
==================================
Fun In The Sun,  From the Florida Coast
***************************************************
"It is what we learn after we think we know it all, that counts."
John Wooden 1910 - 2010


djdensma

get method for tune-in?

not working for me

Valdis

Quote from: djdensma on July 20, 2016, 08:33:25 PM
get method for tune-in?

not working for me
That phrase is too vague for troubleshooting. Could you provide more details? Maybe a screenshot?
I am, therefore I think.
I design and develop web apps, and have created few RadioDJ plugins - https://axellence.lv/downloads/

djdensma

Quote from: Valdis on July 20, 2016, 08:36:38 PM
That phrase is too vague for troubleshooting. Could you provide more details? Maybe a screenshot?
sorry. its working now. i had wrong url


great work!!!

FL Coast

Posting only to TuneIn.  Working Great.  Posts only selected items.  Fantastic job Valdis.
:)    Play the Music and Have Fun!    :ok:
==================================
Fun In The Sun,  From the Florida Coast
***************************************************
"It is what we learn after we think we know it all, that counts."
John Wooden 1910 - 2010

djdensma

Valdis is it possible to send line in title too?

Valdis

Quote from: djdensma on July 20, 2016, 09:28:07 PM
Valdis is it possible to send line in title too?
No, the plugin does not trigger updates on input change yet but I will add it today.
At the moment Web export plugin provides combined title (which is also the input title) in $auto_title$ variable and does not substitute $title$ by combined title as NowPlaying plugin does. I'll have to rethink the whole updating process but it should not take long to implement these changes.
I'm going to also add another configuration option as checkbox to set when title updates are sent for each request entry.
I am, therefore I think.
I design and develop web apps, and have created few RadioDJ plugins - https://axellence.lv/downloads/

djdensma

Quote from: Valdis on July 21, 2016, 12:18:44 PM
No, the plugin does not trigger updates on input change yet but I will add it today.
At the moment Web export plugin provides combined title (which is also the input title) in $auto_title$ variable and does not substitute $title$ by combined title as NowPlaying plugin does. I'll have to rethink the whole updating process but it should not take long to implement these changes.
I'm going to also add another configuration option as checkbox to set when title updates are sent for each request entry.

thank you!!

FL Coast

FYI   Not sure what's happening, but during last night RadioDJ stop posting to TuneIn. I have Switchback to the Post in RadioDJ but it still has not started populating TuneIn again.
:)    Play the Music and Have Fun!    :ok:
==================================
Fun In The Sun,  From the Florida Coast
***************************************************
"It is what we learn after we think we know it all, that counts."
John Wooden 1910 - 2010

Valdis

Quote from: FL Coast on July 21, 2016, 05:46:58 PM
FYI   Not sure what's happening, but during last night RadioDJ stop posting to TuneIn. I have Switchback to the Post in RadioDJ but it still has not started populating TuneIn again.
I'm not sure I understand what you mean by "Switchback to the Post in RadioDJ". TuneIn may be blocking your IP because of too many requests or too request errors.
I'll add feature to view last response and some error logging  to make it easier to troubleshoot.
I am, therefore I think.
I design and develop web apps, and have created few RadioDJ plugins - https://axellence.lv/downloads/

FL Coast

Quote from: Valdis on July 21, 2016, 06:01:34 PM
I'm not sure I understand what you mean by "Switchback to the Post in RadioDJ". TuneIn may be blocking your IP because of too many requests or too request errors.
I'll add feature to view last response and some error logging  to make it easier to troubleshoot.

What I meant was after finding TuneIn not posting the song info from the Web Export NG Plugin, I reactivated the Web Exporter within RadioDJ.

I don't see how it would have been too many requests.  I had the Web Export NG plugin set to export only music, and during the nighttime hours in the U.S., nothing is played except music with one top of the hour ID.
:)    Play the Music and Have Fun!    :ok:
==================================
Fun In The Sun,  From the Florida Coast
***************************************************
"It is what we learn after we think we know it all, that counts."
John Wooden 1910 - 2010

Valdis

Quote from: FL Coast on July 21, 2016, 06:18:04 PM
What I meant was after finding TuneIn not posting the song info from the Web Export NG Plugin, I reactivated the Web Exporter within RadioDJ.

I don't see how it would have been too many requests.  I had the Web Export NG plugin set to export only music, and during the nighttime hours in the U.S., nothing is played except music with one top of the hour ID.
That is strange. If the plugin had failed, there would have been an exception window. Being able to see TuneIn responses would help to sort it out.
I have added debug logging and viewing of last server response via right-click menu of each request item. I'll upload the new version shortly and edit my original post.
I am, therefore I think.
I design and develop web apps, and have created few RadioDJ plugins - https://axellence.lv/downloads/

Valdis

I am, therefore I think.
I design and develop web apps, and have created few RadioDJ plugins - https://axellence.lv/downloads/